doc-src/IsarAdvanced/Codegen/codegen.tex
author haftmann
Tue, 30 Sep 2008 14:30:44 +0200
changeset 28428 fd007794561f
parent 28419 f65e8b318581
child 28447 df77ed974a78
permissions -rw-r--r--
tuned
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     1
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     2
%% $Id$
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     3
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     4
\documentclass[12pt,a4paper,fleqn]{report}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     5
\usepackage{latexsym,graphicx}
21058
a32d357dfd70 started tutorial
haftmann
parents: 20948
diff changeset
     6
\usepackage{listings}
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     7
\usepackage[refpage]{nomencl}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     8
\usepackage{../../iman,../../extra,../../isar,../../proof}
26911
871cc7f11034 use Isabelle sty files from Doc/;
wenzelm
parents: 26784
diff changeset
     9
\usepackage{../../isabelle,../../isabellesym}
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    10
\usepackage{style}
26911
871cc7f11034 use Isabelle sty files from Doc/;
wenzelm
parents: 26784
diff changeset
    11
\usepackage{../../pdfsetup}
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    12
28428
haftmann
parents: 28419
diff changeset
    13
\newcommand{\isaverbatim}{\renewcommand{\baselinestretch}{1}\setlength{\baselineskip}{8pt}\fontsize{8pt}{0pt}}
haftmann
parents: 28419
diff changeset
    14
28419
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    15
\makeatletter
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    16
28419
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    17
\isakeeptag{quoteme}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    18
\newenvironment{quoteme}{\begin{quote}\isa@parindent\parindent\parindent0pt\isa@parskip\parskip\parskip0pt}{\end{quote}}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    19
\renewcommand{\isatagquoteme}{\begin{quoteme}}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    20
\renewcommand{\endisatagquoteme}{\end{quoteme}}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    21
28428
haftmann
parents: 28419
diff changeset
    22
\isakeeptag{tt}
haftmann
parents: 28419
diff changeset
    23
\renewcommand{\isatagtt}{\begin{quoteme}\isabellestyle{tt}\isastyle}
haftmann
parents: 28419
diff changeset
    24
\renewcommand{\endisatagtt}{\end{quoteme}\isabellestyle{it}\isastyle}
haftmann
parents: 28419
diff changeset
    25
28419
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    26
\makeatother
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    27
28428
haftmann
parents: 28419
diff changeset
    28
\newcommand{\isactrlbvec}{\emph\bgroup\begin{math}{}\overline\bgroup\mbox\bgroup\isastylescript}
haftmann
parents: 28419
diff changeset
    29
\newcommand{\isactrlevec}{\egroup\egroup\end{math}\egroup}
21322
26f64e7a67b5 added tt tag
haftmann
parents: 21222
diff changeset
    30
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    31
\newcommand{\qt}[1]{``#1''}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    32
\newcommand{\qtt}[1]{"{}{#1}"{}}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    33
\newcommand{\qn}[1]{\emph{#1}}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    34
\newcommand{\strong}[1]{{\bfseries #1}}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    35
\newcommand{\fixme}[1][!]{\strong{FIXME: #1}}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    36
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    37
\hyphenation{Isabelle}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    38
\hyphenation{Isar}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    39
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    40
\isadroptag{theory}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    41
\title{\includegraphics[scale=0.5]{isabelle_isar}
21222
6dfdb69e83ef adjusted title
haftmann
parents: 21190
diff changeset
    42
  \\[4ex] Code generation from Isabelle/HOL theories}
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    43
\author{\emph{Florian Haftmann}}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    44
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    45
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    46
\begin{document}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    47
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    48
\maketitle
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    49
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    50
\begin{abstract}
28213
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents: 26911
diff changeset
    51
  This tutorial gives am introduction to a generic code generator framework in Isabelle
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents: 26911
diff changeset
    52
  for generating executable code in functional programming languages from logical
b52f9205a02d New outline for codegen tutorial -- draft
haftmann
parents: 26911
diff changeset
    53
  specifications in Isabelle/HOL.
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    54
\end{abstract}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    55
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    56
\thispagestyle{empty}\clearpage
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    57
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    58
\pagenumbering{roman}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    59
\clearfirst
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    60
28419
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    61
\input{Thy/document/Introduction.tex}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    62
\input{Thy/document/Program.tex}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    63
\input{Thy/document/Adaption.tex}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    64
\input{Thy/document/Further.tex}
f65e8b318581 re-canibalised manual
haftmann
parents: 28213
diff changeset
    65
\input{Thy/document/ML.tex}
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    66
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    67
\begingroup
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    68
%\tocentry{\bibname}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    69
\bibliographystyle{plain} \small\raggedright\frenchspacing
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    70
\bibliography{../../manual}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    71
\endgroup
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    72
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    73
\end{document}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    74
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    75
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    76
%%% Local Variables: 
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    77
%%% mode: latex
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    78
%%% TeX-master: t
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    79
%%% End: