doc-src/TutorialI/tutorial.tex
 author nipkow Wed Dec 13 09:39:53 2000 +0100 (2000-12-13) changeset 10654 458068404143 parent 10597 29dd6ac8c223 child 10676 06f390008ceb permissions -rw-r--r--
*** empty log message ***
 paulson@10399  1 \documentclass{article}  paulson@10298  2 \newif\ifremarks  nipkow@10522  3 \remarkstrue %TRUE causes remarks to be displayed (as marginal notes)  paulson@10399  4 \usepackage{cl2emono-modified,isabelle,isabellesym}  paulson@10597  5 \usepackage{../proof,amsmath,amsfonts}  wenzelm@9695  6 \usepackage{latexsym,verbatim,graphicx,../iman,../extra,../ttbox,comment}  wenzelm@8847  7 \usepackage{../pdfsetup} %last package!  nipkow@8743  8 nipkow@8743  9 %\newtheorem{theorem}{Theorem}[section]  nipkow@8743  10 \newtheorem{Exercise}{Exercise}[section]  nipkow@8743  11 \newenvironment{exercise}{\begin{Exercise}\rm}{\end{Exercise}}  nipkow@8743  12 \newcommand{\ttlbr}{\texttt{[|}}  nipkow@8743  13 \newcommand{\ttrbr}{\texttt{|]}}  nipkow@8743  14 \newcommand{\ttor}{\texttt{|}}  nipkow@8743  15 \newcommand{\ttall}{\texttt{!}}  nipkow@8743  16 \newcommand{\ttuniquex}{\texttt{?!}}  nipkow@8743  17 \newcommand{\ttEXU}{\texttt{EX!}}  nipkow@8743  18 \newcommand{\ttAnd}{\texttt{!!}}  nipkow@8743  19 nipkow@8743  20 \newcommand{\isasymimp}{\isasymlongrightarrow}  nipkow@8743  21 \newcommand{\isasymImp}{\isasymLongrightarrow}  nipkow@8743  22 \newcommand{\isasymFun}{\isasymRightarrow}  wenzelm@10272  23 \newcommand{\isasymuniqex}{\isamath{\exists!\,}}  nipkow@8743  24 nipkow@8743  25 \renewenvironment{isamarkuptxt}{\begin{isamarkuptext}}{\end{isamarkuptext}}  nipkow@8743  26 paulson@10298  27 %% lcp's macros  paulson@10399  28 \newcommand{\REMARK}[1]{\ifremarks\marginpar{\raggedright\footnotesize#1}\fi}  paulson@10298  29 \newcommand{\rulename}[1]{\hfill$(\text{#1})$} %names of Isabelle rules  paulson@10298  30 \let\bigisa=\isa  paulson@10298  31 %% was previously  paulson@10298  32 %% \newcommand{\bigisa}[1]{\texttt{\textsl{#1}}}  paulson@10298  33 %% because \isa is too small for variables, but does it really matter?  paulson@10298  34 paulson@10298  35 nipkow@8743  36 %%% to index derived rls: ^$$[a-zA-Z0-9][a-zA-Z0-9_]*$$ \\tdx{\1}  nipkow@8743  37 %%% to index rulenames: ^ *($$[a-zA-Z0-9][a-zA-Z0-9_]*$$, \\tdx{\1}  nipkow@8743  38 %%% to index constants: \\tt $$[a-zA-Z0-9][a-zA-Z0-9_]*$$ \\cdx{\1}  nipkow@8743  39 %%% to deverbify: \\verb|$$[^|]*$$| \\ttindex{\1}  nipkow@8743  40 %% run ../sedindex logics to prepare index file  nipkow@8743  41 nipkow@8743  42 \makeindex  nipkow@8743  43 \newcommand{\indexboldpos}[2]{#1\indexbold{#2@#1}}  nipkow@8743  44 \newcommand{\ttindexboldpos}[2]{\texttt{#1}\indexbold{#2@\texttt{#1}}}  nipkow@8743  45 \newcommand{\isaindexbold}[1]{\isa{#1}\index{*#1|bold}}  nipkow@8743  46 \newcommand{\isaindex}[1]{\isa{#1}\index{*#1}}  nipkow@8743  47 nipkow@10654  48 \index{termination|see{total function}}  nipkow@10543  49 \index{product type|see{pair}}  nipkow@10543  50 \index{tuple|see{pair}}  nipkow@10654  51 \index{*<*lex*>|see{lexicographic product}}  nipkow@10543  52 nipkow@8743  53 \underscoreoff  nipkow@8743  54 nipkow@8743  55 \setcounter{secnumdepth}{2} \setcounter{tocdepth}{2} %% {secnumdepth}{2}???  nipkow@8743  56 nipkow@8743  57 \pagestyle{headings}  nipkow@8743  58 %\sloppy  nipkow@8743  59 %\binperiod %%%treat . like a binary operator  nipkow@8743  60 nipkow@8743  61 \begin{document}  nipkow@8743  62 \title{\includegraphics[scale=.8]{isabelle_hol}  nipkow@8743  63  \\ \vspace{0.5cm} The Tutorial  nipkow@8743  64  \\ --- DRAFT ---}  nipkow@10340  65 \author{Tobias Nipkow \& Lawrence Paulson\\[1ex]  nipkow@10178  66 Technische Universit{\"a}t M{\"u}nchen \\  nipkow@10340  67 Institut f{\"u}r Informatik \\[1ex]  nipkow@10340  68 University of Cambridge\\  nipkow@10340  69 Computer Laboratory}  nipkow@8743  70 \maketitle  nipkow@8743  71 nipkow@8743  72 \pagenumbering{roman}  nipkow@8743  73 \tableofcontents  nipkow@8743  74 nipkow@8743  75 \subsubsection*{Acknowledgements}  nipkow@8743  76 This tutorial owes a lot to the constant discussions with and the valuable  nipkow@10340  77 feedback from the Isabelle group at Munich: Olaf M{\"u}ller,  nipkow@8743  78 Wolfgang Naraschewski, David von Oheimb, Leonor Prensa Nieto, Cornelia Pusch  nipkow@8743  79 and Markus Wenzel. Stefan Berghofer and Stephan Merz were also kind enough to  nipkow@8743  80 read and comment on a draft version.  nipkow@8743  81 \clearfirst  nipkow@8743  82 nipkow@8743  83 \input{basics}  nipkow@8743  84 \input{fp}  paulson@10298  85 \input{Rules/rules}  paulson@10298  86 \input{Sets/sets}\input{CTL/ctl} %these constitute ONE chapter  nipkow@10212  87 \input{Inductive/inductive}  nipkow@9958  88 \input{Advanced/advanced}  nipkow@10305  89 \input{Types/types}  nipkow@10178  90 \chapter{Theory Presentation}  nipkow@10178  91 \chapter{Case Study: The Needhamd-Schroeder Protocol}  nipkow@10178  92 \chapter{Structured Proofs}  nipkow@10178  93 \chapter{Case Study: UNIX File-System Security}  nipkow@9958  94 %\chapter{The Tricks of the Trade}  nipkow@8743  95 \input{appendix}  nipkow@8743  96 nipkow@8743  97 \bibliographystyle{plain}  nipkow@8743  98 \bibliography{../manual}  wenzelm@8828  99 \printindex  nipkow@8743  100 \end{document}