Argumento sucinto del papel fundamental de los dígitos binarios como unidades de información

Aclararé el contexto de esta pregunta para que las posibles respuestas puedan orientarse de manera efectiva hacia lo que estoy buscando.

La información (al menos en el sentido no semántico y canónico de la palabra) se puede definir utilizando el enfoque estadístico de Shannon o el computacional de Kolmogorov. El primero lo establece como una noción de longitud promedio de palabra clave expresada en algún alfabeto arbitrario -que se elige deliberadamente como el alfabeto binario en cualquier libro de texto que pueda citar- necesario para establecer un mapeo biyectivo de los resultados de una fuente aleatoria; el teorema de la codificación de la fuentedemuestra que esta definición es igual a la entropía de la fuente en el límite estadístico de un número infinito de resultados. El segundo enfoque hace uso de computadoras universales en algún modelo arbitrario (casi siempre elegido para ser un UTM), y luego define la información contenida en una fuente como la longitud del programa autodelimitado mínimo en el lenguaje de la computadora que genera la información. resultados de la fuente; como la elección de un UTM de referencia solo puede hacer que la longitud de un programa mínimo sea un término constante diferente que en cualquier otra elección , la definición es bastante robusta.

De hecho, el enfoque de Kolmogorov subsume la definición de Shannon , porque las distribuciones de probabilidad previas necesarias para codificar la fuente y decodificar los mensajes son equivalentes a una máquina de Turing que calcula un esquema de codificación de entropía (como las codificaciones aritméticas o de Huffman).

Entonces, en esencia, la definición moderna de "información" se basa a su vez en la definición extremadamente flexible y única (es decir, absoluta) de computación generada por los resultados de universalidad de la primera mitad del siglo XX .

Sin embargo, encuentro esta historia algo insatisfactoria. Usar la computación como base para la información parece poner el mundo patas arriba, al menos bajo una comprensión intuitiva de lo que denota el término y en oposición a las definiciones canónicas de Shannon y Kolmogorov. Las computadoras son procedimientos (u objetos que siguen procedimientos, una diferencia sin sentido a la luz de la universalidad de Turing y la simulación mutua de máquinas) y, por lo tanto, son un tipo particular de relación -recurrencia- entre una entrada y una salida . Aunque este tipo de relación es única y absoluta, me parece necesariamente ex post a la noción de entrada y salida; y esos dos son las "cosas"que intuitivamente coincide con el término "información". Puede decir que existe un cálculo al mostrar un historial de los pasos (la lista apilada de entradas y salidas), de la misma manera que puede mostrar explícitamente una deducción lógica en notación secuencial. La tesis de Church-Turing entonces simplemente afirmaría que la clase de apilamientos de entradas y salidas que pueden producirse efectivamente por cualquier medio, se agota en la Máquina de Turing o en cualquier otro modelo equivalente de computación.

Por otro lado, las "cosas" que componen las entradas y salidas (información intuitiva) en principio no necesitan necesariamente una referencia auxiliar a la computación para decir que existen. Una cadena de símbolos no necesita estar relacionada con ninguna otra; puede existir de forma aislada, por lo que no se requiere una referencia obligatoria a un procedimiento (nuevamente, dejo la formalización de esta intuición como un ejercicio para el lector; solo espero estar hablando con suficiente sentido para ser entendido).

Para finalizar esta sección les dejo este currículum:

  1. La información, entendida en un sentido intuitivo de "cosa abstracta generalizada" , parece ser más fundamental que la computación dado que el concepto de procedimiento implica una referencia a la primera. La información debe entenderse como meras cadenas de símbolos, y los símbolos deben entenderse como cosas generalizadas (cualquier cosa que pueda distinguirse );
  2. A lo que se refiere el término canónico "información", es una propiedad computacional de la información en el sentido de 1. Personalmente, prefiero usar el término complejidad en ambos casos de las definiciones de Shannon y Kolmogorov, y conservar el término información como mera "cosa". (sin referencia a cómputos o probabilidades previas; es decir, cadenas "tal como se dan").

Suponiendo que la información es el material fundamental requerido para que el concepto de computación tenga sentido, uno puede preguntarse cuál es el alfabeto mínimo (es decir, la cantidad mínima de símbolos diferentes ) que se necesita para expresar cualquier forma de información en el sentido que expliqué anteriormente. La respuesta obvia podría ser que el alfabeto binario es la respuesta a esta pregunta; después de todo, el bit se usa como una medida universal de la capacidad del canal. Pero resulta que no he encontrado en ningún libro de texto que haya leído una sección dedicada a afirmar y probar esto formalmente, ¡y mucho menos a hacerlo de manera elegante y sucinta! Una vez más, puede sonar obvio, pero si los fundamentos de la ciencia son la información y la computación (una tendencia que se ha mantenido durante casi un siglo), creo seriamentedebe establecerse que el dígito binario es la "unidad más simple y fundamental posible de cosas (generalizadas)" .

Ahora expondré mi pregunta correctamente:

  • a) ¿Cómo se puede probar sucintamente (pero no heurísticamente ) que el bit es la unidad fundamental de información, y no hay nada más simple o menor que pueda hacer el trabajo?

Y dejo esta meta-pregunta, basada en la demasiado larga introducción a la pregunta principal:

  • b) ¿Hay algún libro donde la información se desarrolle a partir del enfoque "de abajo hacia arriba" que he llamado "el sentido intuitivo de la palabra información" aquí, es decir, tomando cadenas de símbolos como fundamentales y luego desarrollando nociones derivadas como computación y estadística? ¿desde allí?

Y finalmente, por supuesto:

  • c) ¿Todo lo que he escrito aquí tiene algún sentido?
"La información debe entenderse como meras cadenas de símbolos, y los símbolos deben entenderse como material generalizado (cualquier cosa que pueda distinguirse) [...] Suponiendo que la información es el material fundamental requerido para que el concepto de computación tenga sentido, uno puede preguntarse cuál es el alfabeto mínimo (es decir, la cantidad mínima de símbolos diferentes) que se necesita para expresar cualquier forma de información [...]". Si la información es una cadena de símbolos que pueden representar cosas distinguibles arbitrarias, ¿qué le impide simplemente concluir que dos referentes distinguibles es el mínimo?
Porque alguien que carece de experiencia en la teoría de la codificación no encuentra del todo obvio que un solo símbolo (unario) no es suficiente para construir objetos distinguibles. En la respuesta de Rex Kerr a continuación, expliqué la forma en que manejo estas preguntas, pero creo que es una gran exageración y debería haber un argumento más simple o más elegante para poner binario como el alfabeto mínimo capaz de expresar cualquier forma de información (un hecho que, además, se da por sentado en cualquier libro de texto estándar). No comparto la postura de que el binario es solo una elección de ingeniería: hay una base minimalista que lo justifica.
El problema con los esquemas unarios es que no aumentan el número de señales distintas bajo el producto cartesiano. El conteo de dedos, por supuesto, corresponde al coproducto, que agrega distintas alternativas, por lo que es una trampa contarlas como si estuvieran en un solo alfabeto; observaciones similares se aplican a EOF, que simplemente indica por posición a qué elemento de un coproducto contable pertenece un elemento. Entonces, si aceptamos una teoría directa de la combinatoria, la respuesta simple de "al menos dos símbolos" es suficiente. (Y si no tienes teoría de la combinatoria, no puedes concluir nada).
Si puede hacer un argumento usando solo combinatoria que justifique la minimalidad del alfabeto binario, y también explicar por qué esto falla por la ingenua intuición de contar los dedos (o cualquier otro esquema unario) sin expandir su "caja de herramientas matemáticas", entonces debe publicarlo como respuesta porque esa es la pregunta principal (a) para la que he venido aquí buscando una respuesta.

Respuestas (3)

Resumen

La información distingue entre múltiples estados de cosas ; lo que indica, como mínimo, un sesgo en la probabilidad de que se realice algún estado de cosas, e idealmente, lo que indica que se realiza un solo estado de cosas mientras que una serie de alternativas no lo han sido.

Para tener una unidad de información, debe tener al menos dos posibles estados de cosas. Convencionalmente, podríamos describir estos estados de cosas como el valor de verdad de una proposición lógica: o tenemos A , o no-A . Tales distinciones binarias son las formas más crudas y elementales de distinguir estados de cosas en la lógica clásica (y formas de estilo booleano relacionadas). Cualquier teoría de la información que surja de tal lógica inevitablemente tenderá a indicar elecciones bivalentes —es decir ,  un bit— como unidad de información.

Combinatoria y la necesidad de alfabetos de tamaño > 1

Podemos considerar los problemas de obtener algo que sea más mínimo, específicamente un enfoque unario que involucre un alfabeto de una letra (pero donde tenemos palabras de diferentes longitudes) al considerar seriamente qué maquinaria combinatoria se requiere para obtener más de una posibilidad de un marco unario. En los comentarios, propone una configuración en la que hay mensajes que consisten en una sola letra, posiblemente aumentada por un carácter de "fin de archivo" de un solo uso. Permítanme denotar esas dos letras por '1' y 'E'.

En la configuración de varias letras, todavía queremos expresar más de un número finito de señales a pesar de tener un alfabeto de tamaño finito. (Los intentos de usar alfabetos infinitos darán lugar a problemas de precisión, donde de alguna manera debemos certificar la distinción de dos 'letras'. Este es un problema de arranque sin una resolución aparente. Por lo tanto, nos restringimos a alfabetos finitos). La forma en que lidiar con esto es asociar diferentes estados de cosas con secuencias de personajes con distintos estados de cosas. El juego "veinte preguntas" es un buen ejemplo de esto (aunque en un entorno interactivo) en el que se intenta inferir la identidad de un objeto a través de una secuencia de preguntas de sí/no de longitud fija.

Entonces, podemos simular un alfabeto T de tamaño arbitrario, simplemente usando un número suficientemente grande de caracteres de un alfabeto más pequeño Σ . Pero a menos que use un código fijo, donde a partir de los primeros n caracteres puede estar seguro de si espera o no un n +1 carácter para completar el mensaje, debe usar cadenas de una longitud fija.

Podemos modelar cadenas de longitud fija mediante el producto de n veces (cartesiano) del alfabeto consigo mismo, Σ n . El problema con un alfabeto unario Σ  = {1} es que Σ n tiene el mismo tamaño que Σ mismo, lo que anula el propósito.

¿Qué nos impide considerar cadenas de longitud variable? Si tenemos alfabetos de varias letras, nada de nada; pero debemos tener claro cómo estamos describiendo la longitud de la cadena, que, metadatos o no, sigue siendo información; define cómo debemos interpretar la señal. En un disco duro, por ejemplo, un carácter de final de archivo E no significa que no haya información alguna después del disco; solo que cualquier dato que sigue es irrelevante para la información que se transmite (por ejemplo, por el archivo específico al que se hace referencia).

Matemáticamente, podemos describir archivos de longitud que va de 0 a n usando uno de los caracteres E para indicar 'fin de mensaje', lo que significa que dos cadenas que concuerdan hasta ese carácter deben considerarse equivalentes. Por ejemplo, usando un alfabeto Σ  = {1,E}, diríamos que las dos cadenas

111E1111 y 111E1EE1

como equivalente, ya que concuerdan hasta el carácter E más a la izquierda. Abreviaríamos la clase de equivalencia a la que pertenecen ambas cadenas como 111. Sin embargo, necesitamos el segundo carácter para definir dónde termina el "contenido de información" de la cadena y, por lo tanto, indicar qué clase de equivalencia de cadenas pretendemos con el mensaje. . Esto también sería cierto en un contexto práctico de comunicaciones, donde se configuran protocolos para indicar a varios dispositivos cuándo, de hecho, ya no están en comunicación con un dispositivo remoto (en lugar de interpretar el ruido aleatorio como datos).

Por supuesto, normalmente no describimos cadenas de diferentes longitudes en términos de clases de equivalencia de cadenas de cualquier longitud finita o infinita. Esto, sin embargo, es una conveniencia; en la práctica cotidiana, tanto en matemáticas como en prosa normal, tenemos marcadores de final de secuencia, aunque solo sea en forma de espacios en blanco y puntuación, que es en sí mismo una señal distinguible de cualquier marca como 0 o 1; cuando escribo 11 y 101, sabes que estas son cadenas de longitud 2 y 3 respectivamente porque una termina con un espacio en blanco y otra con una coma. No los confunda con las cadenas " 11 an... " o " 101, ya sabe..." porque las convenciones de nuestro lenguaje escrito los establecen como posibles marcadores de fin de secuencia para palabras o cadenas de caracteres en general. Es decir, transmiten esa información. Sin interpretarlos de esta manera, no tendría idea de cuándo una palabra o terminó una oración, y por lo tanto no hay lugar para acotar la complejidad del mensaje que les estoy enviando.

Alguien que insista (diría ingenuamente) en que puede 'intuitivamente' distinguir secuencias únicas de longitud arbitraria, y así comunicar diferentes mensajes con las cadenas 1, 11, 111, 1111, 11111, etc., diría que esto nuevamente cae al mismo problema que tener un alfabeto de longitud infinita; Los metadatos se vuelven cruciales para el problema de distinguir posibles señales y, por lo tanto, al final, los metadatos codifican el mensaje, es decir , los metadatos son los datos mismos. No creo que sea posible captar inmediatamente la diferencia entre dos mensajes 111...1 que continúan durante 1000 caracteres, de uno de 1001 caracteres; la representación en sí debe contener pistas sobre dónde comienza y termina el mensaje, aunque solo sea en forma de espacios en blanco de una señal de referencia inactiva en lugar de una señal manifiesta. Distinguir si el mensaje ha terminado o no se vuelve crucial para determinar dónde ha terminado el mensaje.

La división de caracteres en 'datos' y 'metadatos' es una división que nosotros mismos hacemos, prácticamente, con respecto a los mensajes. Sin embargo, los metadatos aún comunican estados de cosas que pueden resultar esenciales para la correcta interpretación del mensaje enviado. Por ejemplo, un carácter de fin de archivo indica el estado de cosas " no hay más caracteres que desempeñen un papel en el mensaje ", mientras que cada carácter que (dentro o fuera de contexto) no indica un final de archivo para mensajes de longitud incierta, indica " se necesitan más caracteres para la desambiguación". Si el papel de la información es fundamentalmente eliminar la ambigüedad de los estados de cosas, entonces nuestra propia división de estados de cosas en "aquellos que conciernen al mensaje en sí" y "aquellos que no conciernen al mensaje en sí mismo" es incidental, por muy útil que sea. Si el mensaje tiene una longitud incierta, es necesario tener un medio para comunicar cuál es la longitud real del mensaje, y esto es imposible de hacer con un alfabeto de una sola letra, que, porque solo puede comunicar un mensaje de cualquier longitud fija, no puede distinguir en ningún número de caracteres entre dos estados de cosas.

[Editado para agregar comentarios sobre combinatoria, esquemas unarios]

“Para tener una unidad de información, se deben tener al menos dos posibles estados de cosas”. No quiero ser insistente en esto, pero la repetición de un solo estado de cosas (un esquema unario) parece suficientemente intuitiva como para ser un medio más minimalista de expresar información. Así que me temo que está repitiendo la actitud estándar de considerar esto demasiado obvio para requerir una justificación.
@mono: no veo dónde encuentra el problema aquí; me parece un punto básico, pero es posible que me esté perdiendo algo. ¿Puede describir su ' esquema unario que es un medio más minimalista de expresar información'?
@mono: He elaborado mi respuesta. ( Nota : no hago referencia específica a los coproductos, porque aunque creo que esta es la forma adecuada de describir la selección entre uno o más elementos distinguibles, es discutible si el problema es encontrar formas de distinguir los elementos en primer lugar. )
@NieldeBeaudrap: Le agradezco la elaboración. Este es el tipo de respuesta que estaba buscando. Considero que la última oración es particularmente valiosa: si la longitud de un mensaje es incierta, cada mensaje debe contener, además de su longitud dada por sí mismo, que es trivialmente reconocible como recibido, un distinguible adicional que establece explícitamente cuál es esa longitud. Y un mensaje unario solo puede indicar su longitud intrínseca, no lo que es esta longitud además de eso. Hacerlo requiere un marcador y, por lo tanto, al menos un alfabeto binario (y la elección del alfabeto está justificada por el minimalismo).
También podría argumentar que, al carecer de un segundo símbolo, el esquema unario solo puede producir cadenas que, al ser prefijos de cada uno mayor admisible, se mantienen ambiguas hasta que se alcanza la longitud máxima admisible de un mensaje (es decir, el juego de diez dedos en una mano ). Esta cadena de longitud máxima no es ambigua, pero es el único mensaje inequívoco que se puede codificar en el esquema; y si no hay una longitud máxima (es decir, un canal de comunicación clásico), entonces cada mensaje finito es ambiguo. Tengo que admitir que este argumento no es tan sucinto como hubiera preferido originalmente, pero es suficiente.
@Mono: Desearía poder hacer la respuesta más sucinta, pero si encuentra que el resumen no es convincente a la luz de la idea de los esquemas unarios, la elaboración es necesaria para aclarar cómo los esquemas unarios no logran distinguir estados de cosas incluso bajo concatenación , porque se requiere un segundo carácter para poder comunicar dónde termina el mensaje.

Creo que tiene razón en que la computación no es fundamental, pero para mí el punto de usar la computación es que la computación universal le permite calcular cualquier cosa, incluida cualquier métrica de información que le pueda gustar. Por lo tanto, medir información en términos de cómputo es simplemente valerse de una capacidad expresiva infinita. No es una declaración de que la computación es la clave aquí, solo que puedes hacer lo que quieras con ella.

Además, los factores constantes importan mucho. Si invento un lenguaje de programación que contiene el párrafo anterior como el símbolo ☆, entonces solo hay una diferencia de factor constante en la longitud del programa para expresar el párrafo anterior (unas 440x) y, sin embargo, he fallado por completo en capturar la intuición sobre la información que Kolmogorov presumiblemente pretendía. Si no se autoimpone la limitación de utilizar dispositivos informáticos compactos de propósito general, las medidas de información de Kolmogorov arrojan resultados sin sentido. Esto también ilustra que la computación no es lo fundamental de la información. Más bien, es una herramienta (que debe usarse apropiadamente) para el análisis.

Dicho esto, no creo que se pueda "probar" que el bit sea la unidad fundamental de información. Ciertamente puede adoptar un conjunto de axiomas que incluyen algo lógicamente equivalente a "el bit es la unidad fundamental de información". La mayoría de los textos sobre la información de Shannon hacen exactamente esto (en el sentido de que prueban que la información de Shannon de -p log pes la correcta , y la representación computacionalmente más trivial* es con log= log2). Pero si pregunta a un nivel más profundo, no creo que pueda demostrar que el bit es fundamental en lugar del potencial de acción (o liberación sináptica) desde una perspectiva biológica; o que la desviación estándar(o intervalo de confianza) desde una perspectiva estadística analógica. En algún nivel, todos son equivalentes (pero tienes que cavar bastante para llegar de uno a otro), y cuál te gusta dependerá de tu perspectiva.

† Por una muy buena razón, como le demostrará cualquier libro de texto introductorio.

* No por ninguna razón realmente buena, excepto que dos estados es el número mínimo posible, y sucede que la física conspira para hacer que los dispositivos de dos estados sean más fáciles de construir que otros, por lo que nuestras computadoras son binarias.

Su respuesta es la única hasta ahora que aborda lo que estaba preguntando. Por un lado, señala otra razón (quizás más fundamental) por la que la computación parece no ser una "primitiva autónoma" sobre la que se deba definir la información; Yo me centré en la obligada referencia a entradas-salidas externas a la noción de computación, y tú apuntaste a la relatividad asociada a la definición de Kolmogorov (por el tamaño del término constante, que sólo se vuelve despreciable al describir secuencias muy largas, análogamente a el límite estadístico de la codificación fuente en la teoría de Shannon).
Por otro lado, y debido a que la noción de computación implica alguna "interacción" (es decir, procesamiento) de cadenas de símbolos sin procesar, prefiero usar el término complejidad para esas métricas y reservar "información" para referirme a cadenas generales, es decir, secuencias. de símbolos "como dado". En este sentido, quería tener un argumento sucinto (pero semiformal, o al menos no puramente heurístico) para la idea de que dos símbolos son el conjunto mínimo de valores diferentes suficientes para expresar cualquier información. No he leído ningún libro de teoría de la información donde este asunto merezca un espacio reservado; es simplemente "asumido".
@Mono: ¿Está buscando algo más elaborado que si solo tiene una cosa, no hay distinciones ni información? lo mínimo que puede agregar a la imagen es una cosa más, lo que le da una distinción y la posibilidad de información .
Realmente agradecería si pudiera citar la literatura donde se establece que "la representación computacionalmente más trivial es con log = log2". Ciertamente es un "problema trivial" para alguien iniciado en la materia, pero no tan trivial a la hora de explicárselo a otra persona. Me han preguntado "por qué no unario, dado que contamos con los dedos" y en esos casos tuve que señalar la necesidad de marcadores al final de cada cadena , algo imposible en un alfabeto de un solo símbolo, pero el conjunto argumento parecía siempre una exageración.
Exacto, pero no demasiado heurístico. Quiero poder descartar cualquier otro esquema aparentemente "más simple" (solo puedo pensar en unario, pero puede haber algo más por ahí) sin recurrir a una exageración, como citar la teoría de la codificación (que es lo que he estado haciendo). respondiendo cuando se le preguntó acerca de contar los dedos).
@Mono: no estoy hablando de dos símbolos, sino de todo el espacio de estado . No puedes codificar en unario con una cosa; sólo hay una cosa y eso es todo. Con un espacio de estado de dos, puede tener un estado u otro. Este es el espacio de estado no degenerado más pequeño posible. Por lo tanto binario, también: puede representar sus estados. Realmente no hay una buena razón para elegir binario porque el H = -C * sum_i(- p_i log p_i)cambio de base logsolo cambia la constante. Es "más simple" en el sentido de que un espacio de estado de dos es lo más simple posible, y puede elegir construir a partir de eso.
No sé exactamente a qué te refieres con "espacio de estado". Solo puedo evocar diagramas de equilibrio macroscópico termodinámico y espacio de fase p vs. x en mecánica estadística (quizás porque de ahí vengo académicamente). Si pudiera elaborar más sobre esto en su respuesta, sería interesante leerlo, aunque no estoy seguro de que califique como una explicación no exagerada.
@Mono: Enumeremos todos los posibles estados de cosas: {0}. Bueno, esto es aburrido, ¿no? Probemos de nuevo: {0, 1}. Oye, ahora podemos tener información, ¿cuál de las dos posibilidades es? Eso es todo lo que estoy tratando de decir. No es terriblemente profundo, por lo que no creo que haya un argumento sólido a favor del binario. Si la triestabilidad fuera realmente común y la biestabilidad no, entonces usaríamos la base 3, siendo la biestabilidad un caso degenerado de triestabilidad.

No creo que el bit sea la unidad fundamental de información. Es desde cierta perspectiva, pero se podrían elegir otras.

La justificación en resumen es así:

una. Qué conocimiento tenemos se puede codificar matemáticamente

b. las matemáticas siempre se pueden codificar como números

C. la representación más simple en un sistema numérico es en base 2

el paso a) es donde el conocimiento en oposición a la información comúnmente falla, que es lo que señala al admitir la diferencia entre información y 'semántica'. La broca es simplemente una buena elección de ingeniería; esto no es para restar importancia a su importancia. Cuando se dice que el bit es fundamental , se debe preservar el contexto y este es el contexto computacional y de ingeniería .

La escritura es una forma de información, si no hubiera una persona real que la entendiera , sería simplemente una secuencia de formas geométricas separadas por espacios.

Tienes razón acerca de confundir información (como en bits) que es c) con conocimiento a) está poniendo el mundo patas arriba. Pero, por supuesto, los bits pueden convertirse en una nueva fuente de conocimiento. Así que la situación es más sutil de lo que he descrito.

¿Qué otra base elegiría para definir la información? ¿Hay alguna forma de obtener una unidad de información que no se reduzca a una distinción de sí/no?
@deBeaudrap: ¿Por qué es necesario hervir? Sé por qué se hace, las virtudes son pragmáticas; pero eso no hace que esa representación de la información sea fundamental . Por ejemplo, las máquinas de Turing funcionan con una franja infinita marcada por unos y ceros, pero en realidad se pueden usar otros alfabetos.
@Ullah: en el contexto de la pregunta, "fundamental" significa "nada más simple o menor" como unidad de información, según el OP. No es más fácil trabajar con él, pero es mínimo.
@DeBeaudrap: Me doy cuenta de eso. Es por eso que dije que la representación más simple estaba en la base 2. El enfoque de mi respuesta fue por qué una representación mínima es 'insatisfactoria' y como 'dar la vuelta al mundo'.