Logic for computer science: foundations of automatic theorem proving
Logic for computer science: foundations of automatic theorem proving
Some Lambda Calculus and Type Theory Formalized
Journal of Automated Reasoning
Isar - A Generic Interpretative Approach to Readable Formal Proof Documents
TPHOLs '99 Proceedings of the 12th International Conference on Theorem Proving in Higher Order Logics
Nominal logic, a first order theory of names and binding
Information and Computation - TACS 2001
A formal treatment of the barendregt variable convention in rule inductions
Proceedings of the 3rd ACM SIGPLAN workshop on Mechanized reasoning about languages with variable binding
Mechanising λ-calculus using a classical first order theory of terms with permutations
Higher-Order and Symbolic Computation
Formalising the π-calculus using nominal logic
FOSSACS'07 Proceedings of the 10th international conference on Foundations of software science and computational structures
A recursion combinator for nominal datatypes implemented in Isabelle/HOL
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
Mechanized metatheory for the masses: the PoplMark challenge
TPHOLs'05 Proceedings of the 18th international conference on Theorem Proving in Higher Order Logics
Nominal techniques in Isabelle/HOL
CADE' 20 Proceedings of the 20th international conference on Automated Deduction
Proceedings of the 35th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Formalising in Nominal Isabelle Crary's Completeness Proof for Equivalence Checking
Electronic Notes in Theoretical Computer Science (ENTCS)
Nominal Techniques in Isabelle/HOL
Journal of Automated Reasoning
Revisiting Cut-Elimination: One Difficult Proof Is Really a Proof
RTA '08 Proceedings of the 19th international conference on Rewriting Techniques and Applications
A Model for Java with Wildcards
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
TPHOLs '08 Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Mechanizing the metatheory of LF
ACM Transactions on Computational Logic (TOCL)
Mechanizing the metatheory of mini-XQuery
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Formalizing Adequacy: A Case Study for Higher-order Abstract Syntax
Journal of Automated Reasoning
A Canonical Locally Named Representation of Binding
Journal of Automated Reasoning
Java wildcards meet definition-site variance
ECOOP'12 Proceedings of the 26th European conference on Object-Oriented Programming
A locally nameless representation for a natural semantics for lazy evaluation
ICTAC'12 Proceedings of the 9th international conference on Theoretical Aspects of Computing
Hi-index | 0.00 |
Inductive definitions and rule inductions are two fundamental reasoning tools in logic and computer science. When inductive definitions involve binders, then Barendregt's variable convention is nearly always employed (explicitly or implicitly) in order to obtain simple proofs. Using this convention, one does not consider truly arbitrary bound names, as required by the rule induction principle, but rather bound names about which various freshness assumptions are made. Unfortunately, neither Barendregt nor others give a formal justification for the variable convention, which makes it hard to formalise such proofs. In this paper we identify conditions an inductive definition has to satisfy so that a form of the variable convention can be built into the rule induction principle. In practice this means we come quite close to the informal reasoning of "pencil-and-paper" proofs, while remaining completely formal. Our conditions also reveal circumstances in which Barendregt's variable convention is not applicable, and can even lead to faulty reasoning.