\begin{theindex}
\item \ttall, \bold{203}
\item \texttt{?}, \bold{203}
\item \isasymuniqex, \bold{203}
\item \ttuniquex, \bold{203}
\item {\texttt {\&}}, \bold{203}
\item \verb$~$, \bold{203}
\item \verb$~=$, \bold{203}
\item \ttor, \bold{203}
\item \texttt{[]}, \bold{9}
\item \texttt{\#}, \bold{9}
\item \texttt{\at}, \bold{10}, \hyperpage{203}
\item \isasymnotin, \bold{203}
\item \verb$~:$, \bold{203}
\item \isasymInter, \bold{203}
\item \isasymUnion, \bold{203}
\item \isasyminverse, \bold{203}
\item \verb$^-1$, \bold{203}
\item \isactrlsup{\isacharasterisk}, \bold{203}
\item \verb$^$\texttt{*}, \bold{203}
\item \isasymAnd, \bold{12}, \bold{203}
\item \ttAnd, \bold{203}
\item \isasymrightleftharpoons, \hyperpage{57}
\item \isasymrightharpoonup, \hyperpage{57}
\item \isasymleftharpoondown, \hyperpage{57}
\item \emph {$\Rightarrow $}, \bold{5}
\item \ttlbr, \bold{203}
\item \ttrbr, \bold{203}
\item \texttt {\%}, \bold{203}
\item \texttt {;}, \bold{7}
\item \isa {()} (constant), \hyperpage{24}
\item \isa {+} (tactical), \hyperpage{93}
\item \isa {<*lex*>}, \see{lexicographic product}{1}
\item \isa {?} (tactical), \hyperpage{93}
\item \texttt{|} (tactical), \hyperpage{93}
\indexspace
\item \isa {0} (constant), \hyperpage{22, 23}, \hyperpage{144}
\item \isa {1} (constant), \hyperpage{23}, \hyperpage{144, 145}
\indexspace
\item abandoning a proof, \bold{13}
\item abandoning a theory, \bold{16}
\item \isa {abs} (constant), \hyperpage{147}
\item \texttt {abs}, \bold{203}
\item absolute value, \hyperpage{147}
\item \isa {add} (modifier), \hyperpage{29}
\item \isa {add_ac} (theorems), \hyperpage{146}
\item \isa {add_assoc} (theorem), \bold{146}
\item \isa {add_commute} (theorem), \bold{146}
\item \isa {add_mult_distrib} (theorem), \bold{145}
\item \texttt {ALL}, \bold{203}
\item \isa {All} (constant), \hyperpage{103}
\item \isa {allE} (theorem), \bold{75}
\item \isa {allI} (theorem), \bold{74}
\item append function, \hyperpage{10--14}
\item \isacommand {apply} (command), \hyperpage{15}
\item \isa {arg_cong} (theorem), \bold{90}
\item \isa {arith} (method), \hyperpage{23}, \hyperpage{143}
\item arithmetic operations
\subitem for \protect\isa{nat}, \hyperpage{23}
\item \textsc {ascii} symbols, \bold{203}
\item Aspinall, David, \hyperpage{viii}
\item associative-commutative function, \hyperpage{170}
\item \isa {assumption} (method), \hyperpage{63}
\item assumptions
\subitem of subgoal, \hyperpage{12}
\subitem renaming, \hyperpage{76--77}
\subitem reusing, \hyperpage{77}
\item \isa {auto} (method), \hyperpage{38}, \hyperpage{86}
\item \isa {axclass}, \hyperpage{158--164}
\item axiom of choice, \hyperpage{80}
\item axiomatic type classes, \hyperpage{158--164}
\indexspace
\item \isacommand {back} (command), \hyperpage{72}
\item \isa {Ball} (constant), \hyperpage{103}
\item \isa {ballI} (theorem), \bold{102}
\item \isa {best} (method), \hyperpage{86}
\item \isa {Bex} (constant), \hyperpage{103}
\item \isa {bexE} (theorem), \bold{102}
\item \isa {bexI} (theorem), \bold{102}
\item \isa {bij_def} (theorem), \bold{104}
\item bijections, \hyperpage{104}
\item binary trees, \hyperpage{18}
\item binomial coefficients, \hyperpage{103}
\item bisimulations, \hyperpage{110}
\item \isa {blast} (method), \hyperpage{83--84}, \hyperpage{86}
\item \isa {bool} (type), \hyperpage{4, 5}
\item boolean expressions example, \hyperpage{20--22}
\item \isa {bspec} (theorem), \bold{102}
\item \isacommand{by} (command), \hyperpage{67}
\indexspace
\item \isa {card} (constant), \hyperpage{103}
\item \isa {card_Pow} (theorem), \bold{103}
\item \isa {card_Un_Int} (theorem), \bold{103}
\item cardinality, \hyperpage{103}
\item \isa {case} (symbol), \hyperpage{32, 33}
\item \isa {case} expressions, \hyperpage{5, 6}, \hyperpage{18}
\item case distinctions, \hyperpage{19}
\item case splits, \bold{31}
\item \isa {case_tac} (method), \hyperpage{19}, \hyperpage{95},
\hyperpage{151}
\item \isa {cases} (method), \hyperpage{156}
\item \isa {clarify} (method), \hyperpage{85, 86}
\item \isa {clarsimp} (method), \hyperpage{85, 86}
\item \isa {classical} (theorem), \bold{67}
\item coinduction, \bold{110}
\item \isa {Collect} (constant), \hyperpage{103}
\item compiling expressions example, \hyperpage{36--38}
\item \isa {Compl_iff} (theorem), \bold{100}
\item complement
\subitem of a set, \hyperpage{99}
\item composition
\subitem of functions, \bold{104}
\subitem of relations, \bold{106}
\item conclusion
\subitem of subgoal, \hyperpage{12}
\item conditional expressions, \see{\isa{if} expressions}{1}
\item conditional simplification rules, \hyperpage{31}
\item \isa {cong} (attribute), \hyperpage{170}
\item congruence rules, \bold{169}
\item \isa {conjE} (theorem), \bold{65}
\item \isa {conjI} (theorem), \bold{62}
\item \isa {Cons} (constant), \hyperpage{9}
\item \isacommand {constdefs} (command), \hyperpage{25}
\item \isacommand {consts} (command), \hyperpage{10}
\item contrapositives, \hyperpage{67}
\item converse
\subitem of a relation, \bold{106}
\item \isa {converse_iff} (theorem), \bold{106}
\item CTL, \hyperpage{115--120}, \hyperpage{185--187}
\indexspace
\item \isacommand {datatype} (command), \hyperpage{9},
\hyperpage{38--43}
\item datatypes, \hyperpage{17--22}
\subitem and nested recursion, \hyperpage{40}, \hyperpage{44}
\subitem mutually recursive, \hyperpage{38}
\subitem nested, \hyperpage{174}
\item \isacommand {defer} (command), \hyperpage{16}, \hyperpage{94}
\item Definitional Approach, \hyperpage{26}
\item definitions, \bold{25}
\subitem unfolding, \bold{30}
\item \isacommand {defs} (command), \hyperpage{25}
\item \isa {del} (modifier), \hyperpage{29}
\item description operators, \hyperpage{79--81}
\item descriptions
\subitem definite, \hyperpage{79}
\subitem indefinite, \hyperpage{80}
\item \isa {dest} (attribute), \hyperpage{96}
\item destruction rules, \hyperpage{65}
\item \isa {diff_mult_distrib} (theorem), \bold{145}
\item difference
\subitem of sets, \bold{100}
\item \isa {disjCI} (theorem), \bold{68}
\item \isa {disjE} (theorem), \bold{64}
\item \isa {div} (symbol), \hyperpage{23}
\item divides relation, \hyperpage{78}, \hyperpage{89},
\hyperpage{95--98}, \hyperpage{146}
\item division
\subitem by negative numbers, \hyperpage{147}
\subitem by zero, \hyperpage{146}
\subitem for type \protect\isa{nat}, \hyperpage{145}
\item domain
\subitem of a relation, \hyperpage{106}
\item \isa {Domain_iff} (theorem), \bold{106}
\item \isacommand {done} (command), \hyperpage{13}
\item \isa {drule_tac} (method), \hyperpage{70}, \hyperpage{90}
\item \isa {dvd_add} (theorem), \bold{146}
\item \isa {dvd_anti_sym} (theorem), \bold{146}
\item \isa {dvd_def} (theorem), \bold{146}
\indexspace
\item \isa {elim!} (attribute), \hyperpage{125}
\item elimination rules, \hyperpage{63--64}
\item \isacommand {end} (command), \hyperpage{14}
\item \isa {Eps} (constant), \hyperpage{103}
\item equality, \hyperpage{5}
\subitem of functions, \bold{103}
\subitem of records, \hyperpage{155}
\subitem of sets, \bold{100}
\item \isa {equalityE} (theorem), \bold{100}
\item \isa {equalityI} (theorem), \bold{100}
\item \isa {erule} (method), \hyperpage{64}
\item \isa {erule_tac} (method), \hyperpage{70}
\item Euclid's algorithm, \hyperpage{95--98}
\item even numbers
\subitem defining inductively, \hyperpage{121--125}
\item \texttt {EX}, \bold{203}
\item \isa {Ex} (constant), \hyperpage{103}
\item \isa {exE} (theorem), \bold{76}
\item \isa {exI} (theorem), \bold{76}
\item \isa {ext} (theorem), \bold{103}
\item \isa {extend} (constant), \hyperpage{157}
\item extensionality
\subitem for functions, \bold{103, 104}
\subitem for records, \hyperpage{155}
\subitem for sets, \bold{100}
\item \ttEXU, \bold{203}
\indexspace
\item \isa {False} (constant), \hyperpage{5}
\item \isa {fast} (method), \hyperpage{86}, \hyperpage{118}
\item Fibonacci function, \hyperpage{47}
\item \isa {fields} (constant), \hyperpage{157}
\item \isa {finite} (symbol), \hyperpage{103}
\item \isa {Finites} (constant), \hyperpage{103}
\item fixed points, \hyperpage{110}
\item flags, \hyperpage{5, 6}, \hyperpage{33}
\subitem setting and resetting, \hyperpage{5}
\item \isa {force} (method), \hyperpage{85, 86}
\item formulae, \hyperpage{5--6}
\item forward proof, \hyperpage{86--92}
\item \isa {frule} (method), \hyperpage{77}
\item \isa {frule_tac} (method), \hyperpage{70}
\item \isa {fst} (constant), \hyperpage{24}
\item function types, \hyperpage{5}
\item functions, \hyperpage{103--105}
\subitem partial, \hyperpage{176}
\subitem total, \hyperpage{11}, \hyperpage{46--52}
\subitem underdefined, \hyperpage{177}
\indexspace
\item \isa {gcd} (constant), \hyperpage{87--88}, \hyperpage{95--98}
\item generalizing for induction, \hyperpage{123}
\item generalizing induction formulae, \hyperpage{35}
\item Girard, Jean-Yves, \fnote{65}
\item Gordon, Mike, \hyperpage{3}
\item grammars
\subitem defining inductively, \hyperpage{134--139}
\item ground terms example, \hyperpage{129--134}
\indexspace
\item \isa {hd} (constant), \hyperpage{17}, \hyperpage{37}
\item Hilbert's $\varepsilon$-operator, \hyperpage{80}
\item HOLCF, \hyperpage{43}
\item Hopcroft, J. E., \hyperpage{139}
\item \isa {hypreal} (type), \hyperpage{149}
\indexspace
\item \isa {Id_def} (theorem), \bold{106}
\item \isa {id_def} (theorem), \bold{104}
\item identifiers, \bold{6}
\subitem qualified, \bold{4}
\item identity function, \bold{104}
\item identity relation, \bold{106}
\item \isa {if} expressions, \hyperpage{5, 6}
\subitem simplification of, \hyperpage{33}
\subitem splitting of, \hyperpage{31}, \hyperpage{49}
\item if-and-only-if, \hyperpage{6}
\item \isa {iff} (attribute), \hyperpage{84}, \hyperpage{96},
\hyperpage{124}
\item \isa {iffD1} (theorem), \bold{88}
\item \isa {iffD2} (theorem), \bold{88}
\item image
\subitem under a function, \bold{105}
\subitem under a relation, \bold{106}
\item \isa {image_def} (theorem), \bold{105}
\item \isa {Image_iff} (theorem), \bold{106}
\item \isa {impI} (theorem), \bold{66}
\item implication, \hyperpage{66--67}
\item \isa {ind_cases} (method), \hyperpage{125}
\item \isa {induct_tac} (method), \hyperpage{12}, \hyperpage{19},
\hyperpage{52}, \hyperpage{184}
\item induction, \hyperpage{180--187}
\subitem complete, \hyperpage{182}
\subitem deriving new schemas, \hyperpage{184}
\subitem on a term, \hyperpage{181}
\subitem recursion, \hyperpage{51--52}
\subitem structural, \hyperpage{19}
\subitem well-founded, \hyperpage{109}
\item induction heuristics, \hyperpage{34--36}
\item \isacommand {inductive} (command), \hyperpage{121}
\item inductive definition
\subitem simultaneous, \hyperpage{135}
\item inductive definitions, \hyperpage{121--139}
\item \isacommand {inductive\_cases} (command), \hyperpage{125},
\hyperpage{133}
\item infinitely branching trees, \hyperpage{43}
\item infix annotations, \bold{54}
\item \isacommand{infixr} (annotation), \hyperpage{10}
\item \isa {inj_on_def} (theorem), \bold{104}
\item injections, \hyperpage{104}
\item \isa {insert} (constant), \hyperpage{101}
\item \isa {insert} (method), \hyperpage{91--92}
\item instance, \bold{160}
\item \texttt {INT}, \bold{203}
\item \texttt {Int}, \bold{203}
\item \isa {int} (type), \hyperpage{147--148}
\item \isa {INT_iff} (theorem), \bold{102}
\item \isa {IntD1} (theorem), \bold{99}
\item \isa {IntD2} (theorem), \bold{99}
\item integers, \hyperpage{147--148}
\item \isa {INTER} (constant), \hyperpage{103}
\item \texttt {Inter}, \bold{203}
\item \isa {Inter_iff} (theorem), \bold{102}
\item intersection, \hyperpage{99}
\subitem indexed, \hyperpage{102}
\item \isa {IntI} (theorem), \bold{99}
\item \isa {intro} (method), \hyperpage{68}
\item \isa {intro!} (attribute), \hyperpage{122}
\item \isa {intro_classes} (method), \hyperpage{160}
\item introduction rules, \hyperpage{62--63}
\item \isa {inv} (constant), \hyperpage{80}
\item \isa {inv_image_def} (theorem), \bold{109}
\item inverse
\subitem of a function, \bold{104}
\subitem of a relation, \bold{106}
\item inverse image
\subitem of a function, \hyperpage{105}
\subitem of a relation, \hyperpage{108}
\item \isa {itrev} (constant), \hyperpage{34}
\indexspace
\item \isacommand {kill} (command), \hyperpage{16}
\indexspace
\item $\lambda$ expressions, \hyperpage{5}
\item LCF, \hyperpage{43}
\item \isa {LEAST} (symbol), \hyperpage{23}, \hyperpage{79}
\item least number operator, \see{\protect\isa{LEAST}}{79}
\item Leibniz, Gottfried Wilhelm, \hyperpage{53}
\item \isacommand {lemma} (command), \hyperpage{13}
\item \isacommand {lemmas} (command), \hyperpage{87}, \hyperpage{96}
\item \isa {length} (symbol), \hyperpage{18}
\item \isa {length_induct}, \bold{184}
\item \isa {less_than} (constant), \hyperpage{108}
\item \isa {less_than_iff} (theorem), \bold{108}
\item \isa {let} expressions, \hyperpage{5, 6}, \hyperpage{31}
\item \isa {Let_def} (theorem), \hyperpage{31}
\item \isa {lex_prod_def} (theorem), \bold{109}
\item lexicographic product, \bold{109}, \hyperpage{172}
\item {\texttt{lfp}}
\subitem applications of, \see{CTL}{110}
\item Library, \hyperpage{4}
\item linear arithmetic, \hyperpage{22--24}, \hyperpage{143}
\item \isa {List} (theory), \hyperpage{17}
\item \isa {list} (type), \hyperpage{5}, \hyperpage{9},
\hyperpage{17}
\item \isa {list.split} (theorem), \hyperpage{32}
\item \isa {lists_mono} (theorem), \bold{131}
\item Lowe, Gavin, \hyperpage{190--191}
\indexspace
\item \isa {Main} (theory), \hyperpage{4}
\item major premise, \bold{69}
\item \isa {make} (constant), \hyperpage{157}
\item \isa {max} (constant), \hyperpage{23, 24}
\item measure functions, \hyperpage{47}, \hyperpage{108}
\item \isa {measure_def} (theorem), \bold{109}
\item meta-logic, \bold{74}
\item methods, \bold{16}
\item \isa {min} (constant), \hyperpage{23, 24}
\item mixfix annotations, \bold{53}
\item \isa {mod} (symbol), \hyperpage{23}
\item \isa {mod_div_equality} (theorem), \bold{145}
\item \isa {mod_mult_distrib} (theorem), \bold{145}
\item model checking example, \hyperpage{110--120}
\item \emph{modus ponens}, \hyperpage{61}, \hyperpage{66}
\item \isa {mono_def} (theorem), \bold{110}
\item monotone functions, \bold{110}, \hyperpage{133}
\subitem and inductive definitions, \hyperpage{131--132}
\item \isa {more} (constant), \hyperpage{152}, \hyperpage{154}
\item \isa {mp} (theorem), \bold{66}
\item \isa {mult_ac} (theorems), \hyperpage{146}
\item multiple inheritance, \bold{163}
\item multiset ordering, \bold{109}
\indexspace
\item \isa {nat} (type), \hyperpage{4}, \hyperpage{22},
\hyperpage{145--147}
\item \isa {nat_less_induct} (theorem), \hyperpage{182}
\item natural deduction, \hyperpage{61--62}
\item natural numbers, \hyperpage{22}, \hyperpage{145--147}
\item Needham-Schroeder protocol, \hyperpage{189--191}
\item negation, \hyperpage{67--69}
\item \isa {Nil} (constant), \hyperpage{9}
\item \isa {no_asm} (modifier), \hyperpage{29}
\item \isa {no_asm_simp} (modifier), \hyperpage{30}
\item \isa {no_asm_use} (modifier), \hyperpage{30}
\item non-standard reals, \hyperpage{149}
\item \isa {None} (constant), \bold{24}
\item \isa {notE} (theorem), \bold{67}
\item \isa {notI} (theorem), \bold{67}
\item numbers, \hyperpage{143--149}
\item numeric literals, \hyperpage{144}
\subitem for type \protect\isa{nat}, \hyperpage{145}
\subitem for type \protect\isa{real}, \hyperpage{149}
\indexspace
\item \isa {O} (symbol), \hyperpage{106}
\item \texttt {o}, \bold{203}
\item \isa {o_def} (theorem), \bold{104}
\item \isa {OF} (attribute), \hyperpage{89--90}
\item \isa {of} (attribute), \hyperpage{87}, \hyperpage{90}
\item \isa {only} (modifier), \hyperpage{29}
\item \isacommand {oops} (command), \hyperpage{13}
\item \isa {option} (type), \bold{24}
\item ordered rewriting, \bold{170}
\item overloading, \hyperpage{23}, \hyperpage{159--161}
\subitem and arithmetic, \hyperpage{144}
\indexspace
\item pairs and tuples, \hyperpage{24}, \hyperpage{149--152}
\item parent theories, \bold{4}
\item pattern matching
\subitem and \isacommand{recdef}, \hyperpage{47}
\item patterns
\subitem higher-order, \bold{171}
\item PDL, \hyperpage{112--114}
\item \isacommand {pr} (command), \hyperpage{16}, \hyperpage{94}
\item \isacommand {prefer} (command), \hyperpage{16}, \hyperpage{94}
\item prefix annotation, \bold{56}
\item primitive recursion, \see{recursion, primitive}{1}
\item \isacommand {primrec} (command), \hyperpage{10}, \hyperpage{18},
\hyperpage{38--43}
\item print mode, \hyperpage{55}
\item \isacommand {print\_syntax} (command), \hyperpage{54}
\item product type, \see{pairs and tuples}{1}
\item Proof General, \bold{7}
\item proof state, \hyperpage{12}
\item proofs
\subitem abandoning, \bold{13}
\subitem examples of failing, \hyperpage{81--83}
\item protocols
\subitem security, \hyperpage{189--199}
\indexspace
\item quantifiers, \hyperpage{6}
\subitem and inductive definitions, \hyperpage{129--131}
\subitem existential, \hyperpage{76}
\subitem for sets, \hyperpage{102}
\subitem instantiating, \hyperpage{78}
\subitem universal, \hyperpage{73--76}
\indexspace
\item \isa {r_into_rtrancl} (theorem), \bold{106}
\item \isa {r_into_trancl} (theorem), \bold{107}
\item range
\subitem of a function, \hyperpage{105}
\subitem of a relation, \hyperpage{106}
\item \isa {range} (symbol), \hyperpage{105}
\item \isa {Range_iff} (theorem), \bold{106}
\item \isa {Real} (theory), \hyperpage{149}
\item \isa {real} (type), \hyperpage{148--149}
\item real numbers, \hyperpage{148--149}
\item \isacommand {recdef} (command), \hyperpage{46--52},
\hyperpage{108}, \hyperpage{172--180}
\subitem and numeric literals, \hyperpage{144}
\item \isa {recdef_cong} (attribute), \hyperpage{176}
\item \isa {recdef_simp} (attribute), \hyperpage{49}
\item \isa {recdef_wf} (attribute), \hyperpage{174}
\item \isacommand {record} (command), \hyperpage{153}
\item records, \hyperpage{152--158}
\subitem extensible, \hyperpage{154--155}
\item recursion
\subitem guarded, \hyperpage{177}
\subitem primitive, \hyperpage{18}
\subitem well-founded, \bold{173}
\item recursion induction, \hyperpage{51--52}
\item \isacommand {redo} (command), \hyperpage{16}
\item reflexive and transitive closure, \hyperpage{106--108}
\item reflexive transitive closure
\subitem defining inductively, \hyperpage{126--129}
\item \isa {rel_comp_def} (theorem), \bold{106}
\item relations, \hyperpage{105--108}
\subitem well-founded, \hyperpage{108--109}
\item \isa {rename_tac} (method), \hyperpage{76--77}
\item \isa {rev} (constant), \hyperpage{10--14}, \hyperpage{34}
\item rewrite rules, \bold{27}
\subitem permutative, \bold{170}
\item rewriting, \bold{27}
\item \isa {rotate_tac} (method), \hyperpage{30}
\item \isa {rtrancl_refl} (theorem), \bold{106}
\item \isa {rtrancl_trans} (theorem), \bold{106}
\item rule induction, \hyperpage{122--124}
\item rule inversion, \hyperpage{124--125}, \hyperpage{133--134}
\item \isa {rule_format} (attribute), \hyperpage{181}
\item \isa {rule_tac} (method), \hyperpage{70}
\subitem and renaming, \hyperpage{77}
\indexspace
\item \isa {safe} (method), \hyperpage{85, 86}
\item safe rules, \bold{84}
\item selector
\subitem record, \hyperpage{153}
\item \isa {set} (type), \hyperpage{5}, \hyperpage{99}
\item set comprehensions, \hyperpage{101--102}
\item \isa {set_ext} (theorem), \bold{100}
\item sets, \hyperpage{99--103}
\subitem finite, \hyperpage{103}
\subitem notation for finite, \bold{101}
\item settings, \see{flags}{1}
\item \isa {show_brackets} (flag), \hyperpage{6}
\item \isa {show_types} (flag), \hyperpage{5}, \hyperpage{16}
\item \isa {simp} (attribute), \hyperpage{11}, \hyperpage{28}
\item \isa {simp} (method), \bold{28}
\item \isa {simp} del (attribute), \hyperpage{28}
\item \isa {simp_all} (method), \hyperpage{29}, \hyperpage{38}
\item simplification, \hyperpage{27--33}, \hyperpage{169--172}
\subitem of \isa{let}-expressions, \hyperpage{31}
\subitem with definitions, \hyperpage{30}
\subitem with/of assumptions, \hyperpage{29}
\item simplification rule, \hyperpage{171--172}
\item simplification rules, \hyperpage{28}
\subitem adding and deleting, \hyperpage{29}
\item \isa {simplified} (attribute), \hyperpage{87}, \hyperpage{90}
\item \isa {size} (constant), \hyperpage{17}
\item \isa {snd} (constant), \hyperpage{24}
\item \isa {SOME} (symbol), \hyperpage{80}
\item \texttt {SOME}, \bold{203}
\item \isa {Some} (constant), \bold{24}
\item \isa {some_equality} (theorem), \bold{80}
\item \isa {someI} (theorem), \bold{80}
\item \isa {someI2} (theorem), \bold{80}
\item \isa {someI_ex} (theorem), \bold{81}
\item sorts, \hyperpage{164}
\item \isa {spec} (theorem), \bold{74}
\item \isa {split} (attribute), \hyperpage{32}
\item \isa {split} (constant), \hyperpage{150}
\item \isa {split} (method), \hyperpage{31}, \hyperpage{150}
\item \isa {split} (modifier), \hyperpage{32}
\item split rule, \bold{32}
\item \isa {split_if} (theorem), \hyperpage{32}
\item \isa {split_if_asm} (theorem), \hyperpage{32}
\item \isa {ssubst} (theorem), \bold{71}
\item structural induction, \see{induction, structural}{1}
\item subclasses, \hyperpage{158}, \hyperpage{163}
\item subgoal numbering, \hyperpage{46}
\item \isa {subgoal_tac} (method), \hyperpage{92}
\item subgoals, \hyperpage{12}
\item subset relation, \bold{100}
\item \isa {subsetD} (theorem), \bold{100}
\item \isa {subsetI} (theorem), \bold{100}
\item \isa {subst} (method), \hyperpage{71}
\item substitution, \hyperpage{71--73}
\item \isa {Suc} (constant), \hyperpage{22}
\item \isa {surj_def} (theorem), \bold{104}
\item surjections, \hyperpage{104}
\item \isa {sym} (theorem), \bold{88}
\item symbols, \bold{55}
\item syntax, \hyperpage{6}, \hyperpage{11}
\item \isacommand {syntax} (command), \hyperpage{56}
\item syntax translations, \hyperpage{57}
\indexspace
\item tacticals, \hyperpage{93}
\item tactics, \hyperpage{12}
\item \isacommand {term} (command), \hyperpage{16}
\item term rewriting, \bold{27}
\item termination, \see{functions, total}{1}
\item terms, \hyperpage{5}
\item \isa {THE} (symbol), \hyperpage{79}
\item \isa {the_equality} (theorem), \bold{79}
\item \isa {THEN} (attribute), \bold{88}, \hyperpage{90},
\hyperpage{96}
\item \isacommand {theorem} (command), \bold{11}, \hyperpage{13}
\item theories, \hyperpage{4}
\subitem abandoning, \bold{16}
\item \isacommand {theory} (command), \hyperpage{16}
\item theory files, \hyperpage{4}
\item \isacommand {thm} (command), \hyperpage{16}
\item \isa {tl} (constant), \hyperpage{17}
\item \isa {ToyList} example, \hyperpage{9--14}
\item \isa {trace_simp} (flag), \hyperpage{33}
\item tracing the simplifier, \bold{33}
\item \isa {trancl_trans} (theorem), \bold{107}
\item transition systems, \hyperpage{111}
\item \isacommand {translations} (command), \hyperpage{57}
\item tries, \hyperpage{44--46}
\item \isa {True} (constant), \hyperpage{5}
\item \isa {truncate} (constant), \hyperpage{157}
\item tuples, \see{pairs and tuples}{1}
\item \isacommand {typ} (command), \hyperpage{16}
\item type constraints, \bold{6}
\item type constructors, \hyperpage{5}
\item type inference, \bold{5}
\item type synonyms, \hyperpage{25}
\item type variables, \hyperpage{5}
\item \isacommand {typedecl} (command), \hyperpage{111},
\hyperpage{165}
\item \isacommand {typedef} (command), \hyperpage{165--168}
\item types, \hyperpage{4--5}
\subitem declaring, \hyperpage{165}
\subitem defining, \hyperpage{165--168}
\item \isacommand {types} (command), \hyperpage{25}
\indexspace
\item Ullman, J. D., \hyperpage{139}
\item \texttt {UN}, \bold{203}
\item \texttt {Un}, \bold{203}
\item \isa {UN_E} (theorem), \bold{102}
\item \isa {UN_I} (theorem), \bold{102}
\item \isa {UN_iff} (theorem), \bold{102}
\item \isa {Un_subset_iff} (theorem), \bold{100}
\item \isacommand {undo} (command), \hyperpage{16}
\item \isa {unfold} (method), \bold{31}
\item Unicode, \hyperpage{55}
\item unification, \hyperpage{70--73}
\item \isa {UNION} (constant), \hyperpage{103}
\item \texttt {Union}, \bold{203}
\item union
\subitem indexed, \hyperpage{102}
\item \isa {Union_iff} (theorem), \bold{102}
\item \isa {unit} (type), \hyperpage{24}
\item unknowns, \hyperpage{7}, \bold{62}
\item unsafe rules, \bold{84}
\item update
\subitem record, \hyperpage{153}
\item updating a function, \bold{103}
\indexspace
\item variables, \hyperpage{7}
\subitem schematic, \hyperpage{7}
\subitem type, \hyperpage{5}
\item \isa {vimage_def} (theorem), \bold{105}
\indexspace
\item Wenzel, Markus, \hyperpage{vii}
\item \isa {wf_induct} (theorem), \bold{109}
\item \isa {wf_inv_image} (theorem), \bold{109}
\item \isa {wf_less_than} (theorem), \bold{108}
\item \isa {wf_lex_prod} (theorem), \bold{109}
\item \isa {wf_measure} (theorem), \bold{109}
\item \isa {wf_subset} (theorem), \hyperpage{174}
\item \isa {while} (constant), \hyperpage{179}
\item \isa {While_Combinator} (theory), \hyperpage{179}
\item \isa {while_rule} (theorem), \hyperpage{179}
\indexspace
\item \isa {zadd_ac} (theorems), \hyperpage{147}
\item \isa {zmult_ac} (theorems), \hyperpage{147}
\end{theindex}