Abella
The Abella Interactive Theorem Prover (System Description). Abella [3] is an interactive system for reasoning about aspects of object languages that have been formally presented through recursive rules based on syntactic structure. Abella utilizes a two-level logic approach to specification and reasoning. One level is defined by a specification logic which supports a transparent encoding of structural semantics rules and also enables their execution. The second level, called the reasoning logic, embeds the specification logic and allows the development of proofs of properties about specifications. An important characteristic of both logics is that they exploit the λ-tree syntax approach to treating binding in object languages. Amongst other things, Abella has been used to prove normalizability properties of the λ-calculus, cut admissibility for a sequent calculus and type uniqueness and subject reduction properties. This paper discusses the logical foundations of Abella, outlines the style of theorem proving that it supports and finally describes some of its recent applications.
Keywords for this software
References in zbMATH (referenced in 32 articles , 1 standard article )
Showing results 1 to 20 of 32.
Sorted by year (- Chaudhuri, Kaustuv; Lima, Leonardo; Reis, Giselle: Formalized meta-theory of sequent calculi for substructural logics (2017)
- Cimini, Matteo; Siek, Jeremy G.: Automatically generating the dynamic semantics of gradually typed languages (2017)
- Miller, Dale: Proof checking and logic programming (2017)
- Serrano, Alejandro; Hage, Jurriaan: Constraint handling rules with binders, patterns and generic quantification (2017)
- Wang, Yuting; Nadathur, Gopalan: A higher-order abstract syntax approach to verified transformations on functional programs (2016)
- Felty, Amy P.; Momigliano, Alberto; Pientka, Brigitte: The next 700 challenge problems for reasoning with higher-order abstract syntax representations. II: A survey (2015)
- Miller, Dale: Proof checking and logic programming (2015)
- Olarte, Carlos; Pimentel, Elaine: Proving concurrent constraint programming correct, revisited (2015)
- Pientka, Brigitte; Cave, Andrew: Inductive Beluga: programming proofs (2015)
- Steen, Alexander; Benzmüller, Christoph: There is no best $\beta $-normalization strategy for higher-order reasoners (2015)
- Wisniewski, Max; Steen, Alexander; Benzmüller, Christoph: LeoPARD -- a generic platform for the implementation of higher-order reasoners (2015)
- Southern, Mary; Chaudhuri, Kaustuv: A two-level logic approach to reasoning about typed specification languages (2014)
- Accattoli, Beniamino: Proof pearl: abella formalization of $\lambda $-calculus cube property (2012)
- Cimini, Matteo; Mousavi, Mohamamdreza; Reniers, Michel A.; Gabbay, Murdoch J.: Nominal SOS (2012)
- Felty, Amy; Momigliano, Alberto: Hybrid. A definitional two-level approach to reasoning with higher-order abstract syntax (2012)
- Gacek, Andrew: Abella: a tutorial (2012)
- Gacek, Andrew; Miller, Dale; Nadathur, Gopalan: A two-level logic approach to reasoning about computations (2012)
- Lee, Gyesik; Oliveira, Bruno C.D.S.; Cho, Sungkeun; Yi, Kwangkeun: GMeta: a generic formal metatheory framework for first-order representations (2012)
- Cheney, James; Urban, Christian: Mechanizing the metatheory of mini-XQuery (2011)
- Gacek, Andrew; Miller, Dale; Nadathur, Gopalan: Nominal abstraction (2011)