| 15226 |      1 | \documentclass[11pt]{article}
 | 
|  |      2 | 
 | 
|  |      3 | \title{Isabelle: An Overview}
 | 
|  |      4 | \author{Lawrence C. Paulson}
 | 
|  |      5 | 
 | 
|  |      6 | \date{October 2003}
 | 
|  |      7 | 
 | 
|  |      8 | \usepackage{basic,times,mathtime}
 | 
|  |      9 | 
 | 
|  |     10 | \makeatletter
 | 
|  |     11 | \@ifundefined{pdfoutput}{\message{No PDF output}%
 | 
|  |     12 |   \usepackage{../url}%
 | 
|  |     13 |   \newcommand{\hfootref}[2]{#2\footnote{\url{#1}}}}%
 | 
|  |     14 | {\message{Generating PDF output}%
 | 
|  |     15 |   \usepackage{color}\definecolor{darkblue}{rgb}{0,0,0.5}%
 | 
|  |     16 |   \usepackage[pdftex,colorlinks=true,linkcolor=darkblue,citecolor=darkblue,filecolor=darkblue,pagecolor=darkblue,urlcolor=darkblue]{hyperref}  \newcommand{\hfootref}[2]{\href{#1}{#2}\footnote{\url{#1}}}}
 | 
|  |     17 | 
 | 
|  |     18 | \makeatother
 | 
|  |     19 | 
 | 
|  |     20 | \begin{document}
 | 
|  |     21 | \maketitle
 | 
|  |     22 | 
 | 
|  |     23 | 
Isabelle~\cite{isa-tutorial} is a generic proof assistant.  It allows mathematical formulas to be expressed in a 
 | 
|  |     24 | formal language and provides tools for proving those formulas in a
 | 
|  |     25 | logical calculus. The main potential application in industry is
 | 
|  |     26 | \emph{formal verification}, which includes proving the 
 | 
|  |     27 | correctness of computer hardware or software and proving 
 | 
|  |     28 | properties of computer languages and protocols. Among its research
 | 
|  |     29 | applications are the formalization of mathematical proofs.
 | 
|  |     30 | 
 | 
|  |     31 | Compared with similar tools, Isabelle's distinguishing feature is its flexibility. Most proof assistants
 | 
|  |     32 | are built around a single formal calculus, typically higher-order logic.
 | 
|  |     33 | Isabelle has the capacity to
 | 
|  |     34 | accept a variety of formal calculi. The distributed version
 | 
|  |     35 | supports higher-order logic but also axiomatic set theory and several other
 | 
|  |     36 | formalisms. Isabelle provides excellent notational support: 
 | 
|  |     37 | new notations can be introduced, using normal mathematical symbols.
 | 
|  |     38 | 
 | 
|  |     39 | The main limitation of all such systems is that proving theorems
 | 
|  |     40 | requires much effort
 | 
|  |     41 | from an expert user. Isabelle incorporates some tools to improve
 | 
|  |     42 | the user's productivity by automating some parts of the proof process.
 | 
|  |     43 | In particular, Isabelle's \emph{classical reasoner} can perform long
 | 
|  |     44 | chains of reasoning steps to prove formulas. The \emph{simplifier} 
 | 
|  |     45 | can prove certain arithmetic facts and can reason about equations.
 | 
|  |     46 | 
 | 
|  |     47 | Isabelle is closely integrated with the 
 | 
|  |     48 | \hfootref{http://www.cl.cam.ac.uk/users/lcp/papers/protocols.html}{Proof General} user interface, which greatly eases the task of interacting with 
 | 
|  |     49 | Isabelle. Proof General is open-source software under the GNU General Public
 | 
|  |     50 | License. Using Isabelle without Proof General would be difficult.
 | 
|  |     51 | 
 | 
|  |     52 | Isabelle is distributed with large theories of formalized mathematics, 
 | 
|  |     53 | including elementary number theory (for example, Gauss's law of quadratic reciprocity), analysis (basic properties of limits, derivatives and integrals) and algebra (up to Sylow's theorem). Also provided are numerous 
 | 
|  |     54 | examples arising from research into formal verification. The total size of
 | 
|  |     55 | the distribution (program sources and documentation) is about 5.4MB.
 | 
|  |     56 | 
 | 
|  |     57 | \paragraph*{Sponsorship.}
 | 
|  |     58 | Isabelle is a joint project between Cambridge and the Technical University
 | 
|  |     59 | of Munich, Germany. Prof.\ Tobias Nipkow leads the German team; other significant contributors at Munich include Dr. Markus Wenzel, Dr. Gerwin Klein and Mr.\ Stefan Berghofer.
 | 
|  |     60 | 
The development of Isabelle at Cambridge was funded by the following grants:
 | 
|  |     61 | \begin{itemize}
\item \emph{Supporting Logics} (6/1986--11/1989). SERC grant GR/E0355.7
\item \emph{Logical Frameworks: Design, Implementation and Experiment} (6/1989--3/1992). ESPRIT Basic Research Action 3245
\item \emph{Types for Proofs and Programs}: ESPRIT Basic Research Action 6453 (9/1992--8/1995) 
 | 
|  |     62 | \item \emph{Combining HOL with Isabelle} (9/1992--8/1995). EPSRC grant GR/H40570
\item \emph{Mechanising Temporal Reasoning} (11/1995--4/1999). EPSRC grant reference GR/K57381
\item \emph{Authentication Logics: New Theory and Implementations} (1/1996--6/1999). EPSRC grant GR/K77051
\item \emph{Compositional Proofs of Concurrent Programs} (10/1999--6/2003). EPSRC grant GR/M75440 (RG28587)
\item \emph{Verifying Electronic Commerce Protocols} (10/2000--9/2003). EPSRC grant GR/R 01156/01 (NRAG/002)
%\item \emph{Automation for Interactive Proof} (2/2004--1/2007).
 | 
|  |     63 | %EPSRC grant GR/S57198/01 (NRAG/071)
 | 
|  |     64 | \end{itemize}
 | 
|  |     65 | Lawrence Paulson was the Principal Investigator on all of these grants.
 | 
|  |     66 | The Munich side had support from German sponsors.
 | 
|  |     67 | 
\bibliographystyle{plain} \footnotesize\raggedright\frenchspacing
\bibliography{string,atp,funprog,general,isabelle,theory,crossref}
\end{document}
 |