Interpretación Geométrica de la Computación

14

Siendo de Física, he sido entrenado para investigar muchos problemas desde un punto de vista geométrico. Por ejemplo, la geometría diferencial de múltiples en sistemas dinámicos, etc. Cuando leo los fundamentos de la informática, siempre trato de encontrar interpretaciones geométricas. Como una interpretación geométrica plausible de conjuntos recursivamente enumerables (trabajé en una parte en la que intenté conectarlos con la geometría algebraica explotando la equivalencia con conjuntos de diofantina, pero la conexión parecía forzada y no pude encontrar una expresión "natural" de los hechos en eso formulación) o un hermoso resultado geométrico para un algoritmo simple para ordenar números. Aunque no soy un experto, he leído encuestas sobre la teoría de la complejidad geométrica y seguramente es un programa interesante, pero estoy más interesado en tener una visión geométrica de conceptos extremadamente fundamentales como la dinámica de una máquina de Turing, el cálculo de Lambda o la estructura de ( un) conjuntos computables (en lugar de problemas específicos). ¿Es un trabajo inútil encontrar una estructura geométrica en estos objetos o uno puede esperar algunos resultados intrincados? ¿Existe alguna formulación de TCS que lo trate geométricamente?

swarnim_narayan
fuente
2
Creo que la pregunta es demasiado extensa y poco clara, y necesita ser mejorada. Me parece que, en esencia, está haciendo una pregunta de solicitud de referencia sobre la formulación geométrica y el tratamiento de TCS.
Kaveh
1
Si está buscando que puedan aprender la teoría de la computabilidad, entonces no tendrá mucha suerte, ya que estos trabajos generalmente están escritos para personas que conocen bien el tratamiento clásico de la teoría de la computabilidad. Tienes que aprender el nuevo idioma si quieres aprender la teoría de la computabilidad. Dicho esto, existen tratamientos categóricos de la teoría de la computabilidad (pero como dije, están escritos para personas que conocen la teoría de la computabilidad).
Kaveh
55
@Kaveh, sería extremadamente útil si me puede proporcionar una referencia a un tratamiento categórico de la teoría de la computabilidad. Aunque, como dijiste, puede no ser comprensible sin una comprensión rigurosa del tratamiento clásico de la computabilidad, estoy haciendo todo lo posible para llegar allí.
swarnim_narayan
¿Puedes aclarar qué quieres decir con geometría en el contexto de tu pregunta?
Martin Berger
@wang, creo que "la solicitud de referencia para la computabilidad desde la perspectiva de la teoría de categorías" puede ser una nueva pregunta por separado, y hay otros como Andrej (por ejemplo, ver esto ) que pueden responderla mucho mejor que yo.
Kaveh

Respuestas:

12

La semántica de los programas de computadora se puede entender geométricamente de tres maneras distintas (y aparentemente incompatibles).

  • El enfoque más antiguo es a través de la teoría de dominios . La intuición detrás de la teoría del dominio surge de la asimetría detrás de la terminación y la no terminación.

    Al tratar los programas de manera extensional (es decir, solo observando su comportamiento de E / S, y no su estructura interna), siempre es posible confirmar en un tiempo finito que un programa se detiene, solo espere hasta que se detenga. Sin embargo, no es posible confirmar que un programa no se detenga, porque no importa cuánto tiempo espere, siempre hay un programa de detención que se ejecutará por unos pocos pasos más de los que esperaba.

    Como resultado, la detención y el bucle pueden verse como formando un espacio topológico ( el espacio Sierpiński ). Esto se eleva a nociones más ricas de observación (a través de la topología de Scott), y de este modo puede interpretar los programas como elementos de espacios topológicos. Estos espacios son generalmente bastante sorprendentes desde un punto de vista tradicional: los dominios generalmente no son Hausdorff.

    La mejor introducción topológica que conozco de estas ideas es la breve y extremadamente accesible Topología de Steve Vickers a través de Logic . Se puede entender como una especie de calentamiento para los espacios de piedra significativamente más formidables de Peter Johnstone .

    Si está buscando notas de clase en línea, permítame sugerirle la topología sintética de Martin Escardo sobre tipos de datos y espacios clásicos .

  • Otra opinión surge de la teoría de la concurrencia. Se puede entender que un programa concurrente tiene múltiples ejecuciones válidas (secuencias de estados), dependiendo de cómo se resuelvan las razas. Entonces, el conjunto de ejecuciones puede verse como un espacio, con cada posible secuencia de estados entendida como una ruta a través de este espacio. Luego, los métodos de la topología algebraica y la teoría de la homotopía se pueden aplicar para derivar invariantes sobre la ejecución del programa.

    Nir Shavit y Maurice Herlihy utilizan esta idea para demostrar la imposibilidad de ciertos algoritmos distribuidos, por los cuales ganaron el premio Gödel 2004. (Consulte La estructura topológica de la computación asincrónica ). Eric Goubault tiene un estudio que explica las ideas relevantes en Algunas perspectivas geométricas en la teoría de la concurrencia .

  • Más recientemente, se ha observado que la estructura del tipo de identidad en la teoría del tipo dependiente se corresponde muy estrechamente con la noción de tipo de homotopía en la teoría de la homotopía; de hecho, tan estrechamente, esa teoría del tipo dependiente se puede ver como una especie de ¡"teoría de la homotopía sintética"! (Vladimir Voevodsky bromeó diciendo que pasó varios años desarrollando un nuevo cálculo para la teoría de la homotopía, solo para descubrir que sus colegas en el departamento de CS ya lo estaban enseñando a estudiantes universitarios).

    Vea el enlace de Cody arriba al libro de teoría del tipo de homotopía .

Curiosamente, estos tres puntos de vista parecen incompatibles entre sí, o al menos muy difíciles de conciliar. La teoría del tipo dependiente es un lenguaje total, por lo que no surge la no terminación (y la topología de Scott). También es confluente, por lo que tampoco surge la vista de los cálculos como espacios. Del mismo modo, formular concurrencia en términos de teoría de dominio ha resultado extremadamente difícil, y una explicación completamente satisfactoria sigue siendo un problema abierto.

Neel Krishnaswami
fuente
"Como resultado, la detención y el bucle pueden verse como formando un espacio topológico (el espacio de Sierpiński). Esto se eleva a nociones más ricas de observación (a través de la topología de Scott), y de ese modo puede interpretar programas como elementos de espacios topológicos". ¿Es una buena referencia para esto que está disponible en línea?
T ....
1
@JAS: Agregué un enlace a algunas de las notas de Martin Escardo sobre el tema.
Neel Krishnaswami
6

De hecho, ha habido un desarrollo reciente en la teoría de los tipos dependientes , en la que los tipos, que tradicionalmente representan una invariante estática para un programa de computadora, pueden interpretarse como un espacio topológico, o más bien una clase de equivalencia de tales tipos. espacios (un tipo de homotopía ).

Este ha sido el tema de una intensa investigación en los últimos años, que culminó en un libro .

λ

cody
fuente
6

Usted está al tanto de GCT, pero es posible que no esté al tanto del trabajo anterior de Mulmuley para mostrar una separación entre un subconjunto de cálculos PRAM y P, que utiliza ideas geométricas de cómo se puede ver un cálculo como tallar un espacio.

Muchos límites inferiores para problemas en el modelo de árbol de decisión algebraico se reducen al razonamiento sobre la topología de los espacios subyacentes de soluciones (los números de Betti se muestran como un parámetro relevante).

En cierto sentido, TODA la optimización es geométrica: los programas lineales implican encontrar el punto más bajo de un politopo en altas dimensiones, los SDP son funciones lineales sobre el espacio de las matrices semidefinidas, y así sucesivamente. La geometría se usa mucho en el diseño de algoritmos aquí.

Sobre ese tema, existe una conexión larga y profunda entre nuestra capacidad de optimizar ciertas funciones en gráficos y nuestra capacidad de incrustar espacios métricos en ciertos espacios normados. Esta es una vasta literatura ahora.

Finalmente, en los últimos años ha habido un gran interés en los llamados mecanismos de "levantar y proyectar" para resolver problemas de optimización, y estos hacen un uso intensivo de la geometría subyacente y se elevan a espacios dimensionales superiores: nociones del juego de geometría algebraica Un papel importante aquí.

Suresh Venkat
fuente
".... el modelo de árbol de decisión algebraico se reduce al razonamiento sobre la topología de los espacios subyacentes de soluciones" ¿Es cierto que muchos resultados sobre los cálculos se pueden reducir para encontrar información sobre conjuntos conectados? ¿O es este resultado especial?
T ....
1
@JAS: Hay varios resultados que pueden reducirse a limitar el número de componentes conectados, pero no diría "muchos". En la complejidad algebraica, la técnica más común (al menos en los últimos 10-15 años) es unir las dimensiones de varios espacios de derivadas parciales y espacios relacionados. Esto se puede ver como encontrar ecuaciones que desaparecen en ciertas variedades algebraicas, lo que en cierto sentido es "geométrico". Pero todavía no diría que esto cubre "la mayoría" de los resultados, especialmente. Resultados de complejidad booleana, que utilizan una variedad de (al menos aparentemente) técnicas no geométricas.
Joshua Grochow
@JoshuaGrochow Yah No he visto tanto trabajo topológico como AG clásico incluso en derivados parciales. Estaba pensando en las respuestas a esta pregunta aquí cstheory.stackexchange.com/questions/5907/... cuando vi esta pregunta.
T ....
5

T1

Una forma de entender la relación entre el procesamiento de la información (también conocido como "cálculo") y la geometría es que el procesamiento de la información precede a la geometría. Esta vista debería ser familiar desde ciertas partes de la física. Por ejemplo, en la teoría de la relatividad, estudiamos tanto la estructura causal del espacio-tiempo (su procesamiento de información) como su estructura geométrica . Muchos considerarían que este último es más básico que el primero.

Estas conexiones se han notado en el pasado y hace varios años hubo un esfuerzo por conectar los aspectos teóricos de la información de la informática con la teoría de la relatividad. Una de las tareas que la gente quería resolver era: a partir de la estructura de causalidad del espacio-tiempo (que es solo un orden parcial en el espacio-tiempo), reconstruir la topología del espacio-tiempo, o posiblemente también la geometría. Recuperar la topología de un orden parcial es el tipo de cosas en las que la teoría de dominios es buena, por lo que hubo algo de éxito.

Referencias

Andrej Bauer
fuente
4

Al interpretar creativamente su pregunta, le vienen a la mente algunas posibilidades distintas de GCT como usted menciona. una forma es buscar problemas indecidibles (también conocidos como integridad de Turing) que son bastante ubicuos.

  • aperiódico Azulejos del avión y azulejos de Penrose . Se ha demostrado que la cuestión de si existe un mosaico aperodico del avión es indecidible.

  • Autómatas celulares que también muestran cada vez más conexiones profundas con la física, muchos problemas indecidibles relacionados, TM probado completo, y naturalmente se interpretan como (y se convierten entre) cuadros computacionales TM.

  • algoritmos como fractales . un área más poco desarrollada (es decir, ¡investigación activa / en curso!), pero varias preguntas indecidibles, como un punto complejo(X,y)¿Está en el set de Mandelbrot ?

  • Indecidibilidad en sistemas dinámicos (Hainry), nuevamente a veces estrechamente relacionado con la física. Los sistemas dinámicos generalmente tienen una interpretación geométrica multidimensional.

  • Lenguajes de programación visual . un programa puede verse como un tipo de gráfico (¿dirigido?) con diferentes tipos de vértices (por ejemplo, operación condicional, aritmética), etc.

vzn
fuente
re autómatas celulares, ver también juego de la vida . Conway generalmente recibe crédito por demostrar que está completo, aunque parece difícil encontrar una referencia exacta. probablemente también sea la primera prueba de integridad de Turing asociada con las AC.
vzn