CookBook/Package/Ind_Intro.thy
changeset 127 74846cb0fff9
parent 121 26e5b41faa74
child 152 8084c353d196
equal deleted inserted replaced
126:fcc0e6e54dca 127:74846cb0fff9
    28   rules or constructors, and the package then does all the low-level
    28   rules or constructors, and the package then does all the low-level
    29   definitions and proofs behind the scenes. In this chapter we explain how
    29   definitions and proofs behind the scenes. In this chapter we explain how
    30   such a package can be implemented.
    30   such a package can be implemented.
    31 
    31 
    32   As a running example, we have chosen a rather simple package for defining
    32   As a running example, we have chosen a rather simple package for defining
    33   inductive predicates. To keep things really simple, we will not use the general
    33   inductive predicates. To keep things really simple, we will not use the
    34   Knaster-Tarski fixpoint theorem on complete lattices, which forms the basis
    34   general Knaster-Tarski fixpoint theorem on complete lattices, which forms
    35   of Isabelle's standard inductive definition package.  Instead, we will use a
    35   the basis of Isabelle's standard inductive definition package.  Instead, we
    36   simpler \emph{impredicative} (i.e.\ involving quantification on predicate
    36   will use a simpler \emph{impredicative} (i.e.\ involving quantification on
    37   variables) encoding of inductive predicates suggested by Melham
    37   predicate variables) encoding of inductive predicates. Due to its
    38   \cite{Melham:1992:PIR}. Due to its simplicity, this package will necessarily
    38   simplicity, this package will necessarily have a reduced functionality. It
    39   have a reduced functionality. It does neither support introduction rules
    39   does neither support introduction rules involving arbitrary monotone
    40   involving arbitrary monotone operators, nor does it prove case analysis (or
    40   operators, nor does it prove case analysis (or inversion) rules. Moreover,
    41   inversion) rules. Moreover, it only proves a weaker form of the
    41   it only proves a weaker form of the induction principle for inductive
    42   induction principle for inductive predicates.
    42   predicates.
    43 *}
    43 *}
    44 
    44 
    45 end
    45 end