A Case Study on Logical Relations using Contextual Types

Proofs by logical relations play a key role to establish rich properties such as normalization or contextual equivalence. They are also challenging to mechanize. In this paper, we describe the completeness proof of algorithmic equality for simply typed lambda-terms by Crary where we reason about log...

Full description

Bibliographic Details
Published in:Electronic Proceedings in Theoretical Computer Science
Main Authors: Andrew Cave, Brigitte Pientka
Format: Article in Journal/Newspaper
Language:English
Published: Open Publishing Association 2015
Subjects:
Online Access:https://doi.org/10.4204/EPTCS.185.3
https://doaj.org/article/a3349533a8984de8b01a2d13bd51a81a
_version_ 1821868452978098176
author Andrew Cave
Brigitte Pientka
author_facet Andrew Cave
Brigitte Pientka
author_sort Andrew Cave
collection Directory of Open Access Journals: DOAJ Articles
container_start_page 33
container_title Electronic Proceedings in Theoretical Computer Science
container_volume 185
description Proofs by logical relations play a key role to establish rich properties such as normalization or contextual equivalence. They are also challenging to mechanize. In this paper, we describe the completeness proof of algorithmic equality for simply typed lambda-terms by Crary where we reason about logically equivalent terms in the proof environment Beluga. There are three key aspects we rely upon: 1) we encode lambda-terms together with their operational semantics and algorithmic equality using higher-order abstract syntax 2) we directly encode the corresponding logical equivalence of well-typed lambda-terms using recursive types and higher-order functions 3) we exploit Beluga's support for contexts and the equational theory of simultaneous substitutions. This leads to a direct and compact mechanization, demonstrating Beluga's strength at formalizing logical relations proofs.
format Article in Journal/Newspaper
genre Beluga
Beluga*
genre_facet Beluga
Beluga*
geographic Lambda
geographic_facet Lambda
id ftdoajarticles:oai:doaj.org/article:a3349533a8984de8b01a2d13bd51a81a
institution Open Polar
language English
long_lat ENVELOPE(-62.983,-62.983,-64.300,-64.300)
op_collection_id ftdoajarticles
op_container_end_page 45
op_doi https://doi.org/10.4204/EPTCS.185.3
op_relation http://arxiv.org/pdf/1507.08053v1
https://doaj.org/toc/2075-2180
2075-2180
doi:10.4204/EPTCS.185.3
https://doaj.org/article/a3349533a8984de8b01a2d13bd51a81a
op_source Electronic Proceedings in Theoretical Computer Science, Vol 185, Iss Proc. LFMTP 2015, Pp 33-45 (2015)
publishDate 2015
publisher Open Publishing Association
record_format openpolar
spelling ftdoajarticles:oai:doaj.org/article:a3349533a8984de8b01a2d13bd51a81a 2025-01-16T21:15:19+00:00 A Case Study on Logical Relations using Contextual Types Andrew Cave Brigitte Pientka 2015-07-01T00:00:00Z https://doi.org/10.4204/EPTCS.185.3 https://doaj.org/article/a3349533a8984de8b01a2d13bd51a81a EN eng Open Publishing Association http://arxiv.org/pdf/1507.08053v1 https://doaj.org/toc/2075-2180 2075-2180 doi:10.4204/EPTCS.185.3 https://doaj.org/article/a3349533a8984de8b01a2d13bd51a81a Electronic Proceedings in Theoretical Computer Science, Vol 185, Iss Proc. LFMTP 2015, Pp 33-45 (2015) Mathematics QA1-939 Electronic computers. Computer science QA75.5-76.95 article 2015 ftdoajarticles https://doi.org/10.4204/EPTCS.185.3 2022-12-30T21:45:44Z Proofs by logical relations play a key role to establish rich properties such as normalization or contextual equivalence. They are also challenging to mechanize. In this paper, we describe the completeness proof of algorithmic equality for simply typed lambda-terms by Crary where we reason about logically equivalent terms in the proof environment Beluga. There are three key aspects we rely upon: 1) we encode lambda-terms together with their operational semantics and algorithmic equality using higher-order abstract syntax 2) we directly encode the corresponding logical equivalence of well-typed lambda-terms using recursive types and higher-order functions 3) we exploit Beluga's support for contexts and the equational theory of simultaneous substitutions. This leads to a direct and compact mechanization, demonstrating Beluga's strength at formalizing logical relations proofs. Article in Journal/Newspaper Beluga Beluga* Directory of Open Access Journals: DOAJ Articles Lambda ENVELOPE(-62.983,-62.983,-64.300,-64.300) Electronic Proceedings in Theoretical Computer Science 185 33 45
spellingShingle Mathematics
QA1-939
Electronic computers. Computer science
QA75.5-76.95
Andrew Cave
Brigitte Pientka
A Case Study on Logical Relations using Contextual Types
title A Case Study on Logical Relations using Contextual Types
title_full A Case Study on Logical Relations using Contextual Types
title_fullStr A Case Study on Logical Relations using Contextual Types
title_full_unstemmed A Case Study on Logical Relations using Contextual Types
title_short A Case Study on Logical Relations using Contextual Types
title_sort case study on logical relations using contextual types
topic Mathematics
QA1-939
Electronic computers. Computer science
QA75.5-76.95
topic_facet Mathematics
QA1-939
Electronic computers. Computer science
QA75.5-76.95
url https://doi.org/10.4204/EPTCS.185.3
https://doaj.org/article/a3349533a8984de8b01a2d13bd51a81a