doc-src/TutorialI/tutorial.ind
changeset 12699 deae80045527
child 12790 8108791e2906
equal deleted inserted replaced
12698:b87b41ade3b2 12699:deae80045527
       
     1 \begin{theindex}
       
     2 
       
     3   \item \ttall, \bold{209}
       
     4   \item \texttt{?}, \bold{209}
       
     5   \item \isasymuniqex, \bold{209}
       
     6   \item \ttuniquex, \bold{209}
       
     7   \item {\texttt {\&}}, \bold{209}
       
     8   \item \verb$~$, \bold{209}
       
     9   \item \verb$~=$, \bold{209}
       
    10   \item \ttor, \bold{209}
       
    11   \item \texttt{[]}, \bold{9}
       
    12   \item \texttt{\#}, \bold{9}
       
    13   \item \texttt{\at}, \bold{10}, \hyperpage{209}
       
    14   \item \isasymnotin, \bold{209}
       
    15   \item \verb$~:$, \bold{209}
       
    16   \item \isasymInter, \bold{209}
       
    17   \item \isasymUnion, \bold{209}
       
    18   \item \isasyminverse, \bold{209}
       
    19   \item \verb$^-1$, \bold{209}
       
    20   \item \isactrlsup{\isacharasterisk}, \bold{209}
       
    21   \item \verb$^$\texttt{*}, \bold{209}
       
    22   \item \isasymAnd, \bold{12}, \bold{209}
       
    23   \item \ttAnd, \bold{209}
       
    24   \item \emph {$\Rightarrow $}, \bold{5}
       
    25   \item \ttlbr, \bold{209}
       
    26   \item \ttrbr, \bold{209}
       
    27   \item \texttt {\%}, \bold{209}
       
    28   \item \texttt {;}, \bold{7}
       
    29   \item \isa {()} (constant), \hyperpage{24}
       
    30   \item \isa {+} (tactical), \hyperpage{99}
       
    31   \item \isa {<*lex*>}, \see{lexicographic product}{1}
       
    32   \item \isa {?} (tactical), \hyperpage{99}
       
    33   \item \texttt{|} (tactical), \hyperpage{99}
       
    34 
       
    35   \indexspace
       
    36 
       
    37   \item \isa {0} (constant), \hyperpage{22, 23}, \hyperpage{150}
       
    38   \item \isa {1} (constant), \hyperpage{23}, \hyperpage{150, 151}
       
    39 
       
    40   \indexspace
       
    41 
       
    42   \item abandoning a proof, \bold{13}
       
    43   \item abandoning a theory, \bold{16}
       
    44   \item \isa {abs} (constant), \hyperpage{153}
       
    45   \item \texttt {abs}, \bold{209}
       
    46   \item absolute value, \hyperpage{153}
       
    47   \item \isa {add} (modifier), \hyperpage{29}
       
    48   \item \isa {add_ac} (theorems), \hyperpage{152}
       
    49   \item \isa {add_assoc} (theorem), \bold{152}
       
    50   \item \isa {add_commute} (theorem), \bold{152}
       
    51   \item \isa {add_mult_distrib} (theorem), \bold{151}
       
    52   \item \texttt {ALL}, \bold{209}
       
    53   \item \isa {All} (constant), \hyperpage{109}
       
    54   \item \isa {allE} (theorem), \bold{81}
       
    55   \item \isa {allI} (theorem), \bold{80}
       
    56   \item antiquotation, \bold{61}
       
    57   \item append function, 10--14
       
    58   \item \isacommand {apply} (command), \hyperpage{15}
       
    59   \item \isa {arg_cong} (theorem), \bold{96}
       
    60   \item \isa {arith} (method), \hyperpage{23}, \hyperpage{149}
       
    61   \item arithmetic operations
       
    62     \subitem for \protect\isa{nat}, \hyperpage{23}
       
    63   \item \textsc {ascii} symbols, \bold{209}
       
    64   \item Aspinall, David, \hyperpage{viii}
       
    65   \item associative-commutative function, \hyperpage{176}
       
    66   \item \isa {assumption} (method), \hyperpage{69}
       
    67   \item assumptions
       
    68     \subitem of subgoal, \hyperpage{12}
       
    69     \subitem renaming, 82--83
       
    70     \subitem reusing, 83
       
    71   \item \isa {auto} (method), \hyperpage{38}, \hyperpage{92}
       
    72   \item \isa {axclass}, 164--170
       
    73   \item axiom of choice, \hyperpage{86}
       
    74   \item axiomatic type classes, 164--170
       
    75 
       
    76   \indexspace
       
    77 
       
    78   \item \isacommand {back} (command), \hyperpage{78}
       
    79   \item \isa {Ball} (constant), \hyperpage{109}
       
    80   \item \isa {ballI} (theorem), \bold{108}
       
    81   \item \isa {best} (method), \hyperpage{92}
       
    82   \item \isa {Bex} (constant), \hyperpage{109}
       
    83   \item \isa {bexE} (theorem), \bold{108}
       
    84   \item \isa {bexI} (theorem), \bold{108}
       
    85   \item \isa {bij_def} (theorem), \bold{110}
       
    86   \item bijections, \hyperpage{110}
       
    87   \item binary trees, \hyperpage{18}
       
    88   \item binomial coefficients, \hyperpage{109}
       
    89   \item bisimulations, \hyperpage{116}
       
    90   \item \isa {blast} (method), 89--90, \hyperpage{92}
       
    91   \item \isa {bool} (type), \hyperpage{4, 5}
       
    92   \item boolean expressions example, 20--22
       
    93   \item \isa {bspec} (theorem), \bold{108}
       
    94   \item \isacommand{by} (command), 73
       
    95 
       
    96   \indexspace
       
    97 
       
    98   \item \isa {card} (constant), \hyperpage{109}
       
    99   \item \isa {card_Pow} (theorem), \bold{109}
       
   100   \item \isa {card_Un_Int} (theorem), \bold{109}
       
   101   \item cardinality, \hyperpage{109}
       
   102   \item \isa {case} (symbol), \hyperpage{32, 33}
       
   103   \item \isa {case} expressions, \hyperpage{5, 6}, \hyperpage{18}
       
   104   \item case distinctions, \hyperpage{19}
       
   105   \item case splits, \bold{31}
       
   106   \item \isa {case_tac} (method), \hyperpage{19}, \hyperpage{101}, 
       
   107 		\hyperpage{157}
       
   108   \item \isa {cases} (method), \hyperpage{162}
       
   109   \item \isacommand {chapter} (command), \hyperpage{59}
       
   110   \item \isa {clarify} (method), \hyperpage{91, 92}
       
   111   \item \isa {clarsimp} (method), \hyperpage{91, 92}
       
   112   \item \isa {classical} (theorem), \bold{73}
       
   113   \item coinduction, \bold{116}
       
   114   \item \isa {Collect} (constant), \hyperpage{109}
       
   115   \item compiling expressions example, 36--38
       
   116   \item \isa {Compl_iff} (theorem), \bold{106}
       
   117   \item complement
       
   118     \subitem of a set, \hyperpage{105}
       
   119   \item composition
       
   120     \subitem of functions, \bold{110}
       
   121     \subitem of relations, \bold{112}
       
   122   \item conclusion
       
   123     \subitem of subgoal, \hyperpage{12}
       
   124   \item conditional expressions, \see{\isa{if} expressions}{1}
       
   125   \item conditional simplification rules, \hyperpage{31}
       
   126   \item \isa {cong} (attribute), \hyperpage{176}
       
   127   \item congruence rules, \bold{175}
       
   128   \item \isa {conjE} (theorem), \bold{71}
       
   129   \item \isa {conjI} (theorem), \bold{68}
       
   130   \item \isa {Cons} (constant), \hyperpage{9}
       
   131   \item \isacommand {constdefs} (command), \hyperpage{25}
       
   132   \item \isacommand {consts} (command), \hyperpage{10}
       
   133   \item contrapositives, 73
       
   134   \item converse
       
   135     \subitem of a relation, \bold{112}
       
   136   \item \isa {converse_iff} (theorem), \bold{112}
       
   137   \item CTL, 121--126, 191--193
       
   138 
       
   139   \indexspace
       
   140 
       
   141   \item \isacommand {datatype} (command), \hyperpage{9}, 38--43
       
   142   \item datatypes, 17--22
       
   143     \subitem and nested recursion, \hyperpage{40}, \hyperpage{44}
       
   144     \subitem mutually recursive, \hyperpage{38}
       
   145     \subitem nested, \hyperpage{180}
       
   146   \item \isacommand {defer} (command), \hyperpage{16}, \hyperpage{100}
       
   147   \item Definitional Approach, \hyperpage{26}
       
   148   \item definitions, \bold{25}
       
   149     \subitem unfolding, \bold{30}
       
   150   \item \isacommand {defs} (command), \hyperpage{25}
       
   151   \item \isa {del} (modifier), \hyperpage{29}
       
   152   \item description operators, 85--87
       
   153   \item descriptions
       
   154     \subitem definite, \hyperpage{85}
       
   155     \subitem indefinite, \hyperpage{86}
       
   156   \item \isa {dest} (attribute), \hyperpage{102}
       
   157   \item destruction rules, 71
       
   158   \item \isa {diff_mult_distrib} (theorem), \bold{151}
       
   159   \item difference
       
   160     \subitem of sets, \bold{106}
       
   161   \item \isa {disjCI} (theorem), \bold{74}
       
   162   \item \isa {disjE} (theorem), \bold{70}
       
   163   \item \isa {div} (symbol), \hyperpage{23}
       
   164   \item divides relation, \hyperpage{84}, \hyperpage{95}, 101--104, 
       
   165 		\hyperpage{152}
       
   166   \item division
       
   167     \subitem by negative numbers, \hyperpage{153}
       
   168     \subitem by zero, \hyperpage{152}
       
   169     \subitem for type \protect\isa{nat}, \hyperpage{151}
       
   170   \item documents, \bold{57}
       
   171   \item domain
       
   172     \subitem of a relation, \hyperpage{112}
       
   173   \item \isa {Domain_iff} (theorem), \bold{112}
       
   174   \item \isacommand {done} (command), \hyperpage{13}
       
   175   \item \isa {drule_tac} (method), \hyperpage{76}, \hyperpage{96}
       
   176   \item \isa {dvd_add} (theorem), \bold{152}
       
   177   \item \isa {dvd_anti_sym} (theorem), \bold{152}
       
   178   \item \isa {dvd_def} (theorem), \bold{152}
       
   179 
       
   180   \indexspace
       
   181 
       
   182   \item \isa {elim!} (attribute), \hyperpage{131}
       
   183   \item elimination rules, 69--70
       
   184   \item \isacommand {end} (command), \hyperpage{14}
       
   185   \item \isa {Eps} (constant), \hyperpage{109}
       
   186   \item equality, \hyperpage{5}
       
   187     \subitem of functions, \bold{109}
       
   188     \subitem of records, \hyperpage{161}
       
   189     \subitem of sets, \bold{106}
       
   190   \item \isa {equalityE} (theorem), \bold{106}
       
   191   \item \isa {equalityI} (theorem), \bold{106}
       
   192   \item \isa {erule} (method), \hyperpage{70}
       
   193   \item \isa {erule_tac} (method), \hyperpage{76}
       
   194   \item Euclid's algorithm, 101--104
       
   195   \item even numbers
       
   196     \subitem defining inductively, 127--131
       
   197   \item \texttt {EX}, \bold{209}
       
   198   \item \isa {Ex} (constant), \hyperpage{109}
       
   199   \item \isa {exE} (theorem), \bold{82}
       
   200   \item \isa {exI} (theorem), \bold{82}
       
   201   \item \isa {ext} (theorem), \bold{109}
       
   202   \item \isa {extend} (constant), \hyperpage{163}
       
   203   \item extensionality
       
   204     \subitem for functions, \bold{109, 110}
       
   205     \subitem for records, \hyperpage{162}
       
   206     \subitem for sets, \bold{106}
       
   207   \item \ttEXU, \bold{209}
       
   208 
       
   209   \indexspace
       
   210 
       
   211   \item \isa {False} (constant), \hyperpage{5}
       
   212   \item \isa {fast} (method), \hyperpage{92}, \hyperpage{124}
       
   213   \item Fibonacci function, \hyperpage{47}
       
   214   \item \isa {fields} (constant), \hyperpage{163}
       
   215   \item \isa {finite} (symbol), \hyperpage{109}
       
   216   \item \isa {Finites} (constant), \hyperpage{109}
       
   217   \item fixed points, 116
       
   218   \item flags, \hyperpage{5, 6}, \hyperpage{33}
       
   219     \subitem setting and resetting, \hyperpage{5}
       
   220   \item \isa {force} (method), \hyperpage{91, 92}
       
   221   \item formal comments, \bold{60}
       
   222   \item formal proof documents, \bold{57}
       
   223   \item formulae, 5--6
       
   224   \item forward proof, 92--98
       
   225   \item \isa {frule} (method), 83
       
   226   \item \isa {frule_tac} (method), \hyperpage{76}
       
   227   \item \isa {fst} (constant), \hyperpage{24}
       
   228   \item function types, \hyperpage{5}
       
   229   \item functions, 109--111
       
   230     \subitem partial, \hyperpage{182}
       
   231     \subitem total, \hyperpage{11}, 47--52
       
   232     \subitem underdefined, \hyperpage{183}
       
   233 
       
   234   \indexspace
       
   235 
       
   236   \item \isa {gcd} (constant), 93--94, 101--104
       
   237   \item generalizing for induction, \hyperpage{129}
       
   238   \item generalizing induction formulae, \hyperpage{35}
       
   239   \item Girard, Jean-Yves, \fnote{71}
       
   240   \item Gordon, Mike, \hyperpage{3}
       
   241   \item grammars
       
   242     \subitem defining inductively, 140--145
       
   243   \item ground terms example, 135--140
       
   244 
       
   245   \indexspace
       
   246 
       
   247   \item \isa {hd} (constant), \hyperpage{17}, \hyperpage{37}
       
   248   \item \isacommand {header} (command), \hyperpage{59}
       
   249   \item Hilbert's $\varepsilon$-operator, \hyperpage{86}
       
   250   \item HOLCF, \hyperpage{43}
       
   251   \item Hopcroft, J. E., \hyperpage{145}
       
   252   \item \isa {hypreal} (type), \hyperpage{155}
       
   253 
       
   254   \indexspace
       
   255 
       
   256   \item \isa {Id_def} (theorem), \bold{112}
       
   257   \item \isa {id_def} (theorem), \bold{110}
       
   258   \item identifiers, \bold{6}
       
   259     \subitem qualified, \bold{4}
       
   260   \item identity function, \bold{110}
       
   261   \item identity relation, \bold{112}
       
   262   \item \isa {if} expressions, \hyperpage{5, 6}
       
   263     \subitem simplification of, \hyperpage{33}
       
   264     \subitem splitting of, \hyperpage{31}, \hyperpage{49}
       
   265   \item if-and-only-if, \hyperpage{6}
       
   266   \item \isa {iff} (attribute), \hyperpage{90}, \hyperpage{102}, 
       
   267 		\hyperpage{130}
       
   268   \item \isa {iffD1} (theorem), \bold{94}
       
   269   \item \isa {iffD2} (theorem), \bold{94}
       
   270   \item ignored material, \bold{64}
       
   271   \item image
       
   272     \subitem under a function, \bold{111}
       
   273     \subitem under a relation, \bold{112}
       
   274   \item \isa {image_def} (theorem), \bold{111}
       
   275   \item \isa {Image_iff} (theorem), \bold{112}
       
   276   \item \isa {impI} (theorem), \bold{72}
       
   277   \item implication, 72--73
       
   278   \item \isa {ind_cases} (method), \hyperpage{131}
       
   279   \item \isa {induct_tac} (method), \hyperpage{12}, \hyperpage{19}, 
       
   280 		\hyperpage{52}, \hyperpage{190}
       
   281   \item induction, 186--193
       
   282     \subitem complete, \hyperpage{188}
       
   283     \subitem deriving new schemas, \hyperpage{190}
       
   284     \subitem on a term, \hyperpage{187}
       
   285     \subitem recursion, 51--52
       
   286     \subitem structural, \hyperpage{19}
       
   287     \subitem well-founded, 115
       
   288   \item induction heuristics, 34--36
       
   289   \item \isacommand {inductive} (command), \hyperpage{127}
       
   290   \item inductive definition
       
   291     \subitem simultaneous, \hyperpage{141}
       
   292   \item inductive definitions, 127--145
       
   293   \item \isacommand {inductive\_cases} (command), \hyperpage{131}, 
       
   294 		\hyperpage{139}
       
   295   \item infinitely branching trees, \hyperpage{43}
       
   296   \item infix annotations, \hyperpage{53}
       
   297   \item \isacommand{infixr} (annotation), \hyperpage{10}
       
   298   \item \isa {inj_on_def} (theorem), \bold{110}
       
   299   \item injections, \hyperpage{110}
       
   300   \item \isa {insert} (constant), \hyperpage{107}
       
   301   \item \isa {insert} (method), \hyperpage{97}, 97, \hyperpage{98}
       
   302   \item instance, \bold{166}
       
   303   \item \texttt {INT}, \bold{209}
       
   304   \item \texttt {Int}, \bold{209}
       
   305   \item \isa {int} (type), 153--154
       
   306   \item \isa {INT_iff} (theorem), \bold{108}
       
   307   \item \isa {IntD1} (theorem), \bold{105}
       
   308   \item \isa {IntD2} (theorem), \bold{105}
       
   309   \item integers, 153--154
       
   310   \item \isa {INTER} (constant), \hyperpage{109}
       
   311   \item \texttt {Inter}, \bold{209}
       
   312   \item \isa {Inter_iff} (theorem), \bold{108}
       
   313   \item intersection, \hyperpage{105}
       
   314     \subitem indexed, \hyperpage{108}
       
   315   \item \isa {IntI} (theorem), \bold{105}
       
   316   \item \isa {intro} (method), \hyperpage{74}
       
   317   \item \isa {intro!} (attribute), \hyperpage{128}
       
   318   \item \isa {intro_classes} (method), \hyperpage{166}
       
   319   \item introduction rules, 68--69
       
   320   \item \isa {inv} (constant), \hyperpage{86}
       
   321   \item \isa {inv_image_def} (theorem), \bold{115}
       
   322   \item inverse
       
   323     \subitem of a function, \bold{110}
       
   324     \subitem of a relation, \bold{112}
       
   325   \item inverse image
       
   326     \subitem of a function, \hyperpage{111}
       
   327     \subitem of a relation, \hyperpage{114}
       
   328   \item \isa {itrev} (constant), \hyperpage{34}
       
   329 
       
   330   \indexspace
       
   331 
       
   332   \item \isacommand {kill} (command), \hyperpage{16}
       
   333 
       
   334   \indexspace
       
   335 
       
   336   \item $\lambda$ expressions, \hyperpage{5}
       
   337   \item LCF, \hyperpage{43}
       
   338   \item \isa {LEAST} (symbol), \hyperpage{23}, \hyperpage{85}
       
   339   \item least number operator, \see{\protect\isa{LEAST}}{85}
       
   340   \item Leibniz, Gottfried Wilhelm, \hyperpage{53}
       
   341   \item \isacommand {lemma} (command), \hyperpage{13}
       
   342   \item \isacommand {lemmas} (command), \hyperpage{93}, \hyperpage{102}
       
   343   \item \isa {length} (symbol), \hyperpage{18}
       
   344   \item \isa {length_induct}, \bold{190}
       
   345   \item \isa {less_than} (constant), \hyperpage{114}
       
   346   \item \isa {less_than_iff} (theorem), \bold{114}
       
   347   \item \isa {let} expressions, \hyperpage{5, 6}, \hyperpage{31}
       
   348   \item \isa {Let_def} (theorem), \hyperpage{31}
       
   349   \item \isa {lex_prod_def} (theorem), \bold{115}
       
   350   \item lexicographic product, \bold{115}, \hyperpage{178}
       
   351   \item {\texttt{lfp}}
       
   352     \subitem applications of, \see{CTL}{116}
       
   353   \item Library, \hyperpage{4}
       
   354   \item linear arithmetic, 22--24, \hyperpage{149}
       
   355   \item \isa {List} (theory), \hyperpage{17}
       
   356   \item \isa {list} (type), \hyperpage{5}, \hyperpage{9}, 
       
   357 		\hyperpage{17}
       
   358   \item \isa {list.split} (theorem), \hyperpage{32}
       
   359   \item \isa {lists_mono} (theorem), \bold{137}
       
   360   \item Lowe, Gavin, 196--197
       
   361 
       
   362   \indexspace
       
   363 
       
   364   \item \isa {Main} (theory), \hyperpage{4}
       
   365   \item major premise, \bold{75}
       
   366   \item \isa {make} (constant), \hyperpage{163}
       
   367   \item marginal comments, \bold{60}
       
   368   \item markup commands, \bold{59}
       
   369   \item \isa {max} (constant), \hyperpage{23, 24}
       
   370   \item measure functions, \hyperpage{47}, \hyperpage{114}
       
   371   \item \isa {measure_def} (theorem), \bold{115}
       
   372   \item meta-logic, \bold{80}
       
   373   \item methods, \bold{16}
       
   374   \item \isa {min} (constant), \hyperpage{23, 24}
       
   375   \item mixfix annotations, \bold{53}
       
   376   \item \isa {mod} (symbol), \hyperpage{23}
       
   377   \item \isa {mod_div_equality} (theorem), \bold{151}
       
   378   \item \isa {mod_mult_distrib} (theorem), \bold{151}
       
   379   \item model checking example, 116--126
       
   380   \item \emph{modus ponens}, \hyperpage{67}, \hyperpage{72}
       
   381   \item \isa {mono_def} (theorem), \bold{116}
       
   382   \item monotone functions, \bold{116}, \hyperpage{139}
       
   383     \subitem and inductive definitions, 137--138
       
   384   \item \isa {more} (constant), \hyperpage{158}, \hyperpage{160}
       
   385   \item \isa {mp} (theorem), \bold{72}
       
   386   \item \isa {mult_ac} (theorems), \hyperpage{152}
       
   387   \item multiple inheritance, \bold{169}
       
   388   \item multiset ordering, \bold{115}
       
   389 
       
   390   \indexspace
       
   391 
       
   392   \item \isa {nat} (type), \hyperpage{4}, \hyperpage{22}, 151--153
       
   393   \item \isa {nat_less_induct} (theorem), \hyperpage{188}
       
   394   \item natural deduction, 67--68
       
   395   \item natural numbers, \hyperpage{22}, 151--153
       
   396   \item Needham-Schroeder protocol, 195--197
       
   397   \item negation, 73--75
       
   398   \item \isa {Nil} (constant), \hyperpage{9}
       
   399   \item \isa {no_asm} (modifier), \hyperpage{29}
       
   400   \item \isa {no_asm_simp} (modifier), \hyperpage{30}
       
   401   \item \isa {no_asm_use} (modifier), \hyperpage{30}
       
   402   \item \isa {no_vars} (attribute), \hyperpage{62}
       
   403   \item non-standard reals, \hyperpage{155}
       
   404   \item \isa {None} (constant), \bold{24}
       
   405   \item \isa {notE} (theorem), \bold{73}
       
   406   \item \isa {notI} (theorem), \bold{73}
       
   407   \item numbers, 149--155
       
   408   \item numeric literals, 150
       
   409     \subitem for type \protect\isa{nat}, \hyperpage{151}
       
   410     \subitem for type \protect\isa{real}, \hyperpage{155}
       
   411 
       
   412   \indexspace
       
   413 
       
   414   \item \isa {O} (symbol), \hyperpage{112}
       
   415   \item \texttt {o}, \bold{209}
       
   416   \item \isa {o_def} (theorem), \bold{110}
       
   417   \item \isa {OF} (attribute), 95--96, \hyperpage{96}
       
   418   \item \isa {of} (attribute), \hyperpage{93}, \hyperpage{96}
       
   419   \item \isa {only} (modifier), \hyperpage{29}
       
   420   \item \isacommand {oops} (command), \hyperpage{13}
       
   421   \item \isa {option} (type), \bold{24}
       
   422   \item ordered rewriting, \bold{176}
       
   423   \item overloading, \hyperpage{23}, 165--167
       
   424     \subitem and arithmetic, \hyperpage{150}
       
   425 
       
   426   \indexspace
       
   427 
       
   428   \item pairs and tuples, \hyperpage{24}, 155--158
       
   429   \item parent theories, \bold{4}
       
   430   \item pattern matching
       
   431     \subitem and \isacommand{recdef}, \hyperpage{47}
       
   432   \item patterns
       
   433     \subitem higher-order, \bold{177}
       
   434   \item PDL, 118--120
       
   435   \item \isacommand {pr} (command), \hyperpage{16}, \hyperpage{100}
       
   436   \item \isacommand {prefer} (command), \hyperpage{16}, \hyperpage{100}
       
   437   \item prefix annotation, \hyperpage{56}
       
   438   \item primitive recursion, \see{recursion, primitive}{1}
       
   439   \item \isacommand {primrec} (command), \hyperpage{10}, \hyperpage{18}, 
       
   440 		\hyperpage{41}, 38--43
       
   441   \item print mode, \bold{55}
       
   442   \item \isacommand {print\_syntax} (command), \hyperpage{54}
       
   443   \item product type, \see{pairs and tuples}{1}
       
   444   \item Proof General, \bold{7}
       
   445   \item proof state, \hyperpage{12}
       
   446   \item proofs
       
   447     \subitem abandoning, \bold{13}
       
   448     \subitem examples of failing, 87--89
       
   449   \item protocols
       
   450     \subitem security, 195--205
       
   451 
       
   452   \indexspace
       
   453 
       
   454   \item quantifiers, \hyperpage{6}
       
   455     \subitem and inductive definitions, 135--137
       
   456     \subitem existential, 82
       
   457     \subitem for sets, 108
       
   458     \subitem instantiating, \hyperpage{84}
       
   459     \subitem universal, 79--82
       
   460 
       
   461   \indexspace
       
   462 
       
   463   \item \isa {r_into_rtrancl} (theorem), \bold{112}
       
   464   \item \isa {r_into_trancl} (theorem), \bold{113}
       
   465   \item range
       
   466     \subitem of a function, \hyperpage{111}
       
   467     \subitem of a relation, \hyperpage{112}
       
   468   \item \isa {range} (symbol), \hyperpage{111}
       
   469   \item \isa {Range_iff} (theorem), \bold{112}
       
   470   \item \isa {Real} (theory), \hyperpage{155}
       
   471   \item \isa {real} (type), 154--155
       
   472   \item real numbers, 154--155
       
   473   \item \isacommand {recdef} (command), 47--52, \hyperpage{114}, 
       
   474 		178--186
       
   475     \subitem and numeric literals, \hyperpage{150}
       
   476   \item \isa {recdef_cong} (attribute), \hyperpage{182}
       
   477   \item \isa {recdef_simp} (attribute), \hyperpage{49}
       
   478   \item \isa {recdef_wf} (attribute), \hyperpage{180}
       
   479   \item \isacommand {record} (command), \hyperpage{159}
       
   480   \item records, 158--164
       
   481     \subitem extensible, 160--161
       
   482   \item recursion
       
   483     \subitem guarded, \hyperpage{183}
       
   484     \subitem primitive, \hyperpage{18}
       
   485     \subitem well-founded, \bold{179}
       
   486   \item recursion induction, 51--52
       
   487   \item \isacommand {redo} (command), \hyperpage{16}
       
   488   \item reflexive and transitive closure, 112--114
       
   489   \item reflexive transitive closure
       
   490     \subitem defining inductively, 132--135
       
   491   \item \isa {rel_comp_def} (theorem), \bold{112}
       
   492   \item relations, 111--114
       
   493     \subitem well-founded, 114--115
       
   494   \item \isa {rename_tac} (method), 82--83
       
   495   \item \isa {rev} (constant), \hyperpage{10}, 10--14, \hyperpage{34}
       
   496   \item rewrite rules, \bold{27}
       
   497     \subitem permutative, \bold{176}
       
   498   \item rewriting, \bold{27}
       
   499   \item \isa {rotate_tac} (method), \hyperpage{30}
       
   500   \item \isa {rtrancl_refl} (theorem), \bold{112}
       
   501   \item \isa {rtrancl_trans} (theorem), \bold{112}
       
   502   \item rule induction, 128--130
       
   503   \item rule inversion, 130--131, 139--140
       
   504   \item \isa {rule_format} (attribute), \hyperpage{187}
       
   505   \item \isa {rule_tac} (method), \hyperpage{76}
       
   506     \subitem and renaming, \hyperpage{83}
       
   507 
       
   508   \indexspace
       
   509 
       
   510   \item \isa {safe} (method), \hyperpage{91, 92}
       
   511   \item safe rules, \bold{90}
       
   512   \item \isacommand {sect} (command), \hyperpage{59}
       
   513   \item \isacommand {section} (command), \hyperpage{59}
       
   514   \item selector
       
   515     \subitem record, \hyperpage{159}
       
   516   \item session, \bold{58}
       
   517   \item \isa {set} (type), \hyperpage{5}, \hyperpage{105}
       
   518   \item set comprehensions, 107--108
       
   519   \item \isa {set_ext} (theorem), \bold{106}
       
   520   \item sets, 105--109
       
   521     \subitem finite, \hyperpage{109}
       
   522     \subitem notation for finite, \bold{107}
       
   523   \item settings, \see{flags}{1}
       
   524   \item \isa {show_brackets} (flag), \hyperpage{6}
       
   525   \item \isa {show_types} (flag), \hyperpage{5}, \hyperpage{16}
       
   526   \item \isa {simp} (attribute), \hyperpage{11}, \hyperpage{28}
       
   527   \item \isa {simp} (method), \bold{28}
       
   528   \item \isa {simp} del (attribute), \hyperpage{28}
       
   529   \item \isa {simp_all} (method), \hyperpage{29}, \hyperpage{38}
       
   530   \item simplification, 27--33, 175--178
       
   531     \subitem of \isa{let}-expressions, \hyperpage{31}
       
   532     \subitem with definitions, \hyperpage{30}
       
   533     \subitem with/of assumptions, \hyperpage{29}
       
   534   \item simplification rule, 177--178
       
   535   \item simplification rules, \hyperpage{28}
       
   536     \subitem adding and deleting, \hyperpage{29}
       
   537   \item \isa {simplified} (attribute), \hyperpage{93}, \hyperpage{96}
       
   538   \item \isa {size} (constant), \hyperpage{17}
       
   539   \item \isa {snd} (constant), \hyperpage{24}
       
   540   \item \isa {SOME} (symbol), \hyperpage{86}
       
   541   \item \texttt {SOME}, \bold{209}
       
   542   \item \isa {Some} (constant), \bold{24}
       
   543   \item \isa {some_equality} (theorem), \bold{86}
       
   544   \item \isa {someI} (theorem), \bold{86}
       
   545   \item \isa {someI2} (theorem), \bold{86}
       
   546   \item \isa {someI_ex} (theorem), \bold{87}
       
   547   \item sorts, \hyperpage{170}
       
   548   \item \isa {spec} (theorem), \bold{80}
       
   549   \item \isa {split} (attribute), \hyperpage{32}
       
   550   \item \isa {split} (constant), \hyperpage{156}
       
   551   \item \isa {split} (method), \hyperpage{31}, \hyperpage{156}
       
   552   \item \isa {split} (modifier), \hyperpage{32}
       
   553   \item split rule, \bold{32}
       
   554   \item \isa {split_if} (theorem), \hyperpage{32}
       
   555   \item \isa {split_if_asm} (theorem), \hyperpage{32}
       
   556   \item \isa {ssubst} (theorem), \bold{77}
       
   557   \item structural induction, \see{induction, structural}{1}
       
   558   \item subclasses, \hyperpage{164}, \hyperpage{169}
       
   559   \item subgoal numbering, \hyperpage{46}
       
   560   \item \isa {subgoal_tac} (method), \hyperpage{98}
       
   561   \item subgoals, \hyperpage{12}
       
   562   \item \isacommand {subsect} (command), \hyperpage{59}
       
   563   \item \isacommand {subsection} (command), \hyperpage{59}
       
   564   \item subset relation, \bold{106}
       
   565   \item \isa {subsetD} (theorem), \bold{106}
       
   566   \item \isa {subsetI} (theorem), \bold{106}
       
   567   \item \isa {subst} (method), \hyperpage{77}
       
   568   \item substitution, 77--79
       
   569   \item \isacommand {subsubsect} (command), \hyperpage{59}
       
   570   \item \isacommand {subsubsection} (command), \hyperpage{59}
       
   571   \item \isa {Suc} (constant), \hyperpage{22}
       
   572   \item \isa {surj_def} (theorem), \bold{110}
       
   573   \item surjections, \hyperpage{110}
       
   574   \item \isa {sym} (theorem), \bold{94}
       
   575   \item symbols, \bold{54}
       
   576   \item syntax, \hyperpage{6}, \hyperpage{11}
       
   577   \item \isacommand {syntax} (command), \hyperpage{55}
       
   578   \item syntax (command), \hyperpage{56}
       
   579   \item syntax translations, \bold{56}
       
   580 
       
   581   \indexspace
       
   582 
       
   583   \item tacticals, 99
       
   584   \item tactics, \hyperpage{12}
       
   585   \item \isacommand {term} (command), \hyperpage{16}
       
   586   \item term rewriting, \bold{27}
       
   587   \item termination, \see{functions, total}{1}
       
   588   \item terms, 5
       
   589   \item text, \bold{61}
       
   590   \item text blocks, \bold{60}
       
   591   \item \isa {THE} (symbol), \hyperpage{85}
       
   592   \item \isa {the_equality} (theorem), \bold{85}
       
   593   \item \isa {THEN} (attribute), \bold{94}, \hyperpage{96}, 
       
   594 		\hyperpage{102}
       
   595   \item \isacommand {theorem} (command), \bold{11}, \hyperpage{13}
       
   596   \item theories, 4
       
   597     \subitem abandoning, \bold{16}
       
   598   \item \isacommand {theory} (command), \hyperpage{16}
       
   599   \item theory files, \hyperpage{4}
       
   600   \item \isacommand {thm} (command), \hyperpage{16}
       
   601   \item \isa {tl} (constant), \hyperpage{17}
       
   602   \item \isa {ToyList} example, 9--14
       
   603   \item \isa {trace_simp} (flag), \hyperpage{33}
       
   604   \item tracing the simplifier, \bold{33}
       
   605   \item \isa {trancl_trans} (theorem), \bold{113}
       
   606   \item transition systems, \hyperpage{117}
       
   607   \item \isacommand {translations} (command), \hyperpage{56}
       
   608   \item tries, 44--46
       
   609   \item \isa {True} (constant), \hyperpage{5}
       
   610   \item \isa {truncate} (constant), \hyperpage{163}
       
   611   \item tuples, \see{pairs and tuples}{1}
       
   612   \item txt, \bold{61}
       
   613   \item \isacommand {typ} (command), \hyperpage{16}
       
   614   \item type constraints, \bold{6}
       
   615   \item type constructors, \hyperpage{5}
       
   616   \item type inference, \bold{5}
       
   617   \item type synonyms, \hyperpage{25}
       
   618   \item type variables, \hyperpage{5}
       
   619   \item \isacommand {typedecl} (command), \hyperpage{117}, 
       
   620 		\hyperpage{171}
       
   621   \item \isacommand {typedef} (command), 171--174
       
   622   \item types, 4--5
       
   623     \subitem declaring, 171
       
   624     \subitem defining, 171--174
       
   625   \item \isacommand {types} (command), \hyperpage{25}
       
   626 
       
   627   \indexspace
       
   628 
       
   629   \item Ullman, J. D., \hyperpage{145}
       
   630   \item \texttt {UN}, \bold{209}
       
   631   \item \texttt {Un}, \bold{209}
       
   632   \item \isa {UN_E} (theorem), \bold{108}
       
   633   \item \isa {UN_I} (theorem), \bold{108}
       
   634   \item \isa {UN_iff} (theorem), \bold{108}
       
   635   \item \isa {Un_subset_iff} (theorem), \bold{106}
       
   636   \item \isacommand {undo} (command), \hyperpage{16}
       
   637   \item \isa {unfold} (method), \bold{31}
       
   638   \item unification, 76--79
       
   639   \item \isa {UNION} (constant), \hyperpage{109}
       
   640   \item \texttt {Union}, \bold{209}
       
   641   \item union
       
   642     \subitem indexed, \hyperpage{108}
       
   643   \item \isa {Union_iff} (theorem), \bold{108}
       
   644   \item \isa {unit} (type), \hyperpage{24}
       
   645   \item unknowns, \hyperpage{7}, \bold{68}
       
   646   \item unsafe rules, \bold{90}
       
   647   \item update
       
   648     \subitem record, \hyperpage{159}
       
   649   \item updating a function, \bold{109}
       
   650 
       
   651   \indexspace
       
   652 
       
   653   \item variables, 7
       
   654     \subitem schematic, \hyperpage{7}
       
   655     \subitem type, \hyperpage{5}
       
   656   \item \isa {vimage_def} (theorem), \bold{111}
       
   657 
       
   658   \indexspace
       
   659 
       
   660   \item Wenzel, Markus, \hyperpage{vii}
       
   661   \item \isa {wf_induct} (theorem), \bold{115}
       
   662   \item \isa {wf_inv_image} (theorem), \bold{115}
       
   663   \item \isa {wf_less_than} (theorem), \bold{114}
       
   664   \item \isa {wf_lex_prod} (theorem), \bold{115}
       
   665   \item \isa {wf_measure} (theorem), \bold{115}
       
   666   \item \isa {wf_subset} (theorem), \hyperpage{180}
       
   667   \item \isa {while} (constant), \hyperpage{185}
       
   668   \item \isa {While_Combinator} (theory), \hyperpage{185}
       
   669   \item \isa {while_rule} (theorem), \hyperpage{185}
       
   670 
       
   671   \indexspace
       
   672 
       
   673   \item \isa {zadd_ac} (theorems), \hyperpage{153}
       
   674   \item \isa {zmult_ac} (theorems), \hyperpage{153}
       
   675 
       
   676 \end{theindex}