Formal verification of the equivalence of system F and the pure type system L2
We develop a formal proof of the equivalence of two different variants of System F. The first is close to the original presentation where expressions are separated into distinct syntactic classes of types and terms. The second, L2 (also written as λ2), is a particular pure type system (PTS) where th...
Main Author: | |
---|---|
Other Authors: | |
Format: | Doctoral or Postdoctoral Thesis |
Language: | English |
Published: |
Saarländische Universitäts- und Landesbibliothek
2019
|
Subjects: | |
Online Access: | http://nbn-resolving.org/urn:nbn:de:bsz:291--ds-284251 https://doi.org/10.22028/D291-28425 |
id |
ftscidok:oai:publikationen.sulb.uni-saarland.de:20.500.11880/27836 |
---|---|
record_format |
openpolar |
spelling |
ftscidok:oai:publikationen.sulb.uni-saarland.de:20.500.11880/27836 2024-02-11T10:02:31+01:00 Formal verification of the equivalence of system F and the pure type system L2 Kaiser, Jonas Smolka, Gert 2019 http://nbn-resolving.org/urn:nbn:de:bsz:291--ds-284251 https://doi.org/10.22028/D291-28425 eng eng Saarländische Universitäts- und Landesbibliothek http://www.ps.uni-saarland.de/static/kaiser-diss/index.php http://nbn-resolving.org/urn:nbn:de:bsz:291--ds-284251 hdl:20.500.11880/27836 http://dx.doi.org/10.22028/D291-28425 openAccess Alle Ressourcen in diesem Repository sind urheberrechtlich geschützt ddc:004 ddc:510 pure type system System F de Bruijn syntax higher-order abstract syntax contextual reasoning doc-type:doctoralThesis 2019 ftscidok https://doi.org/10.22028/D291-28425 2024-01-22T23:07:23Z We develop a formal proof of the equivalence of two different variants of System F. The first is close to the original presentation where expressions are separated into distinct syntactic classes of types and terms. The second, L2 (also written as λ2), is a particular pure type system (PTS) where the notions of types and terms, and the associated expressions are unified in a single syntactic class. The employed notion of equivalence is a bidirectional reduction of the respective typing relations. A machine-verified proof of this result turns out to be surprisingly intricate, since the two variants noticeably differ in their expression languages, their type systems and the binding of local variables. Most of this work is executed in the Coq theorem prover and encompasses a general development of the PTS metatheory, an equivalence result for a stratified and a PTS variant of the simply typed λ-calculus as well as the subsequent extension to the full equivalence result for System F. We utilise nameless de Bruijn syntax with parallel substitutions for the representation of variable binding and develop an extended notion of context morphism lemmas as a structured proof method for this setting. We also provide two developments of the equivalence result in the proof systems Abella and Beluga, where we rely on higher-order abstract syntax (HOAS). This allows us to compare the three proof systems, as well as HOAS and de Bruijn for the purpose of developing formal metatheory. Wir präsentieren einen maschinell verifizierten Beweis der Äquivalenz zweier Darstellungen des Lambda-Kalküls System F. Die erste unterscheidet syntaktisch zwischen Termen und Typen und entspricht somit der geläufigen Form. Die zweite, L2 bzw. λ2, ist ein sog. Pure Type System (PTS), bei welchem alle Ausdrücke in einer syntaktischen Klasse zusammen fallen. Unser Äquivalenzbegriff ist eine bidirektionale Reduktion der jeweiligen Typrelationen. Ein formaler Beweis dieser Eigenschaft ist aufgrund der Unterschiede der Ausdruckssprachen, der ... Doctoral or Postdoctoral Thesis Beluga Beluga* Scientific publications of the Saarland University (UdS) Lambda ENVELOPE(-62.983,-62.983,-64.300,-64.300) Sog ENVELOPE(-20.972,-20.972,63.993,63.993) |
institution |
Open Polar |
collection |
Scientific publications of the Saarland University (UdS) |
op_collection_id |
ftscidok |
language |
English |
topic |
ddc:004 ddc:510 pure type system System F de Bruijn syntax higher-order abstract syntax contextual reasoning |
spellingShingle |
ddc:004 ddc:510 pure type system System F de Bruijn syntax higher-order abstract syntax contextual reasoning Kaiser, Jonas Formal verification of the equivalence of system F and the pure type system L2 |
topic_facet |
ddc:004 ddc:510 pure type system System F de Bruijn syntax higher-order abstract syntax contextual reasoning |
description |
We develop a formal proof of the equivalence of two different variants of System F. The first is close to the original presentation where expressions are separated into distinct syntactic classes of types and terms. The second, L2 (also written as λ2), is a particular pure type system (PTS) where the notions of types and terms, and the associated expressions are unified in a single syntactic class. The employed notion of equivalence is a bidirectional reduction of the respective typing relations. A machine-verified proof of this result turns out to be surprisingly intricate, since the two variants noticeably differ in their expression languages, their type systems and the binding of local variables. Most of this work is executed in the Coq theorem prover and encompasses a general development of the PTS metatheory, an equivalence result for a stratified and a PTS variant of the simply typed λ-calculus as well as the subsequent extension to the full equivalence result for System F. We utilise nameless de Bruijn syntax with parallel substitutions for the representation of variable binding and develop an extended notion of context morphism lemmas as a structured proof method for this setting. We also provide two developments of the equivalence result in the proof systems Abella and Beluga, where we rely on higher-order abstract syntax (HOAS). This allows us to compare the three proof systems, as well as HOAS and de Bruijn for the purpose of developing formal metatheory. Wir präsentieren einen maschinell verifizierten Beweis der Äquivalenz zweier Darstellungen des Lambda-Kalküls System F. Die erste unterscheidet syntaktisch zwischen Termen und Typen und entspricht somit der geläufigen Form. Die zweite, L2 bzw. λ2, ist ein sog. Pure Type System (PTS), bei welchem alle Ausdrücke in einer syntaktischen Klasse zusammen fallen. Unser Äquivalenzbegriff ist eine bidirektionale Reduktion der jeweiligen Typrelationen. Ein formaler Beweis dieser Eigenschaft ist aufgrund der Unterschiede der Ausdruckssprachen, der ... |
author2 |
Smolka, Gert |
format |
Doctoral or Postdoctoral Thesis |
author |
Kaiser, Jonas |
author_facet |
Kaiser, Jonas |
author_sort |
Kaiser, Jonas |
title |
Formal verification of the equivalence of system F and the pure type system L2 |
title_short |
Formal verification of the equivalence of system F and the pure type system L2 |
title_full |
Formal verification of the equivalence of system F and the pure type system L2 |
title_fullStr |
Formal verification of the equivalence of system F and the pure type system L2 |
title_full_unstemmed |
Formal verification of the equivalence of system F and the pure type system L2 |
title_sort |
formal verification of the equivalence of system f and the pure type system l2 |
publisher |
Saarländische Universitäts- und Landesbibliothek |
publishDate |
2019 |
url |
http://nbn-resolving.org/urn:nbn:de:bsz:291--ds-284251 https://doi.org/10.22028/D291-28425 |
long_lat |
ENVELOPE(-62.983,-62.983,-64.300,-64.300) ENVELOPE(-20.972,-20.972,63.993,63.993) |
geographic |
Lambda Sog |
geographic_facet |
Lambda Sog |
genre |
Beluga Beluga* |
genre_facet |
Beluga Beluga* |
op_relation |
http://www.ps.uni-saarland.de/static/kaiser-diss/index.php http://nbn-resolving.org/urn:nbn:de:bsz:291--ds-284251 hdl:20.500.11880/27836 http://dx.doi.org/10.22028/D291-28425 |
op_rights |
openAccess Alle Ressourcen in diesem Repository sind urheberrechtlich geschützt |
op_doi |
https://doi.org/10.22028/D291-28425 |
_version_ |
1790598534405292032 |