src/Doc/Tutorial/document/inductive0.tex
author nipkow
Wed, 13 Dec 2017 11:44:11 +0100
changeset 67169 1fabca1c2199
parent 48985 5386df44a037
permissions -rw-r--r--
made arg_min_on definition
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10865
18927bcf7aed a new label
paulson
parents: 10762
diff changeset
     1
\chapter{Inductively Defined Sets} \label{chap:inductive}
11428
332347b9b942 tidying the index
paulson
parents: 11411
diff changeset
     2
\index{inductive definitions|(}
10242
028f54cd2cc9 *** empty log message ***
nipkow
parents: 10225
diff changeset
     3
028f54cd2cc9 *** empty log message ***
nipkow
parents: 10225
diff changeset
     4
This chapter is dedicated to the most important definition principle after
028f54cd2cc9 *** empty log message ***
nipkow
parents: 10225
diff changeset
     5
recursive functions and datatypes: inductively defined sets.
028f54cd2cc9 *** empty log message ***
nipkow
parents: 10225
diff changeset
     6
11147
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
     7
We start with a simple example: the set of even numbers.  A slightly more
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
     8
complicated example, the reflexive transitive closure, is the subject of
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
     9
{\S}\ref{sec:rtc}. In particular, some standard induction heuristics are
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    10
discussed. Advanced forms of inductive definitions are discussed in
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    11
{\S}\ref{sec:adv-ind-def}. To demonstrate the versatility of inductive
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    12
definitions, the chapter closes with a case study from the realm of
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    13
context-free grammars. The first two sections are required reading for anybody
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    14
interested in mathematical modelling.
10219
eb28637c72ce *** empty log message ***
nipkow
parents:
diff changeset
    15
25330
15bf0f47a87d added inductive
nipkow
parents: 23843
diff changeset
    16
\begin{warn}
15bf0f47a87d added inductive
nipkow
parents: 23843
diff changeset
    17
Predicates can also be defined inductively.
15bf0f47a87d added inductive
nipkow
parents: 23843
diff changeset
    18
See {\S}\ref{sec:ind-predicates}.
15bf0f47a87d added inductive
nipkow
parents: 23843
diff changeset
    19
\end{warn}
15bf0f47a87d added inductive
nipkow
parents: 23843
diff changeset
    20
48966
6e15de7dd871 more standard document preparation within session context: avoid clashes with generated .tex files, even on case-insensible file-system;
wenzelm
parents: 48522
diff changeset
    21
\input{Even}
6e15de7dd871 more standard document preparation within session context: avoid clashes with generated .tex files, even on case-insensible file-system;
wenzelm
parents: 48522
diff changeset
    22
\input{Mutual}
6e15de7dd871 more standard document preparation within session context: avoid clashes with generated .tex files, even on case-insensible file-system;
wenzelm
parents: 48522
diff changeset
    23
\input{Star}
10242
028f54cd2cc9 *** empty log message ***
nipkow
parents: 10225
diff changeset
    24
11216
279004936bb0 *** empty log message ***
nipkow
parents: 11147
diff changeset
    25
\section{Advanced Inductive Definitions}
11147
d848c6693185 *** empty log message ***
nipkow
parents: 10884
diff changeset
    26
\label{sec:adv-ind-def}
48966
6e15de7dd871 more standard document preparation within session context: avoid clashes with generated .tex files, even on case-insensible file-system;
wenzelm
parents: 48522
diff changeset
    27
\input{Advanced}
10371
4015fdd0bcf0 the section command will belong to the new file
paulson
parents: 10327
diff changeset
    28
48966
6e15de7dd871 more standard document preparation within session context: avoid clashes with generated .tex files, even on case-insensible file-system;
wenzelm
parents: 48522
diff changeset
    29
\input{AB}
10520
bb9dfcc87951 *** empty log message ***
nipkow
parents: 10468
diff changeset
    30
11428
332347b9b942 tidying the index
paulson
parents: 11411
diff changeset
    31
\index{inductive definitions|)}