ProofPower is a suite of tools supporting specification and proof in Higher Order Logic (HOL) and in the Z notation...All the ProofPower packages except PPDaz are free, open-source, software made available under the terms of the GNU General Public License. (PPDaz is Ada stuff)
There is a growing amount of evidence-based research supporting various botanicals; and/or primary evidence comes from a long medicinal use. Evidence-based research may be limited, but we shouldn't ignore botanicals that have been used for 1000s of years,
Research Interests Programming Languages, Logic and Type Theory, Logical Frameworks, Automated Deduction, Trustworthy Computing (see also Publications, Students & Co-authors) Projects Logosphere A Formal Digital Library Triple Type Refinement in Programming Languages ConCert Language Technology for Trustless Software Dissemination Twelf Logical and Meta-Logical Frameworks SeLF Distributed System Security via Logical Frameworks Manifest Security Logics and Languages for Manifestly Secure Systems Prospero Integrating Types and Specifications
Coq'Art is the familiar name for the first book on the Coq proof assistant and its underlying theory the Calculus of Inductive Constructions , written by Yves Bertot and Pierre Castéran. Interactive Theorem Proving and Program Development Coq'Art: The Calculus of Inductive Constructions Series: Texts in Theoretical Computer Science. An EATCS Series Bertot, Yves, Castéran, Pierre 2004, XXV, 469 p., Hardcover ISBN: 3-540-20854-2 This site has been updated for Coq8.2. Warning! Some solutions we propose don't work on versions prior to V8.2gamma. Please find here a tar file fully compatible with coq8.1pl3 and the printed edition of the book. These exercises were written after the release of the book (May 2004). The solution of some of them (e.g. mergesort ) illustrates new features of Coq. For instance, command Function and tactic functional induction.
HOL Light is a computer program to help users prove interesting mathematical theorems completely formally in higher order logic. It sets a very exacting standard of correctness, but provides a number of automated tools and pre-proved mathematical theorems (e.g. about arithmetic, basic set theory and real analysis) to save the user work. It is also fully programmable, so users can extend it with new theorems and inference rules without compromising its soundness. There are a number of versions of HOL, going back to Mike Gordon's work in the early 80s. Compared with other HOL systems, HOL Light uses a much simpler logical core and has little legacy code, giving the system a simple and uncluttered feel. Despite its simplicity, it offers theorem proving power comparable to, and in some areas greater than, other versions of HOL, and has been used for some significant industrial-scale verification applications.
LambdaCLAM is a tool for automated theorem proving in higher order domains. In particular LambdaCLAM specialises in proof using induction based on the rippling heuristic. LambdaCLAM is a higher-order version of CLAM. Both CLAM and LambdaCLAM use proof planning to guide the search for a proof A proof plan is a proof of a theorem at some level of abstraction presented as a tree. Each node in this tree is justified by a tactic. The exact nature of these tactics is unspecified, they may be sequences of inference rules, programs for generating sequences of inferences or a further proof plan at some lower level of abstraction. In principle while the generation of the proof tree may have involved heuristics and (possibly) unsound inference steps, it can be justified by executing the tactics attached to the nodes.
The goal of the Ynot project is to make programming with dependent types practical for a modern programming language. In particular, we are extending the Coq proof assistant to make it possible to write higher-order, imperative and concurrent programs (in the style of Haskell) through a shallow embedding of Hoare Type Theory (HTT). HTT provides a clean separation between pure and effectful computations, makes it possible to formally specify and reason about effects, and is fully compositional. This seems like it's related to Adam Chlipala's A Certified Type-Preserving Compiler from Lambda Calculus to Assembly Language. See, in particular, slides 23-24 of this presentation (PDF). More generally, computation and reflection seem to be gaining recognition as important features for the practical use of Coq Again, the point is to simplify programming with dependent types in Coq
Lectures in the 2016 Seminar on "Proofs, beliefs and algorithms through the lens of Sum of Squares" at Harvard and MIT, see http://www.boazbarak.org/sos/
* Higher-Order Logic * o HOL (Higher-Order Logic) o HOLCF (Higher-Order Logic of Computable Functions) * First-Order Logic * o FOL (Many-sorted First-Order Logic) o ZF (Set Theory) o CCL (Classical Computational Logic) o LCF (Logic of Computable Functions) o FOLP (FOL with Proof Terms) * Miscellaneous * o Sequents (first-order, modal and linear logics) o CTT (Constructive Type Theory) o Cube (The Lambda Cube)
Isabelle is a generic proof assistant. It allows mathematical formulas to be expressed in a formal language and provides tools for proving those formulas in a logical calculus. Isabelle is developed at University of Cambridge (Larry Paulson) and Technische Universität München (Tobias Nipkow). See the Isabelle overview for a brief introduction. Now available: Isabelle2008 Some notable improvements: * HOL: significant speedup of Metis prover; proper support for multithreading. * HOL: new version of primrec command supporting type-inference and local theory targets. * HOL: improved support for termination proofs of recursive function definitions. * New local theory targets for class instantiation and overloading. * Support for named dynamic lists of theorems.
Supported and ongoing software projects: * IsaPlanner - a proof planner for Isabelle * HiGraph - a system for presenting and manipulating hierarchical proofs/graphs generated by proof planning in IsaPlanner. Currently just an editor/drawing tool for the graphs. * Quantomatic - a tool for graphically reasoning about quantum computation using models based on compact closed categories. Older software projects (no longer being developed): * Lambda Clam - a proof planner written in lambda prolog. * HR - an automated theory formation system * Clam proof planner with oyster - a proof planner written in prolog * Clam version 3.2 * HOL-Clam - a link up between the HOL proof assistant and the Clam proof planner. * Anastasia - a structural program editor * Press - a prolog based system for solving symbolic, transcendental, non-differential equations
Adam Chlipala This is the web site for an in-progress textbook about practical engineering with the Coq proof assistant. The focus is on building programs with proofs of correctness, using dependent types and scripted proof automation. This is the text for a Fall 2008 class at Harvard.
This interactive tutorial will teach you how to use the sequent calculus, a simple set of rules with which you can use to show the truth of statements in first order logic. It is geared towards anyone with some background in writing software for computers, with knowledge of basic boolean logic.
F. Arzarello. the 24th Conference of the International Group for the Psychology of Mathematics Education (PME), 1, page 23--38. Hiroshima, Japan, (2000)