Compilación Certificada sobre Máquinas Abstractas de evaluación normal / Leonardo M. Rodríguez.
Detalles de publicación: [S.l. : s.n. ], 2017.Descripción: 169 p. : il.; 30 cmTema(s): Recursos en línea: Disponible en línea.Nota de disertación: Tesis (Doctor en Ciencias de la Computación)--Universidad Nacional de Córdoba, Facultad de Matemática, Astronomía, Física y Computación, 2017. Resumen: En esta tesis se analiza cómo demostrar la corrección de compiladores de lenguajes con evaluación normal, utilizando máquinas abstractas como entornos de ejecución. En particular se presenta una prueba de corrección de un compilador basada en la semántica denotacional del lenguaje, utilizando técnicas como step-indexing y biortogonalidad para definir relaciones lógicas que capturen la noción de corrección del compilador de manera composicional. Además, se desarrolla un enfoque basado en la noción de realizabilidad para demostrar la corrección del compilador en un lenguaje con evaluación lazy. Todas las pruebas de corrección presentadas en la tesis están formalizadas en Coq, un asistente de demostración con tipos dependientes.Resumen: In this work we explore how to prove the correctness of compilers for call-by-name languages using abstract machines as runtime environments. We present a proof of correctness with respect to the denotational semantics of the source language, using methods as step-indexing and biorthogonality to define logical relations in order to capture a notion of correctness in a compositional manner. We also present an approach based on logical realizability to prove the correctness of a call-by-need language. Every proof as been formalized in Coq, a proof assistant with dependent types.Tipo de ítem | Biblioteca actual | Signatura | Copia número | Estado | Notas | Fecha de vencimiento | Código de barras | Reserva de ítems |
---|---|---|---|---|---|---|---|---|
Tesis de Doctorado | FaMAF Vitrina | T C ROD | 1 | Disponible | Disponible también en línea | 22867 |
Bajo una Licencia Creative Commons Atribución 2.5 Argentina.
Incluye apéndices.
Tesis (Doctor en Ciencias de la Computación)--Universidad Nacional de Córdoba, Facultad de Matemática, Astronomía, Física y Computación, 2017.
En esta tesis se analiza cómo demostrar la corrección de compiladores de lenguajes con evaluación normal, utilizando máquinas abstractas como entornos de ejecución. En particular se presenta una prueba de corrección de un compilador basada en la semántica denotacional del lenguaje, utilizando técnicas como step-indexing y biortogonalidad para definir relaciones lógicas que capturen la noción de corrección del compilador de manera composicional. Además, se desarrolla un enfoque basado en la noción de realizabilidad para demostrar la corrección del compilador en un lenguaje con evaluación lazy. Todas las pruebas de corrección presentadas en la tesis están formalizadas en Coq, un asistente de demostración con tipos dependientes.
In this work we explore how to prove the correctness of compilers for call-by-name languages using abstract machines as runtime environments. We present a proof of correctness with respect to the denotational semantics of the source language, using methods as step-indexing and biorthogonality to define logical relations in order to capture a notion of correctness in a compositional manner. We also present an approach based on logical realizability to prove the correctness of a call-by-need language. Every proof as been formalized in Coq, a proof assistant with dependent types.
Disponible en línea.