A framework for defining logics
Journal of the ACM (JACM)
Information and Computation
System Description: Twelf - A Meta-Logical Framework for Deductive Systems
CADE-16 Proceedings of the 16th International Conference on Automated Deduction: Automated Deduction
Towards a mechanized metatheory of standard ML
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Mechanizing metatheory in a logical framework
Journal of Functional Programming
Normalization for the Simply-Typed Lambda-Calculus in Twelf
Electronic Notes in Theoretical Computer Science (ENTCS)
LICS '08 Proceedings of the 2008 23rd Annual IEEE Symposium on Logic in Computer Science
A practical module system for LF
Proceedings of the Fourth International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice
Syntactic finitism in the metatheory of programming languages
Syntactic finitism in the metatheory of programming languages
Practical Foundations for Programming Languages
Practical Foundations for Programming Languages
Hi-index | 0.00 |
Formalizing proofs by logical relations in the Twelf proof assistant is known to be notoriously difficult. However, as demonstrated by Schürmann and Sarnat [In Proc. of 23rd Symp. on Logic in Computer Science, 2008] such proofs can be represented and verified in Twelf if done so using a Gentzen-style auxiliary assertion logic which is subsequently proved consistent via cut elimination. We demonstrate in this paper an application of the above methodology to proofs of observational equivalence between expressions in a simply typed lambda calculus with a call-by-name operational semantics. Our use case requires the assertion logic to be extended with reasoning principles not present in the original presentation of the formalization method. We address this by generalizing the assertion logic to include dependent sorts, and demonstrate that the original cut elimination proof continues to apply without modification.