Rewriting Modulo β in the λΠ-Calculus Modulo
The lambda-Pi-calculus Modulo is a variant of the lambda-calculus with dependent types where beta-conversion is extended with user-defined rewrite rules. It is an expressive logical framework and has been used to encode logics and type systems in a shallow way. Basic properties such as subject reduc...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
Open Publishing Association
2015-07-01
|
Series: | Electronic Proceedings in Theoretical Computer Science |
Online Access: | http://arxiv.org/pdf/1507.08055v1 |
id |
doaj-f7062a97f1ff423d9beb2ebb2da99d2c |
---|---|
record_format |
Article |
spelling |
doaj-f7062a97f1ff423d9beb2ebb2da99d2c2020-11-24T23:01:18ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802015-07-01185Proc. LFMTP 20158710110.4204/EPTCS.185.6:4Rewriting Modulo β in the λΠ-Calculus ModuloRonan Saillard0 MINES ParisTech, PSL Research University, France The lambda-Pi-calculus Modulo is a variant of the lambda-calculus with dependent types where beta-conversion is extended with user-defined rewrite rules. It is an expressive logical framework and has been used to encode logics and type systems in a shallow way. Basic properties such as subject reduction or uniqueness of types do not hold in general in the lambda-Pi-calculus Modulo. However, they hold if the rewrite system generated by the rewrite rules together with beta-reduction is confluent. But this is too restrictive. To handle the case where non confluence comes from the interference between the beta-reduction and rewrite rules with lambda-abstraction on their left-hand side, we introduce a notion of rewriting modulo beta for the lambda-Pi-calculus Modulo. We prove that confluence of rewriting modulo beta is enough to ensure subject reduction and uniqueness of types. We achieve our goal by encoding the lambda-Pi-calculus Modulo into Higher-Order Rewrite System (HRS). As a consequence, we also make the confluence results for HRSs available for the lambda-Pi-calculus Modulo.http://arxiv.org/pdf/1507.08055v1 |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Ronan Saillard |
spellingShingle |
Ronan Saillard Rewriting Modulo β in the λΠ-Calculus Modulo Electronic Proceedings in Theoretical Computer Science |
author_facet |
Ronan Saillard |
author_sort |
Ronan Saillard |
title |
Rewriting Modulo β in the λΠ-Calculus Modulo |
title_short |
Rewriting Modulo β in the λΠ-Calculus Modulo |
title_full |
Rewriting Modulo β in the λΠ-Calculus Modulo |
title_fullStr |
Rewriting Modulo β in the λΠ-Calculus Modulo |
title_full_unstemmed |
Rewriting Modulo β in the λΠ-Calculus Modulo |
title_sort |
rewriting modulo β in the λπ-calculus modulo |
publisher |
Open Publishing Association |
series |
Electronic Proceedings in Theoretical Computer Science |
issn |
2075-2180 |
publishDate |
2015-07-01 |
description |
The lambda-Pi-calculus Modulo is a variant of the lambda-calculus with dependent types where beta-conversion is extended with user-defined rewrite rules. It is an expressive logical framework and has been used to encode logics and type systems in a shallow way. Basic properties such as subject reduction or uniqueness of types do not hold in general in the lambda-Pi-calculus Modulo. However, they hold if the rewrite system generated by the rewrite rules together with beta-reduction is confluent. But this is too restrictive. To handle the case where non confluence comes from the interference between the beta-reduction and rewrite rules with lambda-abstraction on their left-hand side, we introduce a notion of rewriting modulo beta for the lambda-Pi-calculus Modulo. We prove that confluence of rewriting modulo beta is enough to ensure subject reduction and uniqueness of types. We achieve our goal by encoding the lambda-Pi-calculus Modulo into Higher-Order Rewrite System (HRS). As a consequence, we also make the confluence results for HRSs available for the lambda-Pi-calculus Modulo. |
url |
http://arxiv.org/pdf/1507.08055v1 |
work_keys_str_mv |
AT ronansaillard rewritingmodulobinthelpcalculusmodulo |
_version_ |
1725640115953336320 |