ProgTutorial/document/root.tex
author Christian Urban <urbanc@in.tum.de>
Tue, 19 Jun 2012 15:02:22 +0100
changeset 525 92a3600e50e4
parent 517 d8c376662bb4
child 535 5734ab5dd86d
permissions -rw-r--r--
added a new recipe for introspecting theorems (suggested by Lukas and Rafal)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
     1
\documentclass[11pt,a4paper]{book}
62
c3fe4749ef01 added Sacha as contributor
Christian Urban <urbanc@in.tum.de>
parents: 51
diff changeset
     2
\usepackage[latin1]{inputenc}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
\usepackage{amsmath,amsthm}
2
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
     4
\usepackage{isabelle}
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
     5
\usepackage{isabellesym}
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
     6
\usepackage{charter}
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
     7
\usepackage[pdftex]{graphicx}
21
2356e5c70d98 added a proof and tuned the rest
Christian Urban <urbanc@in.tum.de>
parents: 17
diff changeset
     8
\usepackage{proof}
31
53460ac408b5 Added alltt, rail, and url.
berghofe
parents: 21
diff changeset
     9
\usepackage{url}
38
e21b2f888fa2 added a preliminary section about parsing
Christian Urban <urbanc@in.tum.de>
parents: 37
diff changeset
    10
\usepackage[a4paper,hscale=0.67,vscale=0.76]{geometry}
51
c346c156a7cd completes the recipie on antiquotations
Christian Urban <urbanc@in.tum.de>
parents: 47
diff changeset
    11
\usepackage{lineno}
69
19106a9975c1 highligted the background of ML-code
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
    12
\usepackage{xcolor}
77
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    13
\usepackage{framed}
173
d820cb5873ea used latex package boxedminipage
Christian Urban <urbanc@in.tum.de>
parents: 121
diff changeset
    14
\usepackage{boxedminipage}
89
fee4942c4770 polishing
Christian Urban <urbanc@in.tum.de>
parents: 85
diff changeset
    15
\usepackage{mathpartir}
218
7ff7325e3b4e started to adapt the rest of chapter 5 to the simplified version without parameters (they will be described in the extension section)
Christian Urban <urbanc@in.tum.de>
parents: 211
diff changeset
    16
\usepackage{flafter}
342
930b1308fd96 fixed glitch with tocibind
Christian Urban <urbanc@in.tum.de>
parents: 339
diff changeset
    17
\usepackage{index}
257
ce0f60d0351e corrected index references and minor polishing
Christian Urban <urbanc@in.tum.de>
parents: 256
diff changeset
    18
\usepackage{tocbibind}
358
9cf3bc448210 some polishing
Christian Urban <urbanc@in.tum.de>
parents: 347
diff changeset
    19
\usepackage{tikz}
9cf3bc448210 some polishing
Christian Urban <urbanc@in.tum.de>
parents: 347
diff changeset
    20
\usetikzlibrary{shadows}
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    21
\usepackage{pdfsetup}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    22
339
c588e8422737 used a better implementation of \index in Latex; added more to the theorem section
Christian Urban <urbanc@in.tum.de>
parents: 329
diff changeset
    23
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    24
\urlstyle{rm}
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    25
\renewcommand{\isastyletxt}{\isastyletext}% use same formatting for txt and text
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    26
\renewcommand{\isastyleminor}{\tt\slshape}%
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    27
\renewcommand{\isastyle}{\small\tt\slshape}%
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    28
\isadroptag{theory}
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    29
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    30
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
    31
% indexing
373
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
    32
\newindex{default}{idx}{ind}{Index}
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
    33
\newindex{str}{str}{stu}{Structure Index}
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
    34
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
    35
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    36
% For cross references to the other manuals:
7
d7cebb2c5105 added an explicit file containing references in the Implementation manual (should be replaced by antiquotations)
Christian Urban <urbanc@in.tum.de>
parents: 5
diff changeset
    37
\usepackage{xr}
d7cebb2c5105 added an explicit file containing references in the Implementation manual (should be replaced by antiquotations)
Christian Urban <urbanc@in.tum.de>
parents: 5
diff changeset
    38
\externaldocument[I-]{implementation}
d7cebb2c5105 added an explicit file containing references in the Implementation manual (should be replaced by antiquotations)
Christian Urban <urbanc@in.tum.de>
parents: 5
diff changeset
    39
\newcommand{\impref}[1]{\ref{I-#1}}
13
2b07da8b310d polished and added a subdirectory for the recipes
Christian Urban <urbanc@in.tum.de>
parents: 7
diff changeset
    40
\newcommand{\ichcite}[1]{[Impl.\,Man., Ch.~\impref{#1}]}
2b07da8b310d polished and added a subdirectory for the recipes
Christian Urban <urbanc@in.tum.de>
parents: 7
diff changeset
    41
\newcommand{\isccite}[1]{[Impl.\,Man., Sec.~\impref{#1}]}
44
dee4b3e66dfe added a readme chapter for prospective authors; added commands for referring to the Isar Reference Manual
Christian Urban <urbanc@in.tum.de>
parents: 43
diff changeset
    42
\externaldocument[R-]{isar-ref}
dee4b3e66dfe added a readme chapter for prospective authors; added commands for referring to the Isar Reference Manual
Christian Urban <urbanc@in.tum.de>
parents: 43
diff changeset
    43
\newcommand{\isarref}[1]{\ref{R-#1}}
dee4b3e66dfe added a readme chapter for prospective authors; added commands for referring to the Isar Reference Manual
Christian Urban <urbanc@in.tum.de>
parents: 43
diff changeset
    44
\newcommand{\rchcite}[1]{[Isar Ref.\,Man., Ch.~\isarref{#1}]}
dee4b3e66dfe added a readme chapter for prospective authors; added commands for referring to the Isar Reference Manual
Christian Urban <urbanc@in.tum.de>
parents: 43
diff changeset
    45
\newcommand{\rsccite}[1]{[Isar Ref.\,Man., Sec.~\isarref{#1}]}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    46
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    47
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5
e91f54791e14 minor modifiations to the Intro and FirstSteps chapters
Christian Urban <urbanc@in.tum.de>
parents: 2
diff changeset
    48
% sane default for proof documents
77
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    49
\parindent 0pt
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    50
\parskip 0.6ex
173
d820cb5873ea used latex package boxedminipage
Christian Urban <urbanc@in.tum.de>
parents: 121
diff changeset
    51
\abovecaptionskip 1mm
77
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    52
\belowcaptionskip 10mm
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    53
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    54
\hyphenation{Isabelle}
121
26e5b41faa74 polishing
Christian Urban <urbanc@in.tum.de>
parents: 119
diff changeset
    55
\renewcommand{\isasymiota}{}
211
d5accbc67e1b more work on simple inductive and marked all sections that are still seriously incomplete with TBD
Christian Urban <urbanc@in.tum.de>
parents: 210
diff changeset
    56
\renewcommand{\isamarkupsubsection}[1]{\subsection*{#1}}
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    57
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    58
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    59
% to work around a problem with \isanewline
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    60
\renewcommand{\isanewline}{{\parindent0pt\parskip0pt\mbox{}\par\mbox{}}}
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    61
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    63
% for exercises, comments and readmores
329
5dffcab68680 more work
Christian Urban <urbanc@in.tum.de>
parents: 316
diff changeset
    64
\newtheoremstyle{exercisestyle}{\topsep}{\topsep}{\small\it}{}{\small\bfseries}{:}{1ex}{}
5dffcab68680 more work
Christian Urban <urbanc@in.tum.de>
parents: 316
diff changeset
    65
\theoremstyle{exercisestyle}
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    66
\newtheorem{exercise}{Exercise}[section]
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    67
\newcommand{\solution}[1]{{\bf Solution for Exercise~\ref{#1}.}}
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    68
5
e91f54791e14 minor modifiations to the Intro and FirstSteps chapters
Christian Urban <urbanc@in.tum.de>
parents: 2
diff changeset
    69
\newcommand{\readmoremarginpar}[1]%
e91f54791e14 minor modifiations to the Intro and FirstSteps chapters
Christian Urban <urbanc@in.tum.de>
parents: 2
diff changeset
    70
{\marginpar[\raggedleft\small{#1}]{\raggedright\small{#1}}}
e91f54791e14 minor modifiations to the Intro and FirstSteps chapters
Christian Urban <urbanc@in.tum.de>
parents: 2
diff changeset
    71
97
a99aa67455f3 changed the readmore environment
Christian Urban <urbanc@in.tum.de>
parents: 89
diff changeset
    72
\newenvironment{leftrightbar}{%
a99aa67455f3 changed the readmore environment
Christian Urban <urbanc@in.tum.de>
parents: 89
diff changeset
    73
\def\FrameCommand##1{\vrule width 2pt \hspace{8pt}##1\hspace{8pt}\vrule width 2pt}%
a99aa67455f3 changed the readmore environment
Christian Urban <urbanc@in.tum.de>
parents: 89
diff changeset
    74
\MakeFramed {\advance\hsize-\width \FrameRestore}}%
a99aa67455f3 changed the readmore environment
Christian Urban <urbanc@in.tum.de>
parents: 89
diff changeset
    75
{\endMakeFramed}
a99aa67455f3 changed the readmore environment
Christian Urban <urbanc@in.tum.de>
parents: 89
diff changeset
    76
5
e91f54791e14 minor modifiations to the Intro and FirstSteps chapters
Christian Urban <urbanc@in.tum.de>
parents: 2
diff changeset
    77
\newenvironment{readmore}%
101
Christian Urban <urbanc@in.tum.de>
parents: 97
diff changeset
    78
{\begin{leftrightbar}\small\it{\textbf{Read More}}\\}{\end{leftrightbar}}
347
01e71cddf6a3 slightly tuned
Christian Urban <urbanc@in.tum.de>
parents: 342
diff changeset
    79
\newenvironment{conventions}%
368
b1a458a03a8e new parts in the tactical section
Christian Urban <urbanc@in.tum.de>
parents: 358
diff changeset
    80
{\begin{leftrightbar}\small\it{\textbf{Coding Conventions / Rules of Thumb}}}{\end{leftrightbar}}
312
05cbe2430b76 added exercise
Christian Urban <urbanc@in.tum.de>
parents: 300
diff changeset
    81
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
05cbe2430b76 added exercise
Christian Urban <urbanc@in.tum.de>
parents: 300
diff changeset
    82
% some mathematical notation
05cbe2430b76 added exercise
Christian Urban <urbanc@in.tum.de>
parents: 300
diff changeset
    83
\newcommand{\dn}{\stackrel{\mbox{\scriptsize def}}{=}}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    84
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    85
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    86
% this is to draw a gray box around code
77
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    87
%(FIXME redefine pagebreak so that it includes a \smallskip)
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    88
\newenvironment{graybox}
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    89
{\def\FrameCommand{\fboxsep=1pt\colorbox{gray!20}}\MakeFramed{\smallskip\FrameRestore}}
bca83ed1d45a changed definition of graybox
Christian Urban <urbanc@in.tum.de>
parents: 74
diff changeset
    90
{\smallskip\endMakeFramed}
488
780100cd4060 more on contexts
Christian Urban <urbanc@in.tum.de>
parents: 478
diff changeset
    91
\newenvironment{grayboxwithoutsep}
780100cd4060 more on contexts
Christian Urban <urbanc@in.tum.de>
parents: 478
diff changeset
    92
{\def\FrameCommand{\fboxsep=1pt\colorbox{gray!20}}\MakeFramed{\FrameRestore}}
780100cd4060 more on contexts
Christian Urban <urbanc@in.tum.de>
parents: 478
diff changeset
    93
{\endMakeFramed}
31
53460ac408b5 Added alltt, rail, and url.
berghofe
parents: 21
diff changeset
    94
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
    95
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    96
% this hack is for getting rid of the ML {* ... *} 
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    97
% scaffolding around function definitions
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    98
\newenvironment{vanishML}{%
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
    99
\renewcommand{\isacommand}[1]{}%
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
   100
\renewcommand{\isacharverbatimopen}{}%
69
19106a9975c1 highligted the background of ML-code
Christian Urban <urbanc@in.tum.de>
parents: 66
diff changeset
   101
\renewcommand{\isacharverbatimclose}{}}{}
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
   102
517
d8c376662bb4 removed special ML-setup and replaced it by explicit markups (i.e., %grayML)
Christian Urban <urbanc@in.tum.de>
parents: 488
diff changeset
   103
\isakeeptag{grayML}
d8c376662bb4 removed special ML-setup and replaced it by explicit markups (i.e., %grayML)
Christian Urban <urbanc@in.tum.de>
parents: 488
diff changeset
   104
\renewcommand{\isataggrayML}{\begin{vanishML}\begin{graybox}}
d8c376662bb4 removed special ML-setup and replaced it by explicit markups (i.e., %grayML)
Christian Urban <urbanc@in.tum.de>
parents: 488
diff changeset
   105
\renewcommand{\endisataggrayML}{\end{graybox}\end{vanishML}}
47
4daf913fdbe1 hakked latex so that it does not display ML {* *}; general tuning
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
   106
488
780100cd4060 more on contexts
Christian Urban <urbanc@in.tum.de>
parents: 478
diff changeset
   107
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
   108
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
72
7b8c4fe235aa added an antiquotation option [gray] for gray boxes around displays
Christian Urban <urbanc@in.tum.de>
parents: 71
diff changeset
   109
% for code that has line numbers
118
5f003fdf2653 polished and added more material to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 117
diff changeset
   110
\newenvironment{linenos}{\resetlinenumber\internallinenumbers}{\par\nolinenumbers}
117
796c6ea633b3 added an option for linenumbers to the chunk-antiquotation
Christian Urban <urbanc@in.tum.de>
parents: 116
diff changeset
   111
114
13fd0a83d3c3 properly handled linenumbers in ML-text and Isar-proofs
Christian Urban <urbanc@in.tum.de>
parents: 108
diff changeset
   112
\isakeeptag{linenos}
117
796c6ea633b3 added an option for linenumbers to the chunk-antiquotation
Christian Urban <urbanc@in.tum.de>
parents: 116
diff changeset
   113
\renewcommand{\isataglinenos}{\begin{linenos}}
118
5f003fdf2653 polished and added more material to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 117
diff changeset
   114
\renewcommand{\endisataglinenos}{\end{linenos}}
114
13fd0a83d3c3 properly handled linenumbers in ML-text and Isar-proofs
Christian Urban <urbanc@in.tum.de>
parents: 108
diff changeset
   115
478
dfbd535cd1fd some tests
Christian Urban <urbanc@in.tum.de>
parents: 458
diff changeset
   116
% should be used in ML code
114
13fd0a83d3c3 properly handled linenumbers in ML-text and Isar-proofs
Christian Urban <urbanc@in.tum.de>
parents: 108
diff changeset
   117
\isakeeptag{linenosgray}
117
796c6ea633b3 added an option for linenumbers to the chunk-antiquotation
Christian Urban <urbanc@in.tum.de>
parents: 116
diff changeset
   118
\renewcommand{\isataglinenosgray}{\begin{vanishML}\begin{graybox}\begin{linenos}}
118
5f003fdf2653 polished and added more material to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 117
diff changeset
   119
\renewcommand{\endisataglinenosgray}{\end{linenos}\end{graybox}\end{vanishML}}
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
   120
478
dfbd535cd1fd some tests
Christian Urban <urbanc@in.tum.de>
parents: 458
diff changeset
   121
\isakeeptag{graylinenos}
dfbd535cd1fd some tests
Christian Urban <urbanc@in.tum.de>
parents: 458
diff changeset
   122
\renewcommand{\isataggraylinenos}{\begin{graybox}\begin{linenos}}
dfbd535cd1fd some tests
Christian Urban <urbanc@in.tum.de>
parents: 458
diff changeset
   123
\renewcommand{\endisataggraylinenos}{\end{linenos}\end{graybox}}
dfbd535cd1fd some tests
Christian Urban <urbanc@in.tum.de>
parents: 458
diff changeset
   124
177
4e2341f6599d polishing
Christian Urban <urbanc@in.tum.de>
parents: 173
diff changeset
   125
\isakeeptag{gray}
4e2341f6599d polishing
Christian Urban <urbanc@in.tum.de>
parents: 173
diff changeset
   126
\renewcommand{\isataggray}{\begin{graybox}}
4e2341f6599d polishing
Christian Urban <urbanc@in.tum.de>
parents: 173
diff changeset
   127
\renewcommand{\endisataggray}{\end{graybox}}
4e2341f6599d polishing
Christian Urban <urbanc@in.tum.de>
parents: 173
diff changeset
   128
115
039845fc96bd some update of the package introduction
Christian Urban <urbanc@in.tum.de>
parents: 114
diff changeset
   129
\isakeeptag{small}
039845fc96bd some update of the package introduction
Christian Urban <urbanc@in.tum.de>
parents: 114
diff changeset
   130
\renewcommand{\isatagsmall}{\begingroup\small}
039845fc96bd some update of the package introduction
Christian Urban <urbanc@in.tum.de>
parents: 114
diff changeset
   131
\renewcommand{\endisatagsmall}{\endgroup}
039845fc96bd some update of the package introduction
Christian Urban <urbanc@in.tum.de>
parents: 114
diff changeset
   132
244
dc95a56b1953 fixed the problem with double definition of even and odd
Christian Urban <urbanc@in.tum.de>
parents: 240
diff changeset
   133
% for code that should not be printed
dc95a56b1953 fixed the problem with double definition of even and odd
Christian Urban <urbanc@in.tum.de>
parents: 240
diff changeset
   134
\isakeeptag{no}
dc95a56b1953 fixed the problem with double definition of even and odd
Christian Urban <urbanc@in.tum.de>
parents: 240
diff changeset
   135
\renewcommand{\isatagno}{}
dc95a56b1953 fixed the problem with double definition of even and odd
Christian Urban <urbanc@in.tum.de>
parents: 240
diff changeset
   136
\renewcommand{\endisatagno}{}
dc95a56b1953 fixed the problem with double definition of even and odd
Christian Urban <urbanc@in.tum.de>
parents: 240
diff changeset
   137
72
7b8c4fe235aa added an antiquotation option [gray] for gray boxes around displays
Christian Urban <urbanc@in.tum.de>
parents: 71
diff changeset
   138
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7b8c4fe235aa added an antiquotation option [gray] for gray boxes around displays
Christian Urban <urbanc@in.tum.de>
parents: 71
diff changeset
   139
\renewenvironment{isabelle}
7b8c4fe235aa added an antiquotation option [gray] for gray boxes around displays
Christian Urban <urbanc@in.tum.de>
parents: 71
diff changeset
   140
{\begin{trivlist}\begin{isabellebody}\small\item\relax}
7b8c4fe235aa added an antiquotation option [gray] for gray boxes around displays
Christian Urban <urbanc@in.tum.de>
parents: 71
diff changeset
   141
{\end{isabellebody}\end{trivlist}}
85
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   142
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   143
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   144
% for {*  *} in antiquotations
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   145
\newcommand{\isasymverbopen}{\isacharverbatimopen}
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   146
\newcommand{\isasymverbclose}{\isacharverbatimclose}
240
d111f5988e49 replaced explode by Symbol.explode
Christian Urban <urbanc@in.tum.de>
parents: 218
diff changeset
   147
\newcommand{\isasymfoo}{\isa{{\isacharbackslash}{\isacharless}foo{\isachargreater}}}
85
b02904872d6b better handling of {* and *}
Christian Urban <urbanc@in.tum.de>
parents: 77
diff changeset
   148
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
   149
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
108
8bea3f74889d added to the tactical chapter; polished; added the tabularstar environment (which is just tabular*)
Christian Urban <urbanc@in.tum.de>
parents: 106
diff changeset
   150
% since * cannot be used in text {*...*} 
8bea3f74889d added to the tactical chapter; polished; added the tabularstar environment (which is just tabular*)
Christian Urban <urbanc@in.tum.de>
parents: 106
diff changeset
   151
\newenvironment{tabularstar}[2]
8bea3f74889d added to the tactical chapter; polished; added the tabularstar environment (which is just tabular*)
Christian Urban <urbanc@in.tum.de>
parents: 106
diff changeset
   152
{\begin{tabular*}{#1}{#2}}{\end{tabular*}}
8bea3f74889d added to the tactical chapter; polished; added the tabularstar environment (which is just tabular*)
Christian Urban <urbanc@in.tum.de>
parents: 106
diff changeset
   153
8bea3f74889d added to the tactical chapter; polished; added the tabularstar environment (which is just tabular*)
Christian Urban <urbanc@in.tum.de>
parents: 106
diff changeset
   154
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
116
c9ff326e3ce5 more changes to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 115
diff changeset
   155
% short hands
c9ff326e3ce5 more changes to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 115
diff changeset
   156
\def\simpleinductive{\isacommand{simple\isacharunderscore{}inductive}}
c9ff326e3ce5 more changes to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 115
diff changeset
   157
c9ff326e3ce5 more changes to the package chapter
Christian Urban <urbanc@in.tum.de>
parents: 115
diff changeset
   158
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   159
\begin{document}
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   160
2
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
   161
\title{\mbox{}\\[-10ex]
297
2565c87f8db7 renamed pictures
Christian Urban <urbanc@in.tum.de>
parents: 293
diff changeset
   162
       \includegraphics[scale=0.5]{tutorial-logo.jpg}\\[3ex]
427
94538ddcac9b added example from Tobias and changed the title
Christian Urban <urbanc@in.tum.de>
parents: 390
diff changeset
   163
       {\huge\bf The Isabelle Cookbook}\\
458
242e81f4d461 updated to post-2011 Isabelle
Christian Urban <urbanc@in.tum.de>
parents: 435
diff changeset
   164
       \mbox{A Gentle Tutorial for Programming on the ML-Level of Isabelle}\\ (draft)}
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
   165
119
4536782969fa added an acknowledgement section
Christian Urban <urbanc@in.tum.de>
parents: 118
diff changeset
   166
\author{by Christian Urban with contributions from:\\[2ex] 
62
c3fe4749ef01 added Sacha as contributor
Christian Urban <urbanc@in.tum.de>
parents: 51
diff changeset
   167
        \begin{tabular}{r@{\hspace{1.8mm}}l}
c3fe4749ef01 added Sacha as contributor
Christian Urban <urbanc@in.tum.de>
parents: 51
diff changeset
   168
        Stefan & Berghofer\\
248
11851b20fb78 added more to the pretty section and updated the acknowledgements
Christian Urban <urbanc@in.tum.de>
parents: 244
diff changeset
   169
        Jasmin & Blanchette\\
62
c3fe4749ef01 added Sacha as contributor
Christian Urban <urbanc@in.tum.de>
parents: 51
diff changeset
   170
        Sascha & Böhme\\
390
8ad407e77ea0 added example by Lukas Bulwahn
Christian Urban <urbanc@in.tum.de>
parents: 373
diff changeset
   171
        Lukas & Bulwahn\\
62
c3fe4749ef01 added Sacha as contributor
Christian Urban <urbanc@in.tum.de>
parents: 51
diff changeset
   172
        Jeremy & Dawson\\
525
92a3600e50e4 added a new recipe for introspecting theorems (suggested by Lukas and Rafal)
Christian Urban <urbanc@in.tum.de>
parents: 517
diff changeset
   173
        Rafal & Kolanski\\
293
0a567f923b42 slightly changed exercises about rev_sum
Christian Urban <urbanc@in.tum.de>
parents: 257
diff changeset
   174
        Alexander & Krauss\\
427
94538ddcac9b added example from Tobias and changed the title
Christian Urban <urbanc@in.tum.de>
parents: 390
diff changeset
   175
        Tobias & Nipkow\\
435
524b72520c43 added Andreas
Christian Urban <urbanc@in.tum.de>
parents: 427
diff changeset
   176
        Andreas & Schropp\\
293
0a567f923b42 slightly changed exercises about rev_sum
Christian Urban <urbanc@in.tum.de>
parents: 257
diff changeset
   177
        Christian & Sternagel\\ 
2
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
   178
        \end{tabular}}
71
14c3dd5ee2ad removed mytable from root-file
Christian Urban <urbanc@in.tum.de>
parents: 69
diff changeset
   179
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   180
\maketitle
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
   181
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
   182
% table of contents
257
ce0f60d0351e corrected index references and minor polishing
Christian Urban <urbanc@in.tum.de>
parents: 256
diff changeset
   183
\frontmatter
210
db8e302f44c8 more work on the simple inductive section
Christian Urban <urbanc@in.tum.de>
parents: 189
diff changeset
   184
\setcounter{tocdepth}{1}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   185
\tableofcontents
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   186
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   187
% generated text of all theories
257
ce0f60d0351e corrected index references and minor polishing
Christian Urban <urbanc@in.tum.de>
parents: 256
diff changeset
   188
\mainmatter
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   189
\input{session}
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   190
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
   191
% bibliography
257
ce0f60d0351e corrected index references and minor polishing
Christian Urban <urbanc@in.tum.de>
parents: 256
diff changeset
   192
\backmatter
2
978a3c2ed7ce split the document into smaller pieces;
Christian Urban <urbanc@in.tum.de>
parents: 0
diff changeset
   193
\bibliographystyle{abbrv}
17
8afa1c990a14 fixed creation of bibliography
Christian Urban <urbanc@in.tum.de>
parents: 15
diff changeset
   194
\bibliography{root}
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   195
373
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
   196
% indices
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
   197
\setindexname{Structure Index}
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
   198
\printindex[str]
28a49fe024c9 added structure index
Christian Urban <urbanc@in.tum.de>
parents: 368
diff changeset
   199
\setindexname{Index}
255
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
   200
\printindex
ef1da1abee46 added infrastructure for index; antiquotations have now the options [index] and [indexc]
Christian Urban <urbanc@in.tum.de>
parents: 248
diff changeset
   201
0
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   202
\end{document}
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   203
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   204
%%% Local Variables:
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   205
%%% mode: latex
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   206
%%% TeX-master: t
02503850a8cf initial commit of Alexander's files
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   207
%%% End: