doc-src/Intro/intro.toc
author wenzelm
Wed, 26 Aug 1998 16:33:29 +0200
changeset 5374 6ef3742b6153
parent 1085 504dad4d7843
permissions -rw-r--r--
moved images to gfx dir;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
105
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     1
\contentsline {part}{\uppercase {i}\phspace {1em}Foundations}{1}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     2
\contentsline {section}{\numberline {1}Formalizing logical syntax in Isabelle}{1}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     3
\contentsline {subsection}{\numberline {1.1}Simple types and constants}{1}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     4
\contentsline {subsection}{\numberline {1.2}Polymorphic types and constants}{3}
359
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
     5
\contentsline {subsection}{\numberline {1.3}Higher types and quantifiers}{5}
105
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     6
\contentsline {section}{\numberline {2}Formalizing logical rules in Isabelle}{5}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     7
\contentsline {subsection}{\numberline {2.1}Expressing propositional rules}{6}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     8
\contentsline {subsection}{\numberline {2.2}Quantifier rules and substitution}{7}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
     9
\contentsline {subsection}{\numberline {2.3}Signatures and theories}{8}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    10
\contentsline {section}{\numberline {3}Proof construction in Isabelle}{9}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    11
\contentsline {subsection}{\numberline {3.1}Higher-order unification}{10}
216d6ed87399 Initial revision
lcp
parents:
diff changeset
    12
\contentsline {subsection}{\numberline {3.2}Joining rules by resolution}{11}
359
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    13
\contentsline {section}{\numberline {4}Lifting a rule into a context}{13}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    14
\contentsline {subsection}{\numberline {4.1}Lifting over assumptions}{13}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    15
\contentsline {subsection}{\numberline {4.2}Lifting over parameters}{14}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    16
\contentsline {section}{\numberline {5}Backward proof by resolution}{15}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    17
\contentsline {subsection}{\numberline {5.1}Refinement by resolution}{15}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    18
\contentsline {subsection}{\numberline {5.2}Proof by assumption}{16}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    19
\contentsline {subsection}{\numberline {5.3}A propositional proof}{16}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    20
\contentsline {subsection}{\numberline {5.4}A quantifier proof}{17}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    21
\contentsline {subsection}{\numberline {5.5}Tactics and tacticals}{18}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    22
\contentsline {section}{\numberline {6}Variations on resolution}{18}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    23
\contentsline {subsection}{\numberline {6.1}Elim-resolution}{19}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    24
\contentsline {subsection}{\numberline {6.2}Destruction rules}{20}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    25
\contentsline {subsection}{\numberline {6.3}Deriving rules by resolution}{21}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    26
\contentsline {part}{\uppercase {ii}\phspace {1em}Getting Started with Isabelle}{23}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    27
\contentsline {section}{\numberline {7}Forward proof}{23}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    28
\contentsline {subsection}{\numberline {7.1}Lexical matters}{23}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    29
\contentsline {subsection}{\numberline {7.2}Syntax of types and terms}{24}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    30
\contentsline {subsection}{\numberline {7.3}Basic operations on theorems}{25}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    31
\contentsline {subsection}{\numberline {7.4}*Flex-flex constraints}{27}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    32
\contentsline {section}{\numberline {8}Backward proof}{28}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    33
\contentsline {subsection}{\numberline {8.1}The basic tactics}{28}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    34
\contentsline {subsection}{\numberline {8.2}Commands for backward proof}{29}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    35
\contentsline {subsection}{\numberline {8.3}A trivial example in propositional logic}{29}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    36
\contentsline {subsection}{\numberline {8.4}Part of a distributive law}{31}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    37
\contentsline {section}{\numberline {9}Quantifier reasoning}{32}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    38
\contentsline {subsection}{\numberline {9.1}Two quantifier proofs: a success and a failure}{32}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    39
\contentsline {paragraph}{The successful proof.}{32}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    40
\contentsline {paragraph}{The unsuccessful proof.}{33}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    41
\contentsline {subsection}{\numberline {9.2}Nested quantifiers}{33}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    42
\contentsline {paragraph}{The wrong approach.}{34}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    43
\contentsline {paragraph}{The right approach.}{34}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    44
\contentsline {paragraph}{A one-step proof using tacticals.}{35}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    45
\contentsline {subsection}{\numberline {9.3}A realistic quantifier proof}{36}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    46
\contentsline {subsection}{\numberline {9.4}The classical reasoner}{37}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    47
\contentsline {part}{\uppercase {iii}\phspace {1em}Advanced Methods}{39}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    48
\contentsline {section}{\numberline {10}Deriving rules in Isabelle}{39}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    49
\contentsline {subsection}{\numberline {10.1}Deriving a rule using tactics and meta-level assumptions}{39}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    50
\contentsline {subsection}{\numberline {10.2}Definitions and derived rules}{41}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    51
\contentsline {subsection}{\numberline {10.3}Deriving the $\neg $ introduction rule}{41}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    52
\contentsline {subsection}{\numberline {10.4}Deriving the $\neg $ elimination rule}{42}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    53
\contentsline {section}{\numberline {11}Defining theories}{44}
1085
504dad4d7843 new version
lcp
parents: 359
diff changeset
    54
\contentsline {subsection}{\numberline {11.1}Declaring constants, definitions and rules}{46}
359
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    55
\contentsline {subsection}{\numberline {11.2}Declaring type constructors}{46}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    56
\contentsline {subsection}{\numberline {11.3}Type synonyms}{48}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    57
\contentsline {subsection}{\numberline {11.4}Infix and mixfix operators}{48}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    58
\contentsline {subsection}{\numberline {11.5}Overloading}{50}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    59
\contentsline {section}{\numberline {12}Theory example: the natural numbers}{51}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    60
\contentsline {subsection}{\numberline {12.1}Extending first-order logic with the natural numbers}{51}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    61
\contentsline {subsection}{\numberline {12.2}Declaring the theory to Isabelle}{52}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    62
\contentsline {subsection}{\numberline {12.3}Proving some recursion equations}{52}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    63
\contentsline {section}{\numberline {13}Refinement with explicit instantiation}{53}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    64
\contentsline {subsection}{\numberline {13.1}A simple proof by induction}{53}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    65
\contentsline {subsection}{\numberline {13.2}An example of ambiguity in {\ptt resolve_tac}}{54}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    66
\contentsline {subsection}{\numberline {13.3}Proving that addition is associative}{55}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    67
\contentsline {section}{\numberline {14}A Prolog interpreter}{56}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    68
\contentsline {subsection}{\numberline {14.1}Simple executions}{57}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    69
\contentsline {subsection}{\numberline {14.2}Backtracking}{58}
b5a2e9503a7a final Springer version
lcp
parents: 105
diff changeset
    70
\contentsline {subsection}{\numberline {14.3}Depth-first search}{59}