NEWS
changeset 19233 77ca20b0ed77
parent 19226 20c113d17e01
child 19240 3a73cb17a707
equal deleted inserted replaced
19232:1f5b5dc3f48a 19233:77ca20b0ed77
   337 *** HOL ***
   337 *** HOL ***
   338 
   338 
   339 * Alternative iff syntax "A <-> B" for equality on bool (with priority
   339 * Alternative iff syntax "A <-> B" for equality on bool (with priority
   340 25 like -->); output depends on the "iff" print_mode, the default is
   340 25 like -->); output depends on the "iff" print_mode, the default is
   341 "A = B" (with priority 50).
   341 "A = B" (with priority 50).
       
   342 
       
   343 * Renamed some (legacy-named) constants in HOL.thy:
       
   344     op +   ~> HOL.plus
       
   345     op -   ~> HOL.minus
       
   346     uminus ~> HOL.uminus
       
   347     op *   ~> HOL.times
       
   348 
       
   349 Adaptions may be required in the following cases:
       
   350 
       
   351 a) User-defined constants using any of the names "plus", "minus", or "times"
       
   352 The standard syntax translations for "+", "-" and "*" may go wrong.
       
   353 INCOMPATIBILITY: use more specific names.
       
   354 
       
   355 b) Variables named "plus", "minus", or "times"
       
   356 INCOMPATIBILITY: use more specific names.
       
   357 
       
   358 c) Commutative equations theorems (e. g. "a + b = b + a")
       
   359 Since the changing of names also changes the order of terms, commutative rewrites
       
   360 perhaps will be applied when not applied before or the other way round.
       
   361 Experience shows that thiis is rarely the case (only two adaptions in the whole
       
   362 Isabelle distribution).
       
   363 INCOMPATIBILITY: rewrite proof; sometimes already an exchange of a distributive
       
   364 law may suffice.
       
   365 
       
   366 d) ML code directly refering to constant names
       
   367 This in general only affects hand-written proof tactics, simprocs and so on.
       
   368 INCOMPATIBILITY: grep your sourcecode and replace names.
   342 
   369 
   343 * "LEAST x:A. P" expands to "LEAST x. x:A & P" (input only).
   370 * "LEAST x:A. P" expands to "LEAST x. x:A & P" (input only).
   344 
   371 
   345 * In the context of the assumption "~(s = t)" the Simplifier rewrites
   372 * In the context of the assumption "~(s = t)" the Simplifier rewrites
   346 "t = s" to False (by simproc "neq_simproc").  For backward
   373 "t = s" to False (by simproc "neq_simproc").  For backward