# Applications and libraries/Theorem provers

### From HaskellWiki

< Applications and libraries(Difference between revisions)

DonStewart (Talk | contribs) (3 more theorem proving systems) |
DonStewart (Talk | contribs) (Expander2 moved) |
||

Line 24: | Line 24: | ||

;[http://proofgeneral.inf.ed.ac.uk/Kit Proof General Kit] | ;[http://proofgeneral.inf.ed.ac.uk/Kit Proof General Kit] | ||

:The Proof General Kit designs and implements a component-based framework for interactive theorem proving. The central middleware of the toolkit is implemented in Haskell. The project is the sucessor of the highly successful Emacs-based Proof General interface. | :The Proof General Kit designs and implements a component-based framework for interactive theorem proving. The central middleware of the toolkit is implemented in Haskell. The project is the sucessor of the highly successful Emacs-based Proof General interface. | ||

+ | |||

+ | ;[http://fldit-www.cs.uni-dortmund.de/~peter/#1 Expander2] | ||

+ | :Expander2 is a flexible multi-purpose workbench for rewriting, verification, constraint solving, flow graph analysis and related procedures that build up proofs or computation sequences. Moreover, tailor-made interpreters display terms as 2D structures ranging from trees and rooted graphs to tables, fractals and other turtle-system-generated pictures. |

## Revision as of 14:30, 31 March 2006

## Theorem provers

- Agda
- Agda is a system for incrementally developing proofs and programs. Agda is also a functional language with Dependent types. This language is very similar to cayenne and agda is intended to be a (almost) full implementation of it in the future.

- Djinn
- Djinn generates Haskell code from a type declaration, using a decision procedure from intuitionistic propositional calculus.

- Paradox
- Paradox processes first-order logic problems and tries to find finite-domain models for them.

- Dumatel
- Dumatel is a prover based on many-sorted term rewriting (TRW) and equational reasoning

- Camila
- Camila is a system for software development using formal methods. Other materials on formal methods can be found also on Analysis and design page.

- Epigram
- Epigram is a prototype dependently typed functional programming language, equipped with an interactive editing and typechecking environment. High-level Epigram source code elaborates into a dependent type theory based on Zhaohui Luo's UTT. Programming with evidence lies at the heart of Epigram's design.

- Yarrow
- Yarrow is a proof-assistant for Pure Type Systems (PTSs) with several extensions. In Yarrow you can experiment with various pure type systems, representing different logics and programming languages.

- Proof General Kit
- The Proof General Kit designs and implements a component-based framework for interactive theorem proving. The central middleware of the toolkit is implemented in Haskell. The project is the sucessor of the highly successful Emacs-based Proof General interface.

- Expander2
- Expander2 is a flexible multi-purpose workbench for rewriting, verification, constraint solving, flow graph analysis and related procedures that build up proofs or computation sequences. Moreover, tailor-made interpreters display terms as 2D structures ranging from trees and rooted graphs to tables, fractals and other turtle-system-generated pictures.