Portada de Program Verification

Program Verification

por Zohar Manna · 1974

Ver sugerencias

Sinopsis

Este libro seminal aborda las técnicas formales y lógicas para demostrar la corrección de programas de computadora, utilizando métodos que buscan asegurar que un programa se comporte exactamente como se especifica, incluso ante múltiples estados y posibles interacciones.

Más de Zohar Manna

Ver autor →

Otras obras del mismo autor en el catálogo

Libros similares

Libros relacionados según distintos criterios de búsqueda

Gödel, Escher, Bach: Un Eterno y Novedoso Bucle

Douglas R. Hofstadter

1979·filosofia

Aunque no trata directamente con la verificación formal de programas, 'Gödel, Escher, Bach' aborda los fundamentos lógicos y metafísicos de los sistemas formales y la recursión, elementos esenciales para entender cómo se puede construir y verificar un programa de manera rigurosa, pero desde una perspectiva mucho más amplia y artística. La verificación de programas, al fin y al cabo, es un intento de hacer explícitas las reglas implícitas de un sistema, tal como Hofstadter explora en sus bucles extraños.

La verificación de programas se basa en la idea de que un programa puede ser 'probado' correcto dentro de un marco formal. Kuhn, en 'La Estructura de las Revoluciones Científicas', cuestiona la noción de 'verdad' y 'corrección' absoluta dentro de un paradigma científico. Por analogía, se puede cuestionar si la verificación de programas es una búsqueda de la verdad absoluta (imposible según Kuhn) o si se trata de un esfuerzo por demostrar la corrección dentro de un paradigma de computación específico, un cambio 'no obvio' de perspectiva sobre qué significa 'verificar'.

Meditaciones sobre la primera filosofía

René Descartes

1641·filosofia

La búsqueda de la certeza y la demostración rigurosa de la corrección son centrales tanto para las 'Meditaciones' de Descartes como para la verificación de programas. Ambos esfuerzos buscan construir un sistema irrefutable a partir de axiomas fundamentales y deducciones lógicas, eliminando el error y la ambigüedad. Descartes intentó verificar la existencia de un ser pensante a través de un proceso deductivo; la verificación de programas busca verificar la ejecución correcta de un algoritmo.

Investigaciones lógicas

Edmund Husserl

1900·filosofia

Este libro se conecta profundamente con la verificación de programas en su intento de establecer y analizar los fundamentos de cómo algo 'significa' o 'opera'. Husserl busca la intencionalidad y la estructura esencial del pensamiento y el lenguaje, de manera similar a como la verificación de programas descompone un programa en sus componentes lógicos y semánticos más básicos para asegurar que su 'significado' (su comportamiento) se corresponde con su 'intención' (su especificación). Ambos son ejercicios de poner en evidencia la estructura subyacente y la coherencia lógica.

El sistema computacional de Von Neumann

Herman H. Goldstine

1972·ensayo

Mientras que Manna se enfoca en la verificación de lo que un programa computa, Goldstine proporciona una visión de cómo la arquitectura misma de la máquina fue concebida y justificada. Comprender las bases teóricas de la máquina subyacente es un paso previo (e igualmente fundamental) a la verificación del software que se ejecuta en ella. Es un texto menos conocido para el público general, pero seminal en la historia de la computación.

Hilbert, un matemático alemán, es el principal exponente del formalismo, una corriente que influyó enormemente en la lógica y la computación. Su enfoque de tratar los sistemas como manipulaciones de símbolos según reglas, buscando la consistencia y la completitud, es un predecesor directo del pensamiento detrás de la verificación formal de programas. La obra de Manna es una aplicación de estos principios formalistas al dominio computacional. Es un texto fundamental en la metamatemática, pero poco leído fuera de círculos muy específicos.

Elementos de lógica teórica

David Hilbert, Wilhelm Ackermann

1928·ensayo

El libro de Manna sobre verificación de programas emplea una estructura rigurosa basada en el formalismo lógico. Este ensayo de Hilbert y Ackermann proporciona, en muchos sentidos, la 'estructura' o el armazón conceptual subyacente. Ambos textos comparten la adhesión a un método axiomático-deductivo, la construcción de un sistema formal a partir de elementos básicos y la exploración de sus propiedades de consistencia y completitud. Es la base estructural para construir cualquier sistema verificable.

Principia Mathematica

Alfred North Whitehead, Bertrand Russell

1910·filosofia

La 'Principia Mathematica' es un esfuerzo extremo y ambicioso para establecer la totalidad de las matemáticas sobre una base lógica rigurosa. Su estructura es un sistema formal denso de símbolos, axiomas y reglas de inferencia, análogo a cómo se construye una prueba de verificación de programas. La obra de Manna adopta un enfoque similarmente estructurado y deductivo al intentar probar la corrección de un programa, aplicando principios de inferencia lógica a las propiedades del código. Ambos son tratados sobre cómo construir y demostrar la solidez de sistemas complejos a través de la formalización.

Ayúdame a que yoleo sea sostenible