doc-src/Logics/HOL.tex
changeset 6141 a6922171b396
parent 6119 7e3eb9b4df8e
child 6170 9a59cf8ae9b5
equal deleted inserted replaced
6140:af32e2c3f77a 6141:a6922171b396
  2655 \item[\tt elims] is the list of elimination rule.
  2655 \item[\tt elims] is the list of elimination rule.
  2656 
  2656 
  2657 \item[\tt elim] is the head of the list \texttt{elims}.
  2657 \item[\tt elim] is the head of the list \texttt{elims}.
  2658   
  2658   
  2659 \item[\tt mk_cases] is a function to create simplified instances of {\tt
  2659 \item[\tt mk_cases] is a function to create simplified instances of {\tt
  2660 elim}, using freeness reasoning on some underlying datatype.
  2660 elim} using freeness reasoning on underlying datatypes.
  2661 \end{description}
  2661 \end{description}
  2662 
  2662 
  2663 For an inductive definition, the result structure contains the
  2663 For an inductive definition, the result structure contains the
  2664 rule \texttt{induct}.  For a
  2664 rule \texttt{induct}.  For a
  2665 coinductive definition, it contains the rule \verb|coinduct|.
  2665 coinductive definition, it contains the rule \verb|coinduct|.
  2674 val mono         : thm
  2674 val mono         : thm
  2675 val unfold       : thm
  2675 val unfold       : thm
  2676 val intrs        : thm list
  2676 val intrs        : thm list
  2677 val elims        : thm list
  2677 val elims        : thm list
  2678 val elim         : thm
  2678 val elim         : thm
  2679 val mk_cases     : thm list -> string -> thm
  2679 val mk_cases     : string -> thm
  2680 {\it(Inductive definitions only)} 
  2680 {\it(Inductive definitions only)} 
  2681 val induct       : thm
  2681 val induct       : thm
  2682 {\it(coinductive definitions only)}
  2682 {\it(coinductive definitions only)}
  2683 val coinduct     : thm
  2683 val coinduct     : thm
  2684 end
  2684 end