src/Doc/Datatypes/document/root.tex
author blanchet
Tue, 30 Jul 2013 19:49:42 +0200
changeset 52794 aae782070611
parent 52792 3e651be14fcd
child 52805 7f2f42046361
permissions -rw-r--r--
more (co)datatype documentation
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
52794
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
     1
\documentclass[12pt,a4paper]{article} % fleqn
52792
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     2
\usepackage{latexsym}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     3
\usepackage{graphicx}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     4
\usepackage{iman}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     5
\usepackage{extra}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     6
\usepackage{isar}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     7
\usepackage{isabelle}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     8
\usepackage{isabellesym}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
     9
\usepackage{style}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    10
\usepackage{pdfsetup}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    11
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    12
\newcommand{\cmd}[1]{\isacommand{#1}}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    13
52794
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    14
\renewcommand{\isacharunderscore}{\mbox{\_}}
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    15
\renewcommand{\isacharunderscorekeyword}{\mbox{\_}}
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    16
52792
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    17
\hyphenation{isa-belle}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    18
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    19
\isadroptag{theory}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    20
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    21
\title{%\includegraphics[scale=0.5]{isabelle_hol} \\[4ex]
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    22
Defining (Co)datatypes in Isabelle/HOL}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    23
\author{\hbox{} \\
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    24
Jasmin Christian Blanchette, Andrei Popescu, and Dmitriy Traytel \\
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    25
{\normalsize Institut f\"ur Informatik, Technische Universit\"at M\"unchen} \\
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    26
\hbox{}}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    27
\begin{document}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    28
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    29
\maketitle
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    30
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    31
\begin{abstract}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    32
\noindent
52794
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    33
This tutorial describes how to use the new package for defining datatypes and
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    34
codatatypes in Isabelle/HOL. The package provides four main user-level commands:
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    35
\cmd{datatype\_new}, \cmd{codatatype}, \cmd{primrec\_new}, and \cmd{primcorec}.
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    36
The commands suffixed by \cmd{\_new} are intended to subsume, and eventually
52792
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    37
replace, the corresponding commands from the old datatype package.
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    38
\end{abstract}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    39
52794
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    40
\tableofcontents
aae782070611 more (co)datatype documentation
blanchet
parents: 52792
diff changeset
    41
52792
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    42
\input{Datatypes.tex}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    43
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    44
\let\em=\sl
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    45
\bibliography{manual}{}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    46
\bibliographystyle{abbrv}
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    47
3e651be14fcd sketched documentation for new (co)datatype package
blanchet
parents:
diff changeset
    48
\end{document}