LEGO
LEGO is an interactive proof development system (proof assistant) designed and implemented by Randy Pollack in Edinburgh using New Jersey ML. It implements various related type systems - the Edinburgh Logical Framework (LF), the Calculus of Constructions (CC), the Generalized Calculus of Constructions (GCC) and the Unified Theory of Dependent Types (UTT). LEGO is a powerful tool for interactive proof development in the natural deduction style. It supports refinement proof as a basic operation. The system design emphasizes removing the more tedious aspects of interactive proofs. For example, features of the system like argument synthesis and universe polymorphism make proof checking more practical by bringing the level of formalization closer to that of informal mathematics. The higher-order power of its underlying type theories, and the support of specifying new inductive types, provide an expressive language for formalization of mathematical problems and program specification and development.
Keywords for this software
References in zbMATH (referenced in 107 articles )
Showing results 1 to 20 of 107.
Sorted by year (- Cockx, Jesper; Devriese, Dominique; Piessens, Frank: Unifiers as equivalences: proof-relevant unification of dependently typed data (2016)
- Charguéraud, Arthur: The locally nameless representation (2012)
- Crole, Roy L.: Alpha equivalence equalities (2012)
- Felty, Amy; Momigliano, Alberto: Hybrid. A definitional two-level approach to reasoning with higher-order abstract syntax (2012)
- Moczydłowski, Wojciech: Unifying sets and programs via dependent types (2012)
- Pollack, Randy; Sato, Masahiko; Ricciotti, Wilmer: A canonical locally named representation of binding (2012)
- Ranta, Aarne: Machine translation and type theory (2012)
- Abel, Andreas; Altenkirch, Thorsten: A partial type checking algorithm for Type:Type (2011)
- Dennis, Louise Abigail; Green, Ian; Smaill, Alan: The use of embeddings to provide a clean separation of term and annotation for higher order rippling (2011)
- Lengrand, Stéphane Jean Eric; Dyckhoff, Roy; McKinna, James: A focused sequent calculus framework for proof search in pure type systems (2011)
- Sozeau, Matthieu: Equations: a dependent pattern-matching compiler (2010)
- Asperti, A.; Ricciotti, W.; Sacerdoti Coen, C.; Tassi, E.: A compact kernel for the calculus of inductive constructions (2009)
- Chapman, James: Type theory should eat itself (2009)
- Geuvers, H.: Proof assistants: history, ideas and future (2009)
- Luo, Zhaohui: Manifest fields and module mechanisms in intensional type theory (2009)
- Moczydłowski, Wojciech: Unifying sets and programs via dependent types (2009)
- Farmer, William M.: The seven virtues of simple type theory (2008)
- Luo, Zhaohui; Adams, Robin: Structural subtyping for inductive types with functorial equality rules (2008)
- Nanevski, Aleksandar; Morrisett, Greg; Shinnar, Avraham; Govereau, Paul; Birkedal, Lars: Ynot: dependent types for imperative programs (2008)
- Abel, Andreas: Normalization for the simply-typed lambda-calculus in Twelf (2007)
Further publications can be found at: http://www.dcs.ed.ac.uk/home/lego/html/papers.html