NEWS
author wenzelm
Fri Feb 28 16:58:42 1997 +0100 (1997-02-28)
changeset 2705 d6e83a02061d
parent 2654 6efa602921d1
child 2726 e050f8bb1177
permissions -rw-r--r--
*** empty log message ***
     1 
     2 Isabelle NEWS -- history of user-visible changes
     3 ================================================
     4 
     5 New in Isabelle94-8 (really-soon-now 1997 FIXME)
     6 ------------------------------------------------
     7 
     8 * added token_translation interface (may translate name tokens in
     9 arbitrary ways, dependent on their type (free, bound, tfree, ...));
    10 
    11 * HOLCF changes: derived all rules and arities 
    12   + axiomatic type classes instead of classes 
    13   + typedef instead of faking type definitions
    14   + eliminated the initernal constants less_fun, less_cfun, UU_fun, UU_cfun etc.
    15   + new axclasses cpo,chfin,flat with flat<chfin<pcpo<cpo<po
    16   + eliminated the types void, one, tr
    17   + use unit lift and bool lift (with translations) instead of one and tr
    18   + eliminated blift from Lift3.thy (use Def instead of blift)
    19   all eliminated rules are derivd as theorems --> no visible changes 
    20 
    21 * simplifier: new functions delcongs, deleqcongs, and Delcongs. richer rep_ss.
    22 
    23 * simplifier: the solver is now split into a safe and an unsafe part.
    24   This should be invisible for the normal user, except that the functions
    25   setsolver and addsolver have been renamed to setSolver and addSolver.
    26   added safe_asm_full_simp_tac. 
    27 
    28 * classical reasoner: little changes in semantics of addafter (now: addaltern),
    29   renamed setwrapper to setWrapper, addwrapper to addWrapper
    30   added safe wrapper (and access functions for it)
    31 
    32 * improved combination of classical reasoner and simplifier: 
    33   new addss, auto_tac, functions for handling clasimpsets, ...
    34   Now, the simplification is safe (therefore moved to safe_step_tac) and thus
    35   more complete, as multiple instantiation of unknowns (with slow_tac) possible
    36   COULD MAKE EXISTING PROOFS FAIL; in case of problems with unstable old proofs:
    37                                    use unsafe_addss and unsafe_auto_tac
    38 
    39 * HOL: primrec now also works with type nat;
    40 
    41 * new utilities to build / run / maintain Isabelle etc. (in parts
    42 still somewhat experimental); old Makefiles etc. still functional;
    43 
    44 * simplifier: termless order as parameter; added interface for
    45 simplification procedures (functions that produce *proven* rewrite
    46 rules on the fly, depending on current redex);
    47 
    48 * now supports alternative (named) syntax tables (parser and pretty
    49 printer); internal interface is provided by add_modesyntax(_i);
    50 
    51 * Pure, FOL, ZF, HOL, HOLCF now support symbolic input and output; to
    52 be used in conjunction with the isabelle symbol font; uses the
    53 "symbols" syntax table;
    54 
    55 * infixes may now be declared with names independent of their syntax;
    56 
    57 * added typed_print_translation (like print_translation, but may
    58 access type of constant);
    59 
    60 * prlim command for dealing with lots of subgoals (an easier way of
    61 setting goals_limit);
    62 
    63 * HOL/ex/Ring.thy declares cring_simp, which solves equational
    64 problems in commutative rings, using axiomatic type classes for + and *;
    65 
    66 * ZF now has Fast_tac, Simp_tac and Auto_tac.  WARNING: don't use
    67 ZF.thy anymore!  Contains fewer defs and could make a bogus simpset.
    68 Beware of Union_iff.  eq_cs is gone, can be put back as ZF_cs addSIs
    69 [equalityI];
    70 
    71 * more examples in HOL/MiniML and HOL/Auth;
    72 
    73 * more default rewrite rules in HOL for quantifiers, union/intersection;
    74 
    75 * the NEWS file;
    76 
    77 
    78 New in Isabelle94-7 (November 96)
    79 ---------------------------------
    80 
    81 * allowing negative levels (as offsets) in prlev and choplev;
    82 
    83 * super-linear speedup for large simplifications;
    84 
    85 * FOL, ZF and HOL now use miniscoping: rewriting pushes
    86 quantifications in as far as possible (COULD MAKE EXISTING PROOFS
    87 FAIL); can suppress it using the command Delsimps (ex_simps @
    88 all_simps); De Morgan laws are also now included, by default;
    89 
    90 * improved printing of ==>  :  ~:
    91 
    92 * new object-logic "Sequents" adds linear logic, while replacing LK
    93 and Modal (thanks to Sara Kalvala);
    94 
    95 * HOL/Auth: correctness proofs for authentication protocols;
    96 
    97 * HOL: new auto_tac combines rewriting and classical reasoning (many
    98 examples on HOL/Auth);
    99 
   100 * HOL: new command AddIffs for declaring theorems of the form P=Q to
   101 the rewriter and classical reasoner simultaneously;
   102 
   103 * function uresult no longer returns theorems in "standard" format;
   104 regain previous version by: val uresult = standard o uresult;
   105 
   106 
   107 
   108 New in Isabelle94-6
   109 -------------------
   110 
   111 * oracles -- these establish an interface between Isabelle and trusted
   112 external reasoners, which may deliver results as theorems;
   113 
   114 * proof objects (in particular record all uses of oracles);
   115 
   116 * Simp_tac, Fast_tac, etc. that refer to implicit simpset / claset;
   117 
   118 * "constdefs" section in theory files;
   119 
   120 * "primrec" section (HOL) no longer requires names;
   121 
   122 * internal type "tactic" now simply "thm -> thm Sequence.seq";
   123 
   124 
   125 
   126 New in Isabelle94-5
   127 -------------------
   128 
   129 * reduced space requirements;
   130 
   131 * automatic HTML generation from theories;
   132 
   133 * theory files no longer require "..." (quotes) around most types;
   134 
   135 * new examples, including two proofs of the Church-Rosser theorem;
   136 
   137 * non-curried (1994) version of HOL is no longer distributed;
   138 
   139 
   140 
   141 New in Isabelle94-4
   142 -------------------
   143 
   144 * greatly space requirements;
   145 
   146 * theory files (.thy) no longer require \...\ escapes at line breaks;
   147 
   148 * searchable theorem database (see the section "Retrieving theorems" on 
   149 page 8 of the Reference Manual);
   150 
   151 * new examples, including Grabczewski's monumental case study of the
   152 Axiom of Choice;
   153 
   154 * The previous version of HOL renamed to Old_HOL;
   155 
   156 * The new version of HOL (previously called CHOL) uses a curried syntax 
   157 for functions.  Application looks like f a b instead of f(a,b);
   158 
   159 * Mutually recursive inductive definitions finally work in HOL;
   160 
   161 * In ZF, pattern-matching on tuples is now available in all abstractions and
   162 translates to the operator "split";
   163 
   164 
   165 
   166 New in Isabelle94-3
   167 -------------------
   168 
   169 * new infix operator, addss, allowing the classical reasoner to 
   170 perform simplification at each step of its search.  Example:
   171 	fast_tac (cs addss ss)
   172 
   173 * a new logic, CHOL, the same as HOL, but with a curried syntax 
   174 for functions.  Application looks like f a b instead of f(a,b).  Also pairs 
   175 look like (a,b) instead of <a,b>;
   176 
   177 * PLEASE NOTE: CHOL will eventually replace HOL!
   178 
   179 * In CHOL, pattern-matching on tuples is now available in all abstractions.
   180 It translates to the operator "split".  A new theory of integers is available;
   181 
   182 * In ZF, integer numerals now denote two's-complement binary integers.
   183 Arithmetic operations can be performed by rewriting.  See ZF/ex/Bin.ML;
   184 
   185 * Many new examples: I/O automata, Church-Rosser theorem, equivalents 
   186 of the Axiom of Choice;
   187 
   188 
   189 
   190 New in Isabelle94-2
   191 -------------------
   192 
   193 * Significantly faster resolution;  
   194 
   195 * the different sections in a .thy file can now be mixed and repeated
   196 freely;
   197 
   198 * Database of theorems for FOL, HOL and ZF.  New
   199 commands including qed, qed_goal and bind_thm store theorems in the database.
   200 
   201 * Simple database queries: return a named theorem (get_thm) or all theorems of
   202 a given theory (thms_of), or find out what theory a theorem was proved in
   203 (theory_of_thm);
   204 
   205 * Bugs fixed in the inductive definition and datatype packages;
   206 
   207 * The classical reasoner provides deepen_tac and depth_tac, making FOL_dup_cs
   208 and HOL_dup_cs obsolete;
   209 
   210 * Syntactic ambiguities caused by the new treatment of syntax in Isabelle94-1
   211 have been removed;
   212 
   213 * Simpler definition of function space in ZF;
   214 
   215 * new results about cardinal and ordinal arithmetic in ZF;
   216 
   217 * 'subtype' facility in HOL for introducing new types as subsets of existing
   218 types;
   219 
   220 
   221 $Id$