NEWS
changeset 32427 0a94e1f264ce
parent 32388 b23a4326b9bb
child 32433 11661f4327bb
equal deleted inserted replaced
32426:dd25b3055c4e 32427:0a94e1f264ce
    16 are formally declared.  INCOMPATIBILITY.
    16 are formally declared.  INCOMPATIBILITY.
    17 
    17 
    18 
    18 
    19 *** HOL ***
    19 *** HOL ***
    20 
    20 
    21 * New testing tool "Mirabelle" for automated (proof) tools. Applies several
    21 * New testing tool "Mirabelle" for automated (proof) tools. Applies
    22 tools and tactics like sledgehammer, metis, or quickcheck, to every proof step
    22 several tools and tactics like sledgehammer, metis, or quickcheck, to
    23 in a theory. To be used in batch mode via "isabelle mirabelle".
    23 every proof step in a theory. To be used in batch mode via the
    24 
    24 "mirabelle" utility.
    25 * New proof method "sos" (sum of squares) for nonlinear real arithmetic
    25 
    26 (originally due to John Harison). It requires Library/Sum_Of_Squares.
    26 * New proof method "sos" (sum of squares) for nonlinear real
    27 It is not a complete decision procedure but works well in practice
    27 arithmetic (originally due to John Harison). It requires
    28 on quantifier-free real arithmetic with +, -, *, ^, =, <= and <,
    28 Library/Sum_Of_Squares.  It is not a complete decision procedure but
    29 i.e. boolean combinations of equalities and inequalities between
    29 works well in practice on quantifier-free real arithmetic with +, -,
    30 polynomials. It makes use of external semidefinite programming solvers.
    30 *, ^, =, <= and <, i.e. boolean combinations of equalities and
    31 For more information and examples see Library/Sum_Of_Squares.
    31 inequalities between polynomials. It makes use of external
    32 
    32 semidefinite programming solvers.  For more information and examples
    33 * Set.UNIV and Set.empty are mere abbreviations for top and bot.  INCOMPATIBILITY.
    33 see src/HOL/Library/Sum_Of_Squares.
    34 
    34 
    35 * More convenient names for set intersection and union.  INCOMPATIBILITY:
    35 * Set.UNIV and Set.empty are mere abbreviations for top and bot.
    36 
    36 INCOMPATIBILITY.
       
    37 
       
    38 * More convenient names for set intersection and union.
       
    39 INCOMPATIBILITY:
    37     Set.Int ~>  Set.inter
    40     Set.Int ~>  Set.inter
    38     Set.Un ~>   Set.union
    41     Set.Un ~>   Set.union
    39 
    42 
    40 * Code generator attributes follow the usual underscore convention:
    43 * Code generator attributes follow the usual underscore convention:
    41     code_unfold     replaces    code unfold
    44     code_unfold     replaces    code unfold
    42     code_post       replaces    code post
    45     code_post       replaces    code post
    43     etc.
    46     etc.
    44   INCOMPATIBILITY.
    47   INCOMPATIBILITY.
    45 
       
    46 * New quickcheck implementation using new code generator.
       
    47 
    48 
    48 * New class "boolean_algebra".
    49 * New class "boolean_algebra".
    49 
    50 
    50 * Refinements to lattices classes:
    51 * Refinements to lattices classes:
    51   - added boolean_algebra type class
    52   - added boolean_algebra type class
    79 * Power operations on relations and functions are now one dedicate
    80 * Power operations on relations and functions are now one dedicate
    80 constant compow with infix syntax "^^".  Power operations on
    81 constant compow with infix syntax "^^".  Power operations on
    81 multiplicative monoids retains syntax "^" and is now defined generic
    82 multiplicative monoids retains syntax "^" and is now defined generic
    82 in class power.  INCOMPATIBILITY.
    83 in class power.  INCOMPATIBILITY.
    83 
    84 
    84 * Relation composition "R O S" now has a "more standard" argument order,
    85 * Relation composition "R O S" now has a "more standard" argument
    85 i.e., "R O S = {(x,z). EX y. (x,y) : R & (y,z) : S }".
    86 order, i.e., "R O S = {(x,z). EX y. (x,y) : R & (y,z) : S }".
    86 INCOMPATIBILITY: Rewrite propositions with "S O R" --> "R O S". Proofs
    87 INCOMPATIBILITY: Rewrite propositions with "S O R" --> "R O S". Proofs
    87 may occationally break, since the O_assoc rule was not rewritten like this.
    88 may occationally break, since the O_assoc rule was not rewritten like
    88 Fix using O_assoc[symmetric].
    89 this.  Fix using O_assoc[symmetric].  The same applies to the curried
    89 The same applies to the curried version "R OO S".
    90 version "R OO S".
    90 
    91 
    91 * GCD now has functions Gcd/GCD and Lcm/LCM for the gcd and lcm of finite and
    92 * Theory GCD now has functions Gcd/GCD and Lcm/LCM for the gcd and lcm
    92 infinite sets. It is shown that they form a complete lattice.
    93 of finite and infinite sets. It is shown that they form a complete
       
    94 lattice.
    93 
    95 
    94 * ML antiquotation @{code_datatype} inserts definition of a datatype
    96 * ML antiquotation @{code_datatype} inserts definition of a datatype
    95 generated by the code generator; see Predicate.thy for an example.
    97 generated by the code generator; see Predicate.thy for an example.
    96 
    98 
    97 * New method "linarith" invokes existing linear arithmetic decision
    99 * New method "linarith" invokes existing linear arithmetic decision
    98 procedure only.
   100 procedure only.
    99 
   101 
   100 * Implementation of quickcheck using generic code generator; default
   102 * New implementation of quickcheck uses generic code generator;
   101 generators are provided for all suitable HOL types, records and
   103 default generators are provided for all suitable HOL types, records
   102 datatypes.
   104 and datatypes.
   103 
   105 
   104 * Constants Set.Pow and Set.image now with authentic syntax;
   106 * Constants Set.Pow and Set.image now with authentic syntax;
   105 object-logic definitions Set.Pow_def and Set.image_def.
   107 object-logic definitions Set.Pow_def and Set.image_def.
   106 INCOMPATIBILITY.
   108 INCOMPATIBILITY.
   107 
   109 
   119 with "_package", e.g.:
   121 with "_package", e.g.:
   120 
   122 
   121     DatatypePackage ~> Datatype
   123     DatatypePackage ~> Datatype
   122     InductivePackage ~> Inductive
   124     InductivePackage ~> Inductive
   123 
   125 
   124     etc.
       
   125 
       
   126 INCOMPATIBILITY.
   126 INCOMPATIBILITY.
   127 
   127 
   128 * NewNumberTheory: Jeremy Avigad's new version of part of
   128 * NewNumberTheory: Jeremy Avigad's new version of part of
   129 NumberTheory.  If possible, use NewNumberTheory, not NumberTheory.
   129 NumberTheory.  If possible, use NewNumberTheory, not NumberTheory.
   130 
   130 
   131 * Simplified interfaces of datatype module.  INCOMPATIBILITY.
   131 * Discontinued abbreviation "arbitrary" of constant
   132 
   132 "undefined". INCOMPATIBILITY, use "undefined" directly.
   133 * Abbreviation "arbitrary" of "undefined" has disappeared; use
       
   134 "undefined" directly.  INCOMPATIBILITY.
       
   135 
   133 
   136 * New evaluator "approximate" approximates an real valued term using
   134 * New evaluator "approximate" approximates an real valued term using
   137 the same method as the approximation method.
   135 the same method as the approximation method.
   138 
   136 
   139 * Method "approximate" supports now arithmetic expressions as
   137 * Method "approximate" supports now arithmetic expressions as
   153 *** ML ***
   151 *** ML ***
   154 
   152 
   155 * PARALLEL_CHOICE and PARALLEL_GOALS provide basic support for
   153 * PARALLEL_CHOICE and PARALLEL_GOALS provide basic support for
   156 parallel tactical reasoning.
   154 parallel tactical reasoning.
   157 
   155 
   158 * Tactical FOCUS is similar to SUBPROOF, but allows the body tactic to
   156 * Tacticals Subgoal.FOCUS, Subgoal.FOCUS_PREMS, Subgoal.FOCUS_PARAMS
   159 introduce new subgoals and schematic variables.  FOCUS_PARAMS is
   157 are similar to SUBPROOF, but are slightly more flexible: only the
   160 similar, but focuses on the parameter prefix only, leaving subgoal
   158 specified parts of the subgoal are imported into the context, and the
   161 premises unchanged.
   159 body tactic may introduce new subgoals and schematic variables.
       
   160 
       
   161 * Old tactical METAHYPS, which does not observe the proof context, has
       
   162 been renamed to Old_Goals.METAHYPS and awaits deletion.  Use SUBPROOF
       
   163 or Subgoal.FOCUS etc.
   162 
   164 
   163 * Renamed functor TableFun to Table, and GraphFun to Graph.  (Since
   165 * Renamed functor TableFun to Table, and GraphFun to Graph.  (Since
   164 functors have their own ML name space there is no point to mark them
   166 functors have their own ML name space there is no point to mark them
   165 separately.)  Minor INCOMPATIBILITY.
   167 separately.)  Minor INCOMPATIBILITY.
   166 
   168