<!--#include virtual="menubar.shtml" -->
<!--#include virtual="news.shtml" -->
<div class="main">
-
+
<div class="topimage">
<img src="images/matita-text-big.png" alt="Matita" />
<a href="matita_it.shtml">
<!-- <a href="http://www.mkm-ig.org">Mathematical Knowledge Management</a> tools and techniques. </p> -->
+ <p class="spaced">
+ <span class="screenshots">
+ <a class="quiet" href="images/screenshot-matita.png">
+ <img src="images/MINI_screenshot-matita.png" alt="Matita screenshot: authoring interface" />
+ </a>
+ </span>
+
+ <p>An interactive prover is a software tool aiding the development of
+ formal proofs by man-machine collaboration. It provides a formal language
+ where mathematical definitions, executable algorithms and theorems cohexist,
+ and an interactive environment keeping the current status of the proof,
+ and updating it according to commands (usually called tactics) issued by the user.
+ </p>
+
+ <p>
+ Matita is based on a <a href="http://en.wikipedia.org/wiki/Dependent_type">Dependent Type System</a> known as the Calculus of Inductive Constructions.</p>
+
+ <p>It embeds key computational constructs of functional programming languages:
+ functions can be defined by (well-founded) recursion, and are live entities that can be
+ tested and executed.</p>
+
+ <p>At the same time, proofs are an integrated part of the formalism, allowing, via the
+ <a href="http://en.wikipedia.org/wiki/Curry-Howard_correspondence">Curry Howard
+ isomorphism</a>, a smooth interplay between
+ specification and reasoning: proofs are objects of the language, and
+ can be treated as normal data, naturally leading to a programming style
+ akin to <a href="http://en.wikipedia.org/wiki/Proof-carrying_code">proof-carrying-code</a>,
+ where chunks of software
+ come equipped with proofs of (some of) their properties.</p>
+
+ <p>Matita is currently adopted in the European Union "Certified Complexity" Project
+ <a href="http://cerco.cs.unibo.it/">CerCo<a> for the formal verification of a
+ complexity-preserving compiler from a large subset of C to a microcontroller
+ assembly of the kind traditionally used in embedded systems.
+ </p>
+
</div>
</body>