doc-src/ERRATA.txt
author huffman
Thu Apr 19 10:49:47 2012 +0200 (2012-04-19)
changeset 47579 28f6f4ad69bf
parent 42637 381fdcab0f36
permissions -rw-r--r--
tuned lemmas (v)image_id;
removed duplicate of vimage_id
     1 ERRATA in the book "Isabelle: A Generic Theorem Prover"
     2 by Lawrence C. Paulson (contributions by Tobias Nipkow)
     3 
     4 Some of these errors are typographical but most of them are due to continuing
     5 changes to Isabelle.
     6 
     7 Thanks to Sara Kalvala, Tobias Nipkow
     8 
     9 
    10 INTRODUCTION TO ISABELLE
    11 
    12 Advanced Methods
    13 
    14 page 46: the theory sections can appear in any order
    15 
    16 page 48: theories may now contain a separate definition part
    17 
    18 page 52, middle: the declaration "types bool,nat" should be "types bool nat"
    19 
    20 page 57, bottom: should be addsimps in 
    21 	val add_ss = FOL_ss addrews [add_0, add_Suc]
    22 
    23 
    24 ISABELLE REFERENCE MANUAL
    25 
    26 Introduction
    27 
    28 page 67: show_brackets is another flag, controlling display of bracketting
    29 show_sorts:=true forces display of types
    30 
    31 Tactics
    32 
    33 page 85: subgoals_tac is another tactic, for multiple calls to subgoal_tac
    34 
    35 Theories
    36 
    37 page 117: the three lines of ML shown can be abbreviated to just
    38 	init_thy_reader();
    39 
    40 page 118: extend_theory has been replaced by numerous functions for adding
    41 types, constants, axioms, etc.
    42 
    43 Defining Logics
    44 
    45 
    46 
    47 page 127: type constraints ("::") now have a very low priority of 4.
    48 As in ML, they must usually be enclosed in paretheses.
    49 
    50 Syntax Transformations
    51 
    52 page 145, line -5: delete repeated "the" in "before the the .thy file"
    53 
    54 Simplification
    55 
    56 page 157 display: Union operator is too big
    57 
    58 page 158, "!": Isabelle now permits more general left-hand sides, so called
    59 higher-order patterns.
    60 
    61 Classical reasoner
    62 
    63 page 176: Classical sets may specify a "wrapper tactical", which can be used
    64 to define addss.  The package also provides tactics slow_tac, slow_best_tac,
    65 depth_tac and deepen_tac.
    66 
    67 ISABELLE'S OBJECT-LOGICS
    68 
    69 First-Order Logic
    70 
    71 pages 191, 196: FOL_dup_cs is now deleted (use deepen_tac FOL_cs instead)
    72 
    73 Zermelo-Fraenkel Set Theory
    74 
    75 page 204: type i has class term, not (just) logic
    76 
    77 page 209: axioms have been renamed:
    78 	union_iff is now Union_iff
    79 	power_set is now Pow_iff
    80 
    81 page 215, bottom of figure 17.10: DiffD2 is now  "c : A - B ==> c ~: B"
    82 
    83 page 215, bottom: rules mem_anti_sym and mem_anti_refl are now mem_asym and
    84 mem_irrefl
    85 
    86 page 222, top: missing braces in qconverse_def (around right-hand side)
    87 and QSigma_def (around <x;y>)
    88 
    89 page 223, top: lfp_def, gfp_def have missing braces around the argument of
    90 Inter, Union
    91 
    92 page 228: now there is also a theory of cardinal numbers and some
    93 developments involving the Axiom of Choice.
    94 
    95 page 229: now there is another examples directory, IMP (a semantics
    96 equivalence proof for an imperative language)
    97 
    98 Higher-Order Logic
    99 
   100 page 243: Pow is a new constant of type 'a set => 'a set set
   101 
   102 page 246: Pow is defined by   Pow(A) == {B. B <= A}
   103 empty_def should be  {} == {x.False}
   104 
   105 page 248: Pow has the rules
   106 	PowI     A<=B ==> A: Pow(B)
   107 	PowD     A: Pow(B) ==> A<=B
   108 
   109 page 251: split now has type [['a,'b] => 'c, 'a * 'b] => 'c
   110 Definition modified accordingly
   111 
   112 page 252: sum_case now has type ['a=>'c,'b=>'c, 'a+'b] =>'c
   113 Definition and rules modified accordingly
   114 
   115 page 252: HOL_dup_cs is now deleted (use deepen_tac HOL_cs instead)
   116 
   117 page 254: nat_case now has type ['a, nat=>'a, nat] =>'a
   118 Definition modified accordingly
   119 
   120 page 256,258: list_case now takes the list as its last argument, not the
   121 first.
   122 
   123 page 259: HOL theory files may now include datatype declarations, primitive
   124 recursive function definitions, and (co)inductive definitions.  These new
   125 sections are available separately at
   126     http://www.cl.cam.ac.uk/users/lcp/archive/ml/HOL-extensions.dvi.gz
   127 
   128 page 259: now there is another examples directory, IMP (a semantics
   129 equivalence proof for an imperative language)