2018
DOI: 10.1017/s0960129518000415
|View full text |Cite
|
Sign up to set email alerts
|

A case study in programming coinductive proofs: Howe’s method

Abstract: Bisimulation proofs play a central role in programming languages in establishing rich properties such as contextual equivalence. They are also challenging to mechanize, since they require a combination of inductive and coinductive reasoning on open terms. In this paper, we describe mechanizing the property that similarity in the call-by-name lambda calculus is a pre-congruence using Howe’s method in the Beluga formal reasoning system. The development relies on three key ingredients: (1) we give a higher order … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
3
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
3
1
1

Relationship

2
3

Authors

Journals

citations
Cited by 5 publications
(4 citation statements)
references
References 61 publications
0
3
0
Order By: Relevance
“…Finally, another area that deserves new benchmarks is coinductive reasoning. While this has been a staple in proof assistants since the late 90s, most case studies regarded properties of bisimlarity in process and λ-calculi, to name just a few recent papers (Tiu & Miller, 2010;Bengtson et al, 2016;Lenglet & Schmitt, 2018;Momigliano et al, 2019). These turned (a posteriori) not so challenging, since those coinductive proofs can be carried out more or less with the limited technology of guarded induction.…”
Section: Discussionmentioning
confidence: 99%
“…Finally, another area that deserves new benchmarks is coinductive reasoning. While this has been a staple in proof assistants since the late 90s, most case studies regarded properties of bisimlarity in process and λ-calculi, to name just a few recent papers (Tiu & Miller, 2010;Bengtson et al, 2016;Lenglet & Schmitt, 2018;Momigliano et al, 2019). These turned (a posteriori) not so challenging, since those coinductive proofs can be carried out more or less with the limited technology of guarded induction.…”
Section: Discussionmentioning
confidence: 99%
“…For this, Beluga is a strong candidate: in fact the type safety challenge is already in the bag, thanks to the techniques developed in [20]. The coinduction part is more challenging, but we have a good track record in a similar benchmark [14]. Solving the rest of CCFB in Beluga may also shed some light on the role of the ∇ quantifier [13] as a meta-reasoning tool, compared to Beluga's use of contextual LF as a specification language.…”
Section: Evaluation and Conclusionmentioning
confidence: 99%
“…Besides the Abella and Twelf system, a number of other implemented systems support some or all aspects of λ-tree syntax: these include Beluga [129], Hybrid [44], Isabelle [123], Minlog [147], and the Teyjus [115] and ELPI [40] implementations of λProlog. Some of these systems have been explicitly compared and contrasted in recent papers [45,46,78,112]. Additionally, benchmark problems that are unique to metaprogramming problems have been proposed to test the ability of mechanized metatheory provers [12,47].…”
Section: Related Workmentioning
confidence: 99%