1 research outputs found

    Biortogonalidad para corrección de compiladores y adecuación computacional

    Get PDF
    Tesis (Doctor en Ciencias de la Computación)--Universidad Nacional de Córdoba, Facultad de Matemática, Astronomía, Física y Computación, 2019.En esta tesis hemos estudiado en profundidad los métodos de biortogonalidad y step-indexing para probar tanto adecuación computacional como corrección de compiladores. Un primer aporte es la prueba de corrección de una semántica denotacional con respecto a una operacional para un lenguaje funcional lazy definido por John Launchbury corriegiendo ciertos ciertas irregularidades en algunas definiciones. Otra contribución es la prueba de adecuación computacional de una semántica operacional con respecto a una denotacional para un lenguaje funcional call-by-value con subtipado. Para este mismo lenguaje probamos la coincidencia entre una semántica denotacional extrínseca y una intrínseca, obteniendo como corolario la coherencia de la semántica intrínseca. Este aporte incluye la mecanización completa en Coq de todos los resultados; siendo, tanto como sabemos, la primera mecanización del teorema de bracketing propuesto por John Reynolds. Finalmente damos una prueba de corrección de un compilador para un lenguaje lazy con recursión generando código para una máquina abstracta, este aporte extiende significativamente un trabajo previo desarrollado por Leonardo Rodríguez. Incluimos también la mecanización completa en Coq.In this work we studied the techniques of biorthogonality and step-indexing for proving computational adequacy and compiler correctness. The first contribution is the proof of correction of a denotational semantics with respect to a operational semantics for a lazy language originally defined by John Launchbury fixing some definition irregularities. Another contribution is the proof of computational adequacy of the operational semantics with respect to a denotational semantics for a call-by-value functional language with subtyping. Also for this same language we prove the coincidence between an extrinsic and intrinsic denotational semantics. This contribution includes the complete mechanization in Coq of all the results; being, as far as we know, the first mechanization of Reynolds’ bracketing theorem. Finally we give a proof of the correction of a compiler for an abstract machine, this contribution significantly extends previous work developed by Leonardo Rodríguez. We also include the complete mechanization in Coq.Gadea, Alejandro Emilio. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina
    corecore