| author | wenzelm | 
| Sat, 12 Jan 2013 14:47:17 +0100 | |
| changeset 50842 | 777c6026ca93 | 
| parent 48985 | 5386df44a037 | 
| child 52791 | 9e4bb60f8007 | 
| permissions | -rw-r--r-- | 
| 21212 | 1  | 
|
| 25092 | 2  | 
\documentclass[a4paper,fleqn]{article}
 | 
| 23003 | 3  | 
|
| 21212 | 4  | 
\usepackage{latexsym,graphicx}
 | 
5  | 
\usepackage[refpage]{nomencl}
 | 
|
| 
48948
 
fa49f8890ef3
more standard document preparation within session context;
 
wenzelm 
parents: 
42511 
diff
changeset
 | 
6  | 
\usepackage{iman,extra,isar}
 | 
| 
 
fa49f8890ef3
more standard document preparation within session context;
 
wenzelm 
parents: 
42511 
diff
changeset
 | 
7  | 
\usepackage{isabelle,isabellesym}
 | 
| 21212 | 8  | 
\usepackage{style}
 | 
| 23003 | 9  | 
\usepackage{mathpartir}
 | 
10  | 
\usepackage{amsthm}
 | 
|
| 
48948
 
fa49f8890ef3
more standard document preparation within session context;
 
wenzelm 
parents: 
42511 
diff
changeset
 | 
11  | 
\usepackage{pdfsetup}
 | 
| 21212 | 12  | 
|
13  | 
\newcommand{\cmd}[1]{\isacommand{#1}}
 | 
|
14  | 
||
15  | 
\newcommand{\isasymINFIX}{\cmd{infix}}
 | 
|
16  | 
\newcommand{\isasymLOCALE}{\cmd{locale}}
 | 
|
17  | 
\newcommand{\isasymINCLUDES}{\cmd{includes}}
 | 
|
18  | 
\newcommand{\isasymDATATYPE}{\cmd{datatype}}
 | 
|
19  | 
\newcommand{\isasymDEFINES}{\cmd{defines}}
 | 
|
20  | 
\newcommand{\isasymNOTES}{\cmd{notes}}
 | 
|
21  | 
\newcommand{\isasymCLASS}{\cmd{class}}
 | 
|
22  | 
\newcommand{\isasymINSTANCE}{\cmd{instance}}
 | 
|
23  | 
\newcommand{\isasymLEMMA}{\cmd{lemma}}
 | 
|
24  | 
\newcommand{\isasymPROOF}{\cmd{proof}}
 | 
|
25  | 
\newcommand{\isasymQED}{\cmd{qed}}
 | 
|
26  | 
\newcommand{\isasymFIX}{\cmd{fix}}
 | 
|
27  | 
\newcommand{\isasymASSUME}{\cmd{assume}}
 | 
|
28  | 
\newcommand{\isasymSHOW}{\cmd{show}}
 | 
|
29  | 
\newcommand{\isasymNOTE}{\cmd{note}}
 | 
|
30  | 
\newcommand{\isasymCODEGEN}{\cmd{code\_gen}}
 | 
|
31  | 
\newcommand{\isasymPRINTCODETHMS}{\cmd{print\_codethms}}
 | 
|
32  | 
\newcommand{\isasymFUN}{\cmd{fun}}
 | 
|
33  | 
\newcommand{\isasymFUNCTION}{\cmd{function}}
 | 
|
34  | 
\newcommand{\isasymPRIMREC}{\cmd{primrec}}
 | 
|
35  | 
\newcommand{\isasymRECDEF}{\cmd{recdef}}
 | 
|
36  | 
||
37  | 
\newcommand{\qt}[1]{``#1''}
 | 
|
38  | 
\newcommand{\qtt}[1]{"{}{#1}"{}}
 | 
|
39  | 
\newcommand{\qn}[1]{\emph{#1}}
 | 
|
40  | 
\newcommand{\strong}[1]{{\bfseries #1}}
 | 
|
41  | 
\newcommand{\fixme}[1][!]{\strong{FIXME: #1}}
 | 
|
42  | 
||
| 23003 | 43  | 
\newtheorem{exercise}{Exercise}{\bf}{\itshape}
 | 
44  | 
%\newtheorem*{thmstar}{Theorem}{\bf}{\itshape}
 | 
|
| 21212 | 45  | 
|
46  | 
\hyphenation{Isabelle}
 | 
|
47  | 
\hyphenation{Isar}
 | 
|
48  | 
||
49  | 
\isadroptag{theory}
 | 
|
| 23003 | 50  | 
\title{Defining Recursive Functions in Isabelle/HOL}
 | 
51  | 
\author{Alexander Krauss}
 | 
|
| 21212 | 52  | 
|
53  | 
\isabellestyle{tt}
 | 
|
| 23188 | 54  | 
\renewcommand{\isastyletxt}{\isastyletext}% use same formatting for txt and text
 | 
| 21212 | 55  | 
|
56  | 
\begin{document}
 | 
|
57  | 
||
| 23805 | 58  | 
\date{\ \\}
 | 
| 21212 | 59  | 
\maketitle  | 
60  | 
||
61  | 
\begin{abstract}
 | 
|
62  | 
  This tutorial describes the use of the new \emph{function} package,
 | 
|
| 23003 | 63  | 
which provides general recursive function definitions for Isabelle/HOL.  | 
| 23188 | 64  | 
We start with very simple examples and then gradually move on to more  | 
65  | 
advanced topics such as manual termination proofs, nested recursion,  | 
|
| 23805 | 66  | 
partiality, tail recursion and congruence rules.  | 
| 21212 | 67  | 
\end{abstract}
 | 
68  | 
||
| 23003 | 69  | 
%\thispagestyle{empty}\clearpage
 | 
| 21212 | 70  | 
|
| 23003 | 71  | 
%\pagenumbering{roman}
 | 
72  | 
%\clearfirst  | 
|
| 21212 | 73  | 
|
| 23003 | 74  | 
\input{intro.tex}
 | 
| 
48948
 
fa49f8890ef3
more standard document preparation within session context;
 
wenzelm 
parents: 
42511 
diff
changeset
 | 
75  | 
\input{Functions.tex}
 | 
| 23805 | 76  | 
%\input{conclusion.tex}
 | 
| 21212 | 77  | 
|
78  | 
\begingroup  | 
|
79  | 
%\tocentry{\bibname}
 | 
|
80  | 
\bibliographystyle{plain} \small\raggedright\frenchspacing
 | 
|
| 
48948
 
fa49f8890ef3
more standard document preparation within session context;
 
wenzelm 
parents: 
42511 
diff
changeset
 | 
81  | 
\bibliography{manual}
 | 
| 21212 | 82  | 
\endgroup  | 
83  | 
||
84  | 
\end{document}
 | 
|
85  | 
||
86  | 
||
87  | 
%%% Local Variables:  | 
|
88  | 
%%% mode: latex  | 
|
89  | 
%%% TeX-master: t  | 
|
90  | 
%%% End:  |