Saltar al contenido principal
LibreTexts Español

2.10: Comportamiento por Diseño y por Artefacto

  • Page ID
    143870
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    ¿Qué vocabulario es el más adecuado para responder preguntas sobre cómo se calcula un mapeo de entrada y salida en particular? Para explorar esta pregunta, consideremos un ejemplo de dispositivo de cálculo, una máquina Turing (Turing, 1936). Esta calculadora procesa símbolos que están escritos en una memoria de cinta de tickers divididos en celdas, donde cada celda puede contener un solo símbolo. Para usar una máquina Turing para agregar (Weizenbaum, 1976), un usuario escribiría una pregunta en la cinta, es decir, los dos números que se van a sumar. Estarían escritos en el formato que pudiera ser entendido por la máquina. La máquina Turing respondería a la pregunta de entrada leyendo y reescribiendo la cinta. Eventualmente, escribiría la suma de los dos números en la cinta —su respuesta— y luego se detendría.

    ¿Cómo genera una máquina Turing respuestas a las preguntas escritas? Una máquina Turing consiste en un cabezal de máquina cuyas acciones se rigen por un conjunto de instrucciones llamado la mesa de la máquina. El cabezal de la máquina también estará en una de un conjunto de posibles configuraciones físicas llamadas estados de máquina. El cabezal de la máquina lee un símbolo en la cinta. Este símbolo, en combinación con el estado actual de la máquina, determina qué instrucción de tabla de máquina ejecutar a continuación. Una instrucción podría indicarle al cabezal de la máquina que escriba un símbolo, o que mueva una celda hacia la izquierda o hacia la derecha a lo largo de la cinta adhesiva. La instrucción también cambiará el estado de la máquina del cabezal de la máquina.

    Una máquina Turing no responde preguntas al instante. En cambio, toma su tiempo, moviéndose de un lado a otro a lo largo de la cinta, leyendo y escribiendo símbolos a medida que funciona. Se pudo observar y registrar una larga secuencia de acciones, como “Primero el cabezal de la máquina mueve cuatro celdas hacia la derecha. Después se detiene, y reemplaza el 1 de la cinta por un 0. Después mueve tres celdas hacia la izquierda”.

    El registro de los comportamientos observados de la máquina Turing nos diría mucho sobre su diseño. Descripciones como “Cuando se le da la Pregunta A, la máquina generó Respuesta X” proporcionarían información sobre el mapeo de entrada-salida que la máquina Turing fue diseñada para lograr. Si también pudiéramos ver los cambios en los estados de las máquinas, serían posibles observaciones más detalladas, como “Si el cabezal de la máquina está en el Estado 1 y lee un '1' en la cinta, entonces mueve una celda a la izquierda y adopta el Estado 6”. Dichas observaciones proporcionarían información sobre la mesa de la máquina que fue diseñada para el cabezal de máquina de este dispositivo en particular.

    No todos los comportamientos de las máquinas Turing ocurren por diseño; algunos comportamientos son artefactos. Los artefactos ocurren debido al diseño del dispositivo pero no son explícitamente parte del diseño (Pylyshyn, 1980, 1984). Son consecuencias no intencionales del procedimiento diseñado.

    Por ejemplo, la máquina Turing toma tiempo para sumar dos números juntos; el tiempo empleado variará de una pregunta a otra. La cantidad de tiempo que se tarda en responder una pregunta es consecuencia de la mesa de la máquina, pero no está intencionalmente diseñada en ella. El tiempo empleado es un artefacto porque las máquinas Turing están diseñadas para responder preguntas (por ejemplo, “¿Cuál es la suma de estos dos enteros?”) ; no están diseñados explícitamente para responder preguntas en un determinado período de tiempo.

    De igual manera, a medida que funciona la máquina Turing, la cinta de ticker adopta varios estados intermedios. Es decir, durante el procesamiento la cinta de ticker contendrá símbolos que no son ni la pregunta original ni su eventual respuesta. Responder a una pregunta en particular producirá una secuencia de estados de cinta intermedios; la secuencia producida también variará de una pregunta a otra. Nuevamente, la secuencia de estados de símbolo es un artefacto. La máquina Turing no está diseñada para producir una secuencia particular de estados intermedios; simplemente está diseñada para responder a una pregunta en particular. Múltiples Niveles de Investigación 43

    Uno podría pensar que los artefactos no son importantes porque no son consecuencias explícitas de un diseño. Sin embargo, en muchos casos los artefactos son fuentes cruciales de información que nos ayudan a realizar ingeniería inversa en un procesador de información que es una “caja negra” porque sus mecanismos internos están ocultos a la vista.


    This page titled 2.10: Comportamiento por Diseño y por Artefacto is shared under a CC BY-NC-ND license and was authored, remixed, and/or curated by Michael R. W. Dawson (Athabasca University Press) .