Admin/page/main-content/overview.content
author berghofe
Fri, 10 Oct 2003 19:34:28 +0200
changeset 14230 def0606302a1
child 14292 5b57cc196b12
permissions -rw-r--r--
Added overview page.
berghofe@14230
     1
%title%
berghofe@14230
     2
Isabelle overview
berghofe@14230
     3
berghofe@14230
     4
%body%
berghofe@14230
     5
berghofe@14230
     6
<p>
berghofe@14230
     7
<a href="http://isabelle.in.tum.de/">Isabelle</a> is a generic proof
berghofe@14230
     8
assistant. It allows mathematical formulas to be expressed in a formal
berghofe@14230
     9
language and provides tools for proving those formulas in a logical
berghofe@14230
    10
calculus. The main application is the formalization of mathematical proofs
berghofe@14230
    11
and in particular <em>formal verification</em>, which includes proving the
berghofe@14230
    12
correctness of computer hardware or software and proving properties of
berghofe@14230
    13
computer languages and protocols.
berghofe@14230
    14
</p>
berghofe@14230
    15
berghofe@14230
    16
<p>Compared with similar tools, Isabelle's distinguishing feature is its flexibility. Most proof assistants are built around a single formal calculus, typically higher-order logic. Isabelle has the capacity to accept a variety of formal calculi. The distributed version supports higher-order logic but also axiomatic set theory and several <a href="logics.html">other formalisms</a>. Isabelle provides excellent notational support: new notations can be introduced, using normal mathematical symbols. Proofs can be written in a structured notation based upon traditional proof style, or more straightforwardly as sequences of commands. Definitions and proofs may include TeX source, from which Isabelle can automatically generate typeset documents.</p>
berghofe@14230
    17
berghofe@14230
    18
<p>The main limitation of all such systems is that proving theorems requires
berghofe@14230
    19
much effort from an expert user. Isabelle incorporates some tools to improve
berghofe@14230
    20
the user's productivity by automating some parts of the proof process. In
berghofe@14230
    21
particular, Isabelle's <em>classical reasoner</em> can perform long chains of
berghofe@14230
    22
reasoning steps to prove formulas. The <em>simplifier</em> can
berghofe@14230
    23
reason with and about equations.  Linear <em>arithmetic</em> facts
berghofe@14230
    24
are proved automatically. Isabelle is closely
berghofe@14230
    25
integrated with the
berghofe@14230
    26
<a href="http://www.cl.cam.ac.uk/users/lcp/papers/protocols.html">Proof
berghofe@14230
    27
General</a> user interface, which eases the task of writing and maintaining
berghofe@14230
    28
proof scripts.. </p>
berghofe@14230
    29
berghofe@14230
    30
<p>Isabelle comes with large theories of formally verified mathematics, including elementary number theory (for example, Gauss's law of quadratic reciprocity), analysis (basic properties of limits, derivatives and integrals), algebra (up to Sylow's theorem) and set theory (the relative consistency of the Axiom of  Choice). Also provided are numerous examples arising from research into formal verification. Isabelle is <a href="dist/">distributed</a> free of charge to academic users.</p>
berghofe@14230
    31
berghofe@14230
    32
<p>Ample <a href="dist/docs.html">documentation</a> is available, including a <a href="http://www4.in.tum.de/~nipkow/LNCS2283/">Tutorial</a> published by Springer-Verlag. Several <a href="http://www.cl.cam.ac.uk/users/lcp/papers/isabelle.html">papers</a> on the design of Isabelle are  available. There is also a list of past and present <a href="http://www.cl.cam.ac.uk/Research/HVG/Isabelle/projects.html">projects</a> undertaken using Isabelle. </p>
berghofe@14230
    33
berghofe@14230
    34
<p>Isabelle is a joint project between <a href="http://www.cl.cam.ac.uk/users/lcp/">Lawrence C. Paulson</a> (University of Cambridge, UK) and  <a href="http://www.in.tum.de/~nipkow/">Tobias Nipkow</a> (Technical University of Munich, Germany).</p>