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