1 Isabelle NEWS -- history user-relevant changes |
1 Isabelle NEWS -- history user-relevant changes |
2 ============================================== |
2 ============================================== |
3 |
3 |
4 New in this Isabelle version |
4 New in Isabelle2014 (August 2014) |
5 ---------------------------- |
5 --------------------------------- |
6 |
6 |
7 *** General *** |
7 *** General *** |
8 |
8 |
9 * Document antiquotation @{url} produces markup for the given URL, |
9 * Support for official Standard ML within the Isabelle context. |
10 which results in an active hyperlink within the text. |
10 Command 'SML_file' reads and evaluates the given Standard ML file. |
11 |
11 Toplevel bindings are stored within the theory context; the initial |
12 * Document antiquotation @{file_unchecked} is like @{file}, but does |
12 environment is restricted to the Standard ML implementation of |
13 not check existence within the file-system. |
13 Poly/ML, without the add-ons of Isabelle/ML. Commands 'SML_import' |
14 |
14 and 'SML_export' allow to exchange toplevel bindings between the two |
15 * Discontinued legacy_isub_isup, which was a temporary Isabelle/ML |
15 separate environments. See also ~~/src/Tools/SML/Examples.thy for |
16 workaround in Isabelle2013-1. The prover process no longer accepts |
16 some examples. |
17 old identifier syntax with \<^isub> or \<^isup>. |
|
18 |
|
19 * Syntax of document antiquotation @{rail} now uses \<newline> instead |
|
20 of "\\", to avoid the optical illusion of escaped backslash within |
|
21 string token. Minor INCOMPATIBILITY. |
|
22 |
|
23 * Lexical syntax (inner and outer) supports text cartouches with |
|
24 arbitrary nesting, and without escapes of quotes etc. The Prover IDE |
|
25 supports input via ` (backquote). |
|
26 |
|
27 * The outer syntax categories "text" (for formal comments and document |
|
28 markup commands) and "altstring" (for literal fact references) allow |
|
29 cartouches as well, in addition to the traditional mix of quotations. |
|
30 |
17 |
31 * More static checking of proof methods, which allows the system to |
18 * More static checking of proof methods, which allows the system to |
32 form a closure over the concrete syntax. Method arguments should be |
19 form a closure over the concrete syntax. Method arguments should be |
33 processed in the original proof context as far as possible, before |
20 processed in the original proof context as far as possible, before |
34 operating on the goal state. In any case, the standard discipline for |
21 operating on the goal state. In any case, the standard discipline for |
35 subgoal-addressing needs to be observed: no subgoals or a subgoal |
22 subgoal-addressing needs to be observed: no subgoals or a subgoal |
36 number that is out of range produces an empty result sequence, not an |
23 number that is out of range produces an empty result sequence, not an |
37 exception. Potential INCOMPATIBILITY for non-conformant tactical |
24 exception. Potential INCOMPATIBILITY for non-conformant tactical |
38 proof tools. |
25 proof tools. |
39 |
26 |
40 * Support for official Standard ML within the Isabelle context. |
27 * Lexical syntax (inner and outer) supports text cartouches with |
41 Command 'SML_file' reads and evaluates the given Standard ML file. |
28 arbitrary nesting, and without escapes of quotes etc. The Prover IDE |
42 Toplevel bindings are stored within the theory context; the initial |
29 supports input via ` (backquote). |
43 environment is restricted to the Standard ML implementation of |
30 |
44 Poly/ML, without the add-ons of Isabelle/ML. Commands 'SML_import' |
31 * The outer syntax categories "text" (for formal comments and document |
45 and 'SML_export' allow to exchange toplevel bindings between the two |
32 markup commands) and "altstring" (for literal fact references) allow |
46 separate environments. See also ~~/src/Tools/SML/Examples.thy for |
33 cartouches as well, in addition to the traditional mix of quotations. |
47 some examples. |
34 |
48 |
35 * Syntax of document antiquotation @{rail} now uses \<newline> instead |
49 * Updated and extended manuals: "codegen", "datatypes", |
36 of "\\", to avoid the optical illusion of escaped backslash within |
50 "implementation", "jedit", "system". |
37 string token. General renovation of its syntax using text cartouces. |
|
38 Minor INCOMPATIBILITY. |
|
39 |
|
40 * Discontinued legacy_isub_isup, which was a temporary workaround for |
|
41 Isabelle/ML in Isabelle2013-1. The prover process no longer accepts |
|
42 old identifier syntax with \<^isub> or \<^isup>. Potential |
|
43 INCOMPATIBILITY. |
|
44 |
|
45 * Document antiquotation @{url} produces markup for the given URL, |
|
46 which results in an active hyperlink within the text. |
|
47 |
|
48 * Document antiquotation @{file_unchecked} is like @{file}, but does |
|
49 not check existence within the file-system. |
|
50 |
|
51 * Updated and extended manuals: codegen, datatypes, implementation, |
|
52 isar-ref, jedit, system. |
51 |
53 |
52 |
54 |
53 *** Prover IDE -- Isabelle/Scala/jEdit *** |
55 *** Prover IDE -- Isabelle/Scala/jEdit *** |
54 |
56 |
55 * Document panel: simplied interaction where every single mouse click |
57 * Improved Document panel: simplied interaction where every single |
56 (re)opens document via desktop environment or as jEdit buffer. |
58 mouse click (re)opens document via desktop environment or as jEdit |
57 |
59 buffer. |
58 * Support for Navigator plugin (with toolbar buttons). |
60 |
|
61 * Support for Navigator plugin (with toolbar buttons), with connection |
|
62 to PIDE hyperlinks. |
|
63 |
|
64 * Auxiliary files ('ML_file' etc.) are managed by the Prover IDE. |
|
65 Open text buffers take precedence over copies within the file-system. |
|
66 |
|
67 * Improved support for Isabelle/ML, with jEdit mode "isabelle-ml" for |
|
68 auxiliary ML files. |
59 |
69 |
60 * Improved syntactic and semantic completion mechanism, with simple |
70 * Improved syntactic and semantic completion mechanism, with simple |
61 templates, completion language context, name-space completion, |
71 templates, completion language context, name-space completion, |
62 file-name completion, spell-checker completion. |
72 file-name completion, spell-checker completion. |
63 |
73 |
89 * Option "jedit_print_mode" (see also "Plugin Options / Isabelle / |
93 * Option "jedit_print_mode" (see also "Plugin Options / Isabelle / |
90 General") allows to specify additional print modes for the prover |
94 General") allows to specify additional print modes for the prover |
91 process, without requiring old-fashioned command-line invocation of |
95 process, without requiring old-fashioned command-line invocation of |
92 "isabelle jedit -m MODE". |
96 "isabelle jedit -m MODE". |
93 |
97 |
|
98 * More support for remote files (e.g. http) using standard Java |
|
99 networking operations instead of jEdit virtual file-systems. |
|
100 |
|
101 * Improved Console/Scala plugin: more uniform scala.Console output, |
|
102 more robust treatment of threads and interrupts. |
|
103 |
|
104 * Improved management of dockable windows: clarified keyboard focus |
|
105 and window placement wrt. main editor view; optional menu item to |
|
106 "Detach" a copy where this makes sense. |
|
107 |
94 * New Simplifier Trace panel provides an interactive view of the |
108 * New Simplifier Trace panel provides an interactive view of the |
95 simplification process, enabled by the "simplifier_trace" attribute |
109 simplification process, enabled by the "simplifier_trace" attribute |
96 within the context. |
110 within the context. |
97 |
111 |
98 * More support for remote files (e.g. http) using standard Java |
|
99 networking operations instead of jEdit virtual file-systems. |
|
100 |
|
101 * Improved Console/Scala plugin: more uniform scala.Console output, |
|
102 more robust treatment of threads and interrupts. |
|
103 |
|
104 * Improved management of dockable windows: clarified keyboard focus |
|
105 and window placement wrt. main editor view; optional menu item to |
|
106 "Detach" a copy where this makes sense. |
|
107 |
112 |
108 |
113 |
109 *** Pure *** |
114 *** Pure *** |
110 |
115 |
111 * Basic constants of Pure use more conventional names and are always |
116 * Basic constants of Pure use more conventional names and are always |
137 the auxiliary aliases are deleted. |
142 the auxiliary aliases are deleted. |
138 |
143 |
139 * Low-level type-class commands 'classes', 'classrel', 'arities' have |
144 * Low-level type-class commands 'classes', 'classrel', 'arities' have |
140 been discontinued to avoid the danger of non-trivial axiomatization |
145 been discontinued to avoid the danger of non-trivial axiomatization |
141 that is not immediately visible. INCOMPATIBILITY, use regular |
146 that is not immediately visible. INCOMPATIBILITY, use regular |
142 'instance' with proof. The required OFCLASS(...) theorem might be |
147 'instance' command with proof. The required OFCLASS(...) theorem |
143 postulated via 'axiomatization' beforehand, or the proof finished |
148 might be postulated via 'axiomatization' beforehand, or the proof |
144 trivially if the underlying class definition is made vacuous (without |
149 finished trivially if the underlying class definition is made vacuous |
145 any assumptions). See also Isabelle/ML operations |
150 (without any assumptions). See also Isabelle/ML operations |
146 Axclass.axiomatize_class, Axclass.axiomatize_classrel, |
151 Axclass.class_axiomatization, Axclass.classrel_axiomatization, |
147 Axclass.axiomatize_arity. |
152 Axclass.arity_axiomatization. |
148 |
153 |
149 * Attributes "where" and "of" allow an optional context of local |
154 * Attributes "where" and "of" allow an optional context of local |
150 variables ('for' declaration): these variables become schematic in the |
155 variables ('for' declaration): these variables become schematic in the |
151 instantiated theorem. |
156 instantiated theorem. |
152 |
157 |
165 context discipline. See also Assumption.add_assumes and the more |
170 context discipline. See also Assumption.add_assumes and the more |
166 primitive Thm.assume_hyps. |
171 primitive Thm.assume_hyps. |
167 |
172 |
168 * Inner syntax token language allows regular quoted strings "..." |
173 * Inner syntax token language allows regular quoted strings "..." |
169 (only makes sense in practice, if outer syntax is delimited |
174 (only makes sense in practice, if outer syntax is delimited |
170 differently). |
175 differently, e.g. via cartouches). |
171 |
176 |
172 * Code generator preprocessor: explicit control of simp tracing |
177 * Code generator preprocessor: explicit control of simp tracing on a |
173 on a per-constant basis. See attribute "code_preproc". |
178 per-constant basis. See attribute "code_preproc". |
174 |
179 |
175 * Command 'print_term_bindings' supersedes 'print_binds' for clarity, |
180 * Command 'print_term_bindings' supersedes 'print_binds' for clarity, |
176 but the latter is retained some time as Proof General legacy. |
181 but the latter is retained some time as Proof General legacy. |
177 |
182 |
178 |
183 |
179 *** HOL *** |
184 *** HOL *** |
180 |
185 |
181 * Qualified String.implode and String.explode. INCOMPATIBILITY. |
186 * Qualified String.implode and String.explode. INCOMPATIBILITY. |
182 |
187 |
183 * Command and antiquotation ''value'' are hardcoded against nbe and |
188 * Command and antiquotation "value" are now hardcoded against nbe and |
184 ML now. Minor INCOMPATIBILITY. |
189 ML. Minor INCOMPATIBILITY. |
185 |
190 |
186 * Separate command ''approximate'' for approximative computation |
191 * Separate command "approximate" for approximative computation in |
187 in Decision_Procs/Approximation. Minor INCOMPATIBILITY. |
192 src/HOL/Decision_Procs/Approximation. Minor INCOMPATIBILITY. |
188 |
193 |
189 * Adjustion of INF and SUP operations: |
194 * Adjustion of INF and SUP operations: |
190 * Elongated constants INFI and SUPR to INFIMUM and SUPREMUM. |
195 - Elongated constants INFI and SUPR to INFIMUM and SUPREMUM. |
191 * Consolidated theorem names containing INFI and SUPR: have INF |
196 - Consolidated theorem names containing INFI and SUPR: have INF and |
192 and SUP instead uniformly. |
197 SUP instead uniformly. |
193 * More aggressive normalization of expressions involving INF and Inf |
198 - More aggressive normalization of expressions involving INF and Inf |
194 or SUP and Sup. |
199 or SUP and Sup. |
195 * INF_image and SUP_image do not unfold composition. |
200 - INF_image and SUP_image do not unfold composition. |
196 * Dropped facts INF_comp, SUP_comp. |
201 - Dropped facts INF_comp, SUP_comp. |
197 * Default congruence rules strong_INF_cong and strong_SUP_cong, |
202 - Default congruence rules strong_INF_cong and strong_SUP_cong, with |
198 with simplifier implication in premises. Generalize and replace |
203 simplifier implication in premises. Generalize and replace former |
199 former INT_cong, SUP_cong |
204 INT_cong, SUP_cong |
|
205 |
200 INCOMPATIBILITY. |
206 INCOMPATIBILITY. |
201 |
207 |
202 * Swapped orientation of facts image_comp and vimage_comp: |
208 * Swapped orientation of facts image_comp and vimage_comp: |
|
209 |
203 image_compose ~> image_comp [symmetric] |
210 image_compose ~> image_comp [symmetric] |
204 image_comp ~> image_comp [symmetric] |
211 image_comp ~> image_comp [symmetric] |
205 vimage_compose ~> vimage_comp [symmetric] |
212 vimage_compose ~> vimage_comp [symmetric] |
206 vimage_comp ~> vimage_comp [symmetric] |
213 vimage_comp ~> vimage_comp [symmetric] |
207 INCOMPATIBILITY. |
214 |
208 |
215 INCOMPATIBILITY. |
209 * Simplifier: Enhanced solver of preconditions of rewrite rules |
216 |
210 can now deal with conjunctions. |
217 * Simplifier: Enhanced solver of preconditions of rewrite rules can |
211 For help with converting proofs, the old behaviour of the simplifier |
218 now deal with conjunctions. For help with converting proofs, the old |
212 can be restored like this: declare/using [[simp_legacy_precond]] |
219 behaviour of the simplifier can be restored like this: declare/using |
213 This configuration option will disappear again in the future. |
220 [[simp_legacy_precond]]. This configuration option will disappear |
|
221 again in the future. INCOMPATIBILITY. |
214 |
222 |
215 * HOL-Word: |
223 * HOL-Word: |
216 * Abandoned fact collection "word_arith_alts", which is a |
224 - Abandoned fact collection "word_arith_alts", which is a duplicate |
217 duplicate of "word_arith_wis". |
225 of "word_arith_wis". |
218 * Dropped first (duplicated) element in fact collections |
226 - Dropped first (duplicated) element in fact collections |
219 "sint_word_ariths", "word_arith_alts", "uint_word_ariths", |
227 "sint_word_ariths", "word_arith_alts", "uint_word_ariths", |
220 "uint_word_arith_bintrs". |
228 "uint_word_arith_bintrs". |
221 |
229 |
222 * Code generator: enforce case of identifiers only for strict |
230 * Code generator: enforce case of identifiers only for strict target |
223 target language requirements. INCOMPATIBILITY. |
231 language requirements. INCOMPATIBILITY. |
224 |
232 |
225 * Code generator: explicit proof contexts in many ML interfaces. |
233 * Code generator: explicit proof contexts in many ML interfaces. |
226 INCOMPATIBILITY. |
234 INCOMPATIBILITY. |
227 |
235 |
228 * Code generator: minimize exported identifiers by default. |
236 * Code generator: minimize exported identifiers by default. Minor |
229 Minor INCOMPATIBILITY. |
237 INCOMPATIBILITY. |
230 |
238 |
231 * Code generation for SML and OCaml: dropped arcane "no_signatures" option. |
239 * Code generation for SML and OCaml: dropped arcane "no_signatures" |
232 Minor INCOMPATIBILITY. |
240 option. Minor INCOMPATIBILITY. |
233 |
241 |
234 * Simproc "finite_Collect" is no longer enabled by default, due to |
242 * Simproc "finite_Collect" is no longer enabled by default, due to |
235 spurious crashes and other surprises. Potential INCOMPATIBILITY. |
243 spurious crashes and other surprises. Potential INCOMPATIBILITY. |
236 |
244 |
237 * Moved new (co)datatype package and its dependencies from "HOL-BNF" to "HOL". |
245 * Moved new (co)datatype package and its dependencies from session |
238 The "bnf", "wrap_free_constructors", "datatype_new", "codatatype", |
246 "HOL-BNF" to "HOL". The commands 'bnf', 'wrap_free_constructors', |
239 "primcorec", and "primcorecursive" commands are now part of "Main". |
247 'datatype_new', 'codatatype', 'primcorec', 'primcorecursive' are now |
|
248 part of theory "Main". |
|
249 |
240 Theory renamings: |
250 Theory renamings: |
241 FunDef.thy ~> Fun_Def.thy (and Fun_Def_Base.thy) |
251 FunDef.thy ~> Fun_Def.thy (and Fun_Def_Base.thy) |
242 Library/Wfrec.thy ~> Wfrec.thy |
252 Library/Wfrec.thy ~> Wfrec.thy |
243 Library/Zorn.thy ~> Zorn.thy |
253 Library/Zorn.thy ~> Zorn.thy |
244 Cardinals/Order_Relation.thy ~> Order_Relation.thy |
254 Cardinals/Order_Relation.thy ~> Order_Relation.thy |
258 BNF/BNF_Util.thy ~> BNF_Util.thy |
268 BNF/BNF_Util.thy ~> BNF_Util.thy |
259 BNF/Coinduction.thy ~> Coinduction.thy |
269 BNF/Coinduction.thy ~> Coinduction.thy |
260 BNF/More_BNFs.thy ~> Library/More_BNFs.thy |
270 BNF/More_BNFs.thy ~> Library/More_BNFs.thy |
261 BNF/Countable_Type.thy ~> Library/Countable_Set_Type.thy |
271 BNF/Countable_Type.thy ~> Library/Countable_Set_Type.thy |
262 BNF/Examples/* ~> BNF_Examples/* |
272 BNF/Examples/* ~> BNF_Examples/* |
|
273 |
263 New theories: |
274 New theories: |
264 Wellorder_Extension.thy (split from Zorn.thy) |
275 Wellorder_Extension.thy (split from Zorn.thy) |
265 Library/Cardinal_Notations.thy |
276 Library/Cardinal_Notations.thy |
266 Library/BNF_Axomatization.thy |
277 Library/BNF_Axomatization.thy |
267 BNF_Examples/Misc_Primcorec.thy |
278 BNF_Examples/Misc_Primcorec.thy |
268 BNF_Examples/Stream_Processor.thy |
279 BNF_Examples/Stream_Processor.thy |
|
280 |
269 Discontinued theories: |
281 Discontinued theories: |
270 BNF/BNF.thy |
282 BNF/BNF.thy |
271 BNF/Equiv_Relations_More.thy |
283 BNF/Equiv_Relations_More.thy |
272 INCOMPATIBILITY. |
284 |
|
285 INCOMPATIBILITY. |
273 |
286 |
274 * New (co)datatype package: |
287 * New (co)datatype package: |
275 * "primcorec" is fully implemented. |
288 - Command 'primcorec' is fully implemented. |
276 * "datatype_new" generates size functions ("size_xxx" and "size") as |
289 - Command 'datatype_new' generates size functions ("size_xxx" and |
277 required by "fun". |
290 "size") as required by 'fun'. |
278 * BNFs are integrated with the Lifting tool and new-style (co)datatypes |
291 - BNFs are integrated with the Lifting tool and new-style |
279 with Transfer. |
292 (co)datatypes with Transfer. |
280 * Renamed commands: |
293 - Renamed commands: |
281 datatype_new_compat ~> datatype_compat |
294 datatype_new_compat ~> datatype_compat |
282 primrec_new ~> primrec |
295 primrec_new ~> primrec |
283 wrap_free_constructors ~> free_constructors |
296 wrap_free_constructors ~> free_constructors |
284 INCOMPATIBILITY. |
297 INCOMPATIBILITY. |
285 * The generated constants "xxx_case" and "xxx_rec" have been renamed |
298 - The generated constants "xxx_case" and "xxx_rec" have been renamed |
286 "case_xxx" and "rec_xxx" (e.g., "prod_case" ~> "case_prod"). |
299 "case_xxx" and "rec_xxx" (e.g., "prod_case" ~> "case_prod"). |
287 INCOMPATIBILITY. |
300 INCOMPATIBILITY. |
288 * The constant "xxx_(un)fold" and related theorems are no longer generated. |
301 - The constant "xxx_(un)fold" and related theorems are no longer |
289 Use "xxx_(co)rec" or define "xxx_(un)fold" manually using "prim(co)rec". |
302 generated. Use "xxx_(co)rec" or define "xxx_(un)fold" manually |
|
303 using "prim(co)rec". |
290 INCOMPATIBILITY. |
304 INCOMPATIBILITY. |
291 * No discriminators are generated for nullary constructors by default, |
305 - No discriminators are generated for nullary constructors by |
292 eliminating the need for the odd "=:" syntax. |
306 default, eliminating the need for the odd "=:" syntax. |
293 INCOMPATIBILITY. |
307 INCOMPATIBILITY. |
294 * No discriminators or selectors are generated by default by |
308 - No discriminators or selectors are generated by default by |
295 "datatype_new", unless custom names are specified or the new |
309 "datatype_new", unless custom names are specified or the new |
296 "discs_sels" option is passed. |
310 "discs_sels" option is passed. |
297 INCOMPATIBILITY. |
311 INCOMPATIBILITY. |
298 |
312 |
299 * Old datatype package: |
313 * Old datatype package: |
300 * The generated theorems "xxx.cases" and "xxx.recs" have been renamed |
314 - The generated theorems "xxx.cases" and "xxx.recs" have been |
301 "xxx.case" and "xxx.rec" (e.g., "sum.cases" -> "sum.case"). |
315 renamed "xxx.case" and "xxx.rec" (e.g., "sum.cases" -> |
302 INCOMPATIBILITY. |
316 "sum.case"). INCOMPATIBILITY. |
303 * The generated constants "xxx_case", "xxx_rec", and "xxx_size" have been |
317 - The generated constants "xxx_case", "xxx_rec", and "xxx_size" have |
304 renamed "case_xxx", "rec_xxx", and "size_xxx" (e.g., "prod_case" ~> |
318 been renamed "case_xxx", "rec_xxx", and "size_xxx" (e.g., |
305 "case_prod"). |
319 "prod_case" ~> "case_prod"). INCOMPATIBILITY. |
306 INCOMPATIBILITY. |
320 |
307 |
321 * The types "'a list" and "'a option", their set and map functions, |
308 * The types "'a list" and "'a option", their set and map functions, their |
322 their relators, and their selectors are now produced using the new |
309 relators, and their selectors are now produced using the new BNF-based |
323 BNF-based datatype package. |
310 datatype package. |
324 |
311 Renamed constants: |
325 Renamed constants: |
312 Option.set ~> set_option |
326 Option.set ~> set_option |
313 Option.map ~> map_option |
327 Option.map ~> map_option |
314 option_rel ~> rel_option |
328 option_rel ~> rel_option |
|
329 |
315 Renamed theorems: |
330 Renamed theorems: |
316 set_def ~> set_rec[abs_def] |
331 set_def ~> set_rec[abs_def] |
317 map_def ~> map_rec[abs_def] |
332 map_def ~> map_rec[abs_def] |
318 Option.map_def ~> map_option_case[abs_def] (with "case_option" instead of "rec_option") |
333 Option.map_def ~> map_option_case[abs_def] (with "case_option" instead of "rec_option") |
319 option.recs ~> option.rec |
334 option.recs ~> option.rec |
321 set.simps ~> set_simps (or the slightly different "list.set") |
336 set.simps ~> set_simps (or the slightly different "list.set") |
322 map.simps ~> list.map |
337 map.simps ~> list.map |
323 hd.simps ~> list.sel(1) |
338 hd.simps ~> list.sel(1) |
324 tl.simps ~> list.sel(2-3) |
339 tl.simps ~> list.sel(2-3) |
325 the.simps ~> option.sel |
340 the.simps ~> option.sel |
326 INCOMPATIBILITY. |
341 |
|
342 INCOMPATIBILITY. |
327 |
343 |
328 * The following map functions and relators have been renamed: |
344 * The following map functions and relators have been renamed: |
329 sum_map ~> map_sum |
345 sum_map ~> map_sum |
330 map_pair ~> map_prod |
346 map_pair ~> map_prod |
331 prod_rel ~> rel_prod |
347 prod_rel ~> rel_prod |
332 sum_rel ~> rel_sum |
348 sum_rel ~> rel_sum |
333 fun_rel ~> rel_fun |
349 fun_rel ~> rel_fun |
334 set_rel ~> rel_set |
350 set_rel ~> rel_set |
335 filter_rel ~> rel_filter |
351 filter_rel ~> rel_filter |
336 fset_rel ~> rel_fset (in "Library/FSet.thy") |
352 fset_rel ~> rel_fset (in "src/HOL/Library/FSet.thy") |
337 cset_rel ~> rel_cset (in "Library/Countable_Set_Type.thy") |
353 cset_rel ~> rel_cset (in "src/HOL/Library/Countable_Set_Type.thy") |
338 vset ~> rel_vset (in "Library/Quotient_Set.thy") |
354 vset ~> rel_vset (in "src/HOL/Library/Quotient_Set.thy") |
339 |
355 |
340 * New theories: |
356 INCOMPATIBILITY. |
341 Cardinals/Ordinal_Arithmetic.thy |
357 |
342 Library/Tree |
358 * New theory src/HOL/Cardinals/Ordinal_Arithmetic.thy. |
343 |
359 |
344 * Theory reorganizations: |
360 * New theory src/HOL/Library/Tree.thy. |
345 * Big_Operators.thy ~> Groups_Big.thy and Lattices_Big.thy |
361 |
|
362 * Theory reorganization: |
|
363 Big_Operators.thy ~> Groups_Big.thy and Lattices_Big.thy |
346 |
364 |
347 * Consolidated some facts about big group operators: |
365 * Consolidated some facts about big group operators: |
348 |
366 |
349 setsum_0' ~> setsum.neutral |
367 setsum_0' ~> setsum.neutral |
350 setsum_0 ~> setsum.neutral_const |
368 setsum_0 ~> setsum.neutral_const |
409 Dropped setsum_cong2 (simple variant of setsum.cong). |
427 Dropped setsum_cong2 (simple variant of setsum.cong). |
410 Dropped setsum_inter_restrict' (simple variant of setsum.inter_restrict) |
428 Dropped setsum_inter_restrict' (simple variant of setsum.inter_restrict) |
411 Dropped setsum_reindex_id, setprod_reindex_id |
429 Dropped setsum_reindex_id, setprod_reindex_id |
412 (simple variants of setsum.reindex [symmetric], setprod.reindex [symmetric]). |
430 (simple variants of setsum.reindex [symmetric], setprod.reindex [symmetric]). |
413 |
431 |
414 INCOMPATIBILITY. |
432 INCOMPATIBILITY. |
415 |
433 |
416 * New internal SAT solver "cdclite" that produces models and proof traces. |
434 * New internal SAT solver "cdclite" that produces models and proof |
417 This solver replaces the internal SAT solvers "enumerate" and "dpll". |
435 traces. This solver replaces the internal SAT solvers "enumerate" and |
418 Applications that explicitly used one of these two SAT solvers should |
436 "dpll". Applications that explicitly used one of these two SAT |
419 use "cdclite" instead. In addition, "cdclite" is now the default SAT |
437 solvers should use "cdclite" instead. In addition, "cdclite" is now |
420 solver for the "sat" and "satx" proof methods and corresponding tactics; |
438 the default SAT solver for the "sat" and "satx" proof methods and |
421 the old default can be restored using |
439 corresponding tactics; the old default can be restored using "declare |
422 "declare [[sat_solver = zchaff_with_proofs]]". Minor INCOMPATIBILITY. |
440 [[sat_solver = zchaff_with_proofs]]". Minor INCOMPATIBILITY. |
423 |
441 |
424 * SMT module: |
442 * SMT module: A new version of the SMT module, temporarily called |
425 * A new version of the SMT module, temporarily called "SMT2", uses SMT-LIB 2 |
443 "SMT2", uses SMT-LIB 2 and supports recent versions of Z3 (e.g., |
426 and supports recent versions of Z3 (e.g., 4.3). The new proof method is |
444 4.3). The new proof method is called "smt2". CVC3 and CVC4 are also |
427 called "smt2". CVC3 and CVC4 are also supported as oracles. Yices is no |
445 supported as oracles. Yices is no longer supported, because no version |
428 longer supported, because no version of the solver can handle both |
446 of the solver can handle both SMT-LIB 2 and quantifiers. |
429 SMT-LIB 2 and quantifiers. |
|
430 |
447 |
431 * Sledgehammer: |
448 * Sledgehammer: |
432 - Z3 can now produce Isar proofs. |
449 - Z3 can now produce Isar proofs. |
433 - MaSh overhaul: |
450 - MaSh overhaul: |
434 - New SML-based learning engines eliminate the dependency on Python |
451 . New SML-based learning engines eliminate the dependency on |
435 and increase performance and reliability. |
452 Python and increase performance and reliability. |
436 - MaSh and MeSh are now used by default together with the traditional |
453 . MaSh and MeSh are now used by default together with the |
437 MePo (Meng-Paulson) relevance filter. To disable MaSh, set the "MaSh" |
454 traditional MePo (Meng-Paulson) relevance filter. To disable |
438 system option in Plugin Options / Isabelle / General to "none". |
455 MaSh, set the "MaSh" system option in Isabelle/jEdit Plugin |
|
456 Options / Isabelle / General to "none". |
439 - New option: |
457 - New option: |
440 smt_proofs |
458 smt_proofs |
441 - Renamed options: |
459 - Renamed options: |
442 isar_compress ~> compress |
460 isar_compress ~> compress |
443 isar_try0 ~> try0 |
461 isar_try0 ~> try0 |
444 INCOMPATIBILITY. |
462 |
445 |
463 INCOMPATIBILITY. |
446 * Metis: |
464 |
447 - Removed legacy proof method 'metisFT'. Use 'metis (full_types)' instead. |
465 * Metis: Removed legacy proof method 'metisFT'. Use 'metis |
448 INCOMPATIBILITY. |
466 (full_types)' instead. INCOMPATIBILITY. |
449 |
467 |
450 * Try0: Added 'algebra' and 'meson' to the set of proof methods. |
468 * Try0: Added 'algebra' and 'meson' to the set of proof methods. |
451 |
469 |
452 * Command renaming: enriched_type ~> functor. INCOMPATIBILITY. |
470 * Command renaming: enriched_type ~> functor. INCOMPATIBILITY. |
453 |
471 |
511 |
529 |
512 For min_max.inf_sup_aci, prefer (one of) min.commute, min.assoc, |
530 For min_max.inf_sup_aci, prefer (one of) min.commute, min.assoc, |
513 min.left_commute, min.left_idem, max.commute, max.assoc, |
531 min.left_commute, min.left_idem, max.commute, max.assoc, |
514 max.left_commute, max.left_idem directly. |
532 max.left_commute, max.left_idem directly. |
515 |
533 |
516 For min_max.inf_sup_ord, prefer (one of) min.cobounded1, min.cobounded2, |
534 For min_max.inf_sup_ord, prefer (one of) min.cobounded1, |
517 max.cobounded1m max.cobounded2 directly. |
535 min.cobounded2, max.cobounded1m max.cobounded2 directly. |
518 |
536 |
519 For min_ac or max_ac, prefer more general collection ac_simps. |
537 For min_ac or max_ac, prefer more general collection ac_simps. |
520 |
538 |
521 INCOMPATBILITY. |
539 INCOMPATBILITY. |
522 |
540 |
523 * Word library: bit representations prefer type bool over type bit. |
541 * HOL-Word: bit representations prefer type bool over type bit. |
524 INCOMPATIBILITY. |
542 INCOMPATIBILITY. |
525 |
543 |
526 * Theorem disambiguation Inf_le_Sup (on finite sets) ~> Inf_fin_le_Sup_fin. |
544 * Theorem disambiguation Inf_le_Sup (on finite sets) ~> |
527 INCOMPATIBILITY. |
545 Inf_fin_le_Sup_fin. INCOMPATIBILITY. |
528 |
546 |
529 * Code generations are provided for make, fields, extend and truncate |
547 * Code generations are provided for make, fields, extend and truncate |
530 operations on records. |
548 operations on records. |
531 |
549 |
532 * Qualified constant names Wellfounded.acc, Wellfounded.accp. |
550 * Qualified constant names Wellfounded.acc, Wellfounded.accp. |
533 INCOMPATIBILITY. |
551 INCOMPATIBILITY. |
534 |
552 |
535 * Fact generalization and consolidation: |
553 * Fact generalization and consolidation: |
536 neq_one_mod_two, mod_2_not_eq_zero_eq_one_int ~> not_mod_2_eq_0_eq_1 |
554 neq_one_mod_two, mod_2_not_eq_zero_eq_one_int ~> not_mod_2_eq_0_eq_1 |
|
555 |
537 INCOMPATIBILITY. |
556 INCOMPATIBILITY. |
538 |
557 |
539 * Purely algebraic definition of even. Fact generalization and consolidation: |
558 * Purely algebraic definition of even. Fact generalization and |
|
559 consolidation: |
540 nat_even_iff_2_dvd, int_even_iff_2_dvd ~> even_iff_2_dvd |
560 nat_even_iff_2_dvd, int_even_iff_2_dvd ~> even_iff_2_dvd |
541 even_zero_(nat|int) ~> even_zero |
561 even_zero_(nat|int) ~> even_zero |
|
562 |
542 INCOMPATIBILITY. |
563 INCOMPATIBILITY. |
543 |
564 |
544 * Abolished neg_numeral. |
565 * Abolished neg_numeral. |
545 * Canonical representation for minus one is "- 1". |
566 - Canonical representation for minus one is "- 1". |
546 * Canonical representation for other negative numbers is "- (numeral _)". |
567 - Canonical representation for other negative numbers is "- (numeral _)". |
547 * When devising rule sets for number calculation, consider the |
568 - When devising rule sets for number calculation, consider the |
548 following canonical cases: 0, 1, numeral _, - 1, - numeral _. |
569 following canonical cases: 0, 1, numeral _, - 1, - numeral _. |
549 * HOLogic.dest_number also recognizes numerals in non-canonical forms |
570 - HOLogic.dest_number also recognizes numerals in non-canonical forms |
550 like "numeral One", "- numeral One", "- 0" and even "- ... - _". |
571 like "numeral One", "- numeral One", "- 0" and even "- ... - _". |
551 * Syntax for negative numerals is mere input syntax. |
572 - Syntax for negative numerals is mere input syntax. |
|
573 |
552 INCOMPATIBILITY. |
574 INCOMPATIBILITY. |
553 |
575 |
554 * Elimination of fact duplicates: |
576 * Elimination of fact duplicates: |
555 equals_zero_I ~> minus_unique |
577 equals_zero_I ~> minus_unique |
556 diff_eq_0_iff_eq ~> right_minus_eq |
578 diff_eq_0_iff_eq ~> right_minus_eq |
557 nat_infinite ~> infinite_UNIV_nat |
579 nat_infinite ~> infinite_UNIV_nat |
558 int_infinite ~> infinite_UNIV_int |
580 int_infinite ~> infinite_UNIV_int |
|
581 |
559 INCOMPATIBILITY. |
582 INCOMPATIBILITY. |
560 |
583 |
561 * Fact name consolidation: |
584 * Fact name consolidation: |
562 diff_def, diff_minus, ab_diff_minus ~> diff_conv_add_uminus |
585 diff_def, diff_minus, ab_diff_minus ~> diff_conv_add_uminus |
563 minus_le_self_iff ~> neg_less_eq_nonneg |
586 minus_le_self_iff ~> neg_less_eq_nonneg |
564 le_minus_self_iff ~> less_eq_neg_nonpos |
587 le_minus_self_iff ~> less_eq_neg_nonpos |
565 neg_less_nonneg ~> neg_less_pos |
588 neg_less_nonneg ~> neg_less_pos |
566 less_minus_self_iff ~> less_neg_neg [simp] |
589 less_minus_self_iff ~> less_neg_neg [simp] |
|
590 |
567 INCOMPATIBILITY. |
591 INCOMPATIBILITY. |
568 |
592 |
569 * More simplification rules on unary and binary minus: |
593 * More simplification rules on unary and binary minus: |
570 add_diff_cancel, add_diff_cancel_left, add_le_same_cancel1, |
594 add_diff_cancel, add_diff_cancel_left, add_le_same_cancel1, |
571 add_le_same_cancel2, add_less_same_cancel1, add_less_same_cancel2, |
595 add_le_same_cancel2, add_less_same_cancel1, add_less_same_cancel2, |
572 add_minus_cancel, diff_add_cancel, le_add_same_cancel1, |
596 add_minus_cancel, diff_add_cancel, le_add_same_cancel1, |
573 le_add_same_cancel2, less_add_same_cancel1, less_add_same_cancel2, |
597 le_add_same_cancel2, less_add_same_cancel1, less_add_same_cancel2, |
574 minus_add_cancel, uminus_add_conv_diff. These correspondingly |
598 minus_add_cancel, uminus_add_conv_diff. These correspondingly have |
575 have been taken away from fact collections algebra_simps and |
599 been taken away from fact collections algebra_simps and field_simps. |
576 field_simps. INCOMPATIBILITY. |
600 INCOMPATIBILITY. |
577 |
601 |
578 To restore proofs, the following patterns are helpful: |
602 To restore proofs, the following patterns are helpful: |
579 |
603 |
580 a) Arbitrary failing proof not involving "diff_def": |
604 a) Arbitrary failing proof not involving "diff_def": |
581 Consider simplification with algebra_simps or field_simps. |
605 Consider simplification with algebra_simps or field_simps. |
586 c) Simplification with "diff_def": just drop "diff_def". |
610 c) Simplification with "diff_def": just drop "diff_def". |
587 Consider simplification with algebra_simps or field_simps; |
611 Consider simplification with algebra_simps or field_simps; |
588 or the brute way with |
612 or the brute way with |
589 "simp add: diff_conv_add_uminus del: add_uminus_conv_diff". |
613 "simp add: diff_conv_add_uminus del: add_uminus_conv_diff". |
590 |
614 |
591 * SUP and INF generalized to conditionally_complete_lattice |
615 * SUP and INF generalized to conditionally_complete_lattice. |
592 |
616 |
593 * Theory Lubs moved HOL image to HOL-Library. It is replaced by |
617 * Theory Lubs moved HOL image to HOL-Library. It is replaced by |
594 Conditionally_Complete_Lattices. INCOMPATIBILITY. |
618 Conditionally_Complete_Lattices. INCOMPATIBILITY. |
595 |
619 |
596 * Introduce bdd_above and bdd_below in Conditionally_Complete_Lattices, use them |
620 * Introduce bdd_above and bdd_below in theory |
597 instead of explicitly stating boundedness of sets. |
621 Conditionally_Complete_Lattices, use them instead of explicitly |
598 |
622 stating boundedness of sets. |
599 * ccpo.admissible quantifies only over non-empty chains to allow |
623 |
600 more syntax-directed proof rules; the case of the empty chain |
624 * ccpo.admissible quantifies only over non-empty chains to allow more |
601 shows up as additional case in fixpoint induction proofs. |
625 syntax-directed proof rules; the case of the empty chain shows up as |
602 INCOMPATIBILITY |
626 additional case in fixpoint induction proofs. INCOMPATIBILITY. |
603 |
627 |
604 * Removed and renamed theorems in Series: |
628 * Removed and renamed theorems in Series: |
605 summable_le ~> suminf_le |
629 summable_le ~> suminf_le |
606 suminf_le ~> suminf_le_const |
630 suminf_le ~> suminf_le_const |
607 series_pos_le ~> setsum_le_suminf |
631 series_pos_le ~> setsum_le_suminf |
615 ratio_test ~> summable_ratio_test |
639 ratio_test ~> summable_ratio_test |
616 |
640 |
617 removed series_zero, replaced by sums_finite |
641 removed series_zero, replaced by sums_finite |
618 |
642 |
619 removed auxiliary lemmas: |
643 removed auxiliary lemmas: |
|
644 |
620 sumr_offset, sumr_offset2, sumr_offset3, sumr_offset4, sumr_group, |
645 sumr_offset, sumr_offset2, sumr_offset3, sumr_offset4, sumr_group, |
621 half, le_Suc_ex_iff, lemma_realpow_diff_sumr, real_setsum_nat_ivl_bounded, |
646 half, le_Suc_ex_iff, lemma_realpow_diff_sumr, |
622 summable_le2, ratio_test_lemma2, sumr_minus_one_realpow_zerom, |
647 real_setsum_nat_ivl_bounded, summable_le2, ratio_test_lemma2, |
623 sumr_one_lb_realpow_zero, summable_convergent_sumr_iff, sumr_diff_mult_const |
648 sumr_minus_one_realpow_zerom, sumr_one_lb_realpow_zero, |
|
649 summable_convergent_sumr_iff, sumr_diff_mult_const |
|
650 |
624 INCOMPATIBILITY. |
651 INCOMPATIBILITY. |
625 |
652 |
626 * Replace (F)DERIV syntax by has_derivative: |
653 * Replace (F)DERIV syntax by has_derivative: |
627 - "(f has_derivative f') (at x within s)" replaces "FDERIV f x : s : f'" |
654 - "(f has_derivative f') (at x within s)" replaces "FDERIV f x : s : f'" |
628 |
655 |
630 |
657 |
631 - "f differentiable at x within s" replaces "_ differentiable _ in _" syntax |
658 - "f differentiable at x within s" replaces "_ differentiable _ in _" syntax |
632 |
659 |
633 - removed constant isDiff |
660 - removed constant isDiff |
634 |
661 |
635 - "DERIV f x : f'" and "FDERIV f x : f'" syntax is only available as input |
662 - "DERIV f x : f'" and "FDERIV f x : f'" syntax is only available as |
636 syntax. |
663 input syntax. |
637 |
664 |
638 - "DERIV f x : s : f'" and "FDERIV f x : s : f'" syntax removed |
665 - "DERIV f x : s : f'" and "FDERIV f x : s : f'" syntax removed. |
639 |
666 |
640 - Renamed FDERIV_... lemmas to has_derivative_... |
667 - Renamed FDERIV_... lemmas to has_derivative_... |
641 |
668 |
642 - renamed deriv (the syntax constant used for "DERIV _ _ :> _") to DERIV |
669 - renamed deriv (the syntax constant used for "DERIV _ _ :> _") to DERIV |
643 |
670 |
644 - removed DERIV_intros, has_derivative_eq_intros |
671 - removed DERIV_intros, has_derivative_eq_intros |
645 |
672 |
646 - introduced derivative_intros and deriative_eq_intros which includes now rules for |
673 - introduced derivative_intros and deriative_eq_intros which |
647 DERIV, has_derivative and has_vector_derivative. |
674 includes now rules for DERIV, has_derivative and |
|
675 has_vector_derivative. |
648 |
676 |
649 - Other renamings: |
677 - Other renamings: |
650 differentiable_def ~> real_differentiable_def |
678 differentiable_def ~> real_differentiable_def |
651 differentiableE ~> real_differentiableE |
679 differentiableE ~> real_differentiableE |
652 fderiv_def ~> has_derivative_at |
680 fderiv_def ~> has_derivative_at |
653 field_fderiv_def ~> field_has_derivative_at |
681 field_fderiv_def ~> field_has_derivative_at |
654 isDiff_der ~> differentiable_def |
682 isDiff_der ~> differentiable_def |
655 deriv_fderiv ~> has_field_derivative_def |
683 deriv_fderiv ~> has_field_derivative_def |
656 deriv_def ~> DERIV_def |
684 deriv_def ~> DERIV_def |
|
685 |
657 INCOMPATIBILITY. |
686 INCOMPATIBILITY. |
658 |
687 |
659 * Include more theorems in continuous_intros. Remove the continuous_on_intros, |
688 * Include more theorems in continuous_intros. Remove the |
660 isCont_intros collections, these facts are now in continuous_intros. |
689 continuous_on_intros, isCont_intros collections, these facts are now |
661 |
690 in continuous_intros. |
662 * Theorems about complex numbers are now stated only using Re and Im, the Complex |
691 |
663 constructor is not used anymore. It is possible to use primcorec to defined the |
692 * Theorems about complex numbers are now stated only using Re and Im, |
664 behaviour of a complex-valued function. |
693 the Complex constructor is not used anymore. It is possible to use |
665 |
694 primcorec to defined the behaviour of a complex-valued function. |
666 Removed theorems about the Complex constructor from the simpset, they are |
695 |
667 available as the lemma collection legacy_Complex_simps. This especially |
696 Removed theorems about the Complex constructor from the simpset, they |
668 removes |
697 are available as the lemma collection legacy_Complex_simps. This |
|
698 especially removes |
|
699 |
669 i_complex_of_real: "ii * complex_of_real r = Complex 0 r". |
700 i_complex_of_real: "ii * complex_of_real r = Complex 0 r". |
670 |
701 |
671 Instead the reverse direction is supported with |
702 Instead the reverse direction is supported with |
672 Complex_eq: "Complex a b = a + \<i> * b" |
703 Complex_eq: "Complex a b = a + \<i> * b" |
673 |
704 |
674 Moved csqrt from Fundamental_Algebra_Theorem to Complex. |
705 Moved csqrt from Fundamental_Algebra_Theorem to Complex. |
675 |
706 |
676 Renamings: |
707 Renamings: |
677 Re/Im ~> complex.sel |
708 Re/Im ~> complex.sel |
678 complex_Re/Im_zero ~> zero_complex.sel |
709 complex_Re/Im_zero ~> zero_complex.sel |
679 complex_Re/Im_add ~> plus_complex.sel |
710 complex_Re/Im_add ~> plus_complex.sel |
699 complex_one_def |
730 complex_one_def |
700 complex_mult_def |
731 complex_mult_def |
701 complex_inverse_def |
732 complex_inverse_def |
702 complex_scaleR_def |
733 complex_scaleR_def |
703 |
734 |
|
735 INCOMPATIBILITY. |
|
736 |
704 * Removed solvers remote_cvc3 and remote_z3. Use cvc3 and z3 instead. |
737 * Removed solvers remote_cvc3 and remote_z3. Use cvc3 and z3 instead. |
705 |
738 |
706 * Nitpick: |
739 * Nitpick: |
707 - Fixed soundness bug whereby mutually recursive datatypes could take |
740 - Fixed soundness bug whereby mutually recursive datatypes could |
708 infinite values. |
741 take infinite values. |
709 - Fixed soundness bug with low-level number functions such as "Abs_Integ" and |
742 - Fixed soundness bug with low-level number functions such as |
710 "Rep_Integ". |
743 "Abs_Integ" and "Rep_Integ". |
711 - Removed "std" option. |
744 - Removed "std" option. |
712 - Renamed "show_datatypes" to "show_types" and "hide_datatypes" to |
745 - Renamed "show_datatypes" to "show_types" and "hide_datatypes" to |
713 "hide_types". |
746 "hide_types". |
714 |
747 |
715 * HOL-Multivariate_Analysis: |
748 * HOL-Multivariate_Analysis: |
716 - type class ordered_real_vector for ordered vector spaces |
749 - Type class ordered_real_vector for ordered vector spaces. |
717 - new theory Complex_Basic_Analysis defining complex derivatives, |
750 - New theory Complex_Basic_Analysis defining complex derivatives, |
718 holomorphic functions, etc., ported from HOL Light's canal.ml. |
751 holomorphic functions, etc., ported from HOL Light's canal.ml. |
719 - changed order of ordered_euclidean_space to be compatible with |
752 - Changed order of ordered_euclidean_space to be compatible with |
720 pointwise ordering on products. Therefore instance of |
753 pointwise ordering on products. Therefore instance of |
721 conditionally_complete_lattice and ordered_real_vector. |
754 conditionally_complete_lattice and ordered_real_vector. |
722 INCOMPATIBILITY: use box instead of greaterThanLessThan or |
755 INCOMPATIBILITY: use box instead of greaterThanLessThan or |
723 explicit set-comprehensions with eucl_less for other (half-) open |
756 explicit set-comprehensions with eucl_less for other (half-)open |
724 intervals. |
757 intervals. |
725 |
|
726 - renamed theorems: |
758 - renamed theorems: |
727 derivative_linear ~> has_derivative_bounded_linear |
759 derivative_linear ~> has_derivative_bounded_linear |
728 derivative_is_linear ~> has_derivative_linear |
760 derivative_is_linear ~> has_derivative_linear |
729 bounded_linear_imp_linear ~> bounded_linear.linear |
761 bounded_linear_imp_linear ~> bounded_linear.linear |
730 |
762 |
731 * HOL-Probability: |
763 * HOL-Probability: |
732 - replaced the Lebesgue integral on real numbers by the more general Bochner |
764 - replaced the Lebesgue integral on real numbers by the more general |
733 integral for functions into a real-normed vector space. |
765 Bochner integral for functions into a real-normed vector space. |
734 |
766 |
735 integral_zero ~> integral_zero / integrable_zero |
767 integral_zero ~> integral_zero / integrable_zero |
736 integral_minus ~> integral_minus / integrable_minus |
768 integral_minus ~> integral_minus / integrable_minus |
737 integral_add ~> integral_add / integrable_add |
769 integral_add ~> integral_add / integrable_add |
738 integral_diff ~> integral_diff / integrable_diff |
770 integral_diff ~> integral_diff / integrable_diff |
791 integral_cmul_indicator |
823 integral_cmul_indicator |
792 integral_real |
824 integral_real |
793 |
825 |
794 - Renamed positive_integral to nn_integral: |
826 - Renamed positive_integral to nn_integral: |
795 |
827 |
796 * Renamed all lemmas "*positive_integral*" to *nn_integral*" |
828 . Renamed all lemmas "*positive_integral*" to *nn_integral*" |
797 positive_integral_positive ~> nn_integral_nonneg |
829 positive_integral_positive ~> nn_integral_nonneg |
798 |
830 |
799 * Renamed abbreviation integral\<^sup>P to integral\<^sup>N. |
831 . Renamed abbreviation integral\<^sup>P to integral\<^sup>N. |
800 |
832 |
801 - Formalized properties about exponentially, Erlang, and normal distributed |
833 - Formalized properties about exponentially, Erlang, and normal |
802 random variables. |
834 distributed random variables. |
803 |
835 |
804 * Library/Kleene-Algebra was removed because AFP/Kleene_Algebra subsumes it. |
836 * Removed theory src/HOL/Library/Kleene_Algebra.thy; it is subsumed by |
|
837 session Kleene_Algebra in AFP. |
|
838 |
805 |
839 |
806 *** Scala *** |
840 *** Scala *** |
807 |
841 |
808 * The signature and semantics of Document.Snapshot.cumulate_markup / |
842 * The signature and semantics of Document.Snapshot.cumulate_markup / |
809 select_markup have been clarified. Markup is now traversed in the |
843 select_markup have been clarified. Markup is now traversed in the |
810 order of reports given by the prover: later markup is usually more |
844 order of reports given by the prover: later markup is usually more |
811 specific and may override results accumulated so far. The elements |
845 specific and may override results accumulated so far. The elements |
812 guard is mandatory and checked precisely. Subtle INCOMPATIBILITY. |
846 guard is mandatory and checked precisely. Subtle INCOMPATIBILITY. |
813 |
847 |
|
848 * Substantial reworking of internal PIDE protocol communication |
|
849 channels. INCOMPATIBILITY. |
|
850 |
814 |
851 |
815 *** ML *** |
852 *** ML *** |
816 |
853 |
817 * Moved ML_Compiler.exn_trace and other operations on exceptions to |
854 * Moved ML_Compiler.exn_trace and other operations on exceptions to |
818 structure Runtime. Minor INCOMPATIBILITY. |
855 structure Runtime. Minor INCOMPATIBILITY. |
819 |
856 |
820 * Discontinued old Toplevel.debug in favour of system option |
857 * Discontinued old Toplevel.debug in favour of system option |
821 "ML_exception_trace", which may be also declared within the context via |
858 "ML_exception_trace", which may be also declared within the context |
822 "declare [[ML_exception_trace = true]]". Minor INCOMPATIBILITY. |
859 via "declare [[ML_exception_trace = true]]". Minor INCOMPATIBILITY. |
823 |
860 |
824 * Renamed configuration option "ML_trace" to "ML_source_trace". Minor |
861 * Renamed configuration option "ML_trace" to "ML_source_trace". Minor |
825 INCOMPATIBILITY. |
862 INCOMPATIBILITY. |
826 |
863 |
827 * Configuration option "ML_print_depth" controls the pretty-printing |
864 * Configuration option "ML_print_depth" controls the pretty-printing |
876 Isabelle component, e.g. ProofGeneral-4.2-2 from the Isabelle |
913 Isabelle component, e.g. ProofGeneral-4.2-2 from the Isabelle |
877 component repository http://isabelle.in.tum.de/components/. See also |
914 component repository http://isabelle.in.tum.de/components/. See also |
878 the "system" manual for general explanations about add-on components, |
915 the "system" manual for general explanations about add-on components, |
879 notably those that are not bundled with the normal release. |
916 notably those that are not bundled with the normal release. |
880 |
917 |
881 * Session ROOT specifications require explicit 'document_files' for |
|
882 robust dependencies on LaTeX sources. Only these explicitly given |
|
883 files are copied to the document output directory, before document |
|
884 processing is started. |
|
885 |
|
886 * Simplified "isabelle display" tool. Settings variables DVI_VIEWER |
|
887 and PDF_VIEWER now refer to the actual programs, not shell |
|
888 command-lines. Discontinued option -c: invocation may be asynchronous |
|
889 via desktop environment, without any special precautions. Potential |
|
890 INCOMPATIBILITY with ambitious private settings. |
|
891 |
|
892 * Improved 'display_drafts' concerning desktop integration and |
|
893 repeated invocation in PIDE front-end: re-use single file |
|
894 $ISABELLE_HOME_USER/tmp/drafts.pdf and corresponding views. |
|
895 |
|
896 * The raw Isabelle process executable has been renamed from |
918 * The raw Isabelle process executable has been renamed from |
897 "isabelle-process" to "isabelle_process", which conforms to common |
919 "isabelle-process" to "isabelle_process", which conforms to common |
898 shell naming conventions, and allows to define a shell function within |
920 shell naming conventions, and allows to define a shell function within |
899 the Isabelle environment to avoid dynamic path lookup. Rare |
921 the Isabelle environment to avoid dynamic path lookup. Rare |
900 incompatibility for old tools that do not use the $ISABELLE_PROCESS |
922 incompatibility for old tools that do not use the $ISABELLE_PROCESS |
902 |
924 |
903 * Former "isabelle tty" has been superseded by "isabelle console", |
925 * Former "isabelle tty" has been superseded by "isabelle console", |
904 with implicit build like "isabelle jedit", and without the mostly |
926 with implicit build like "isabelle jedit", and without the mostly |
905 obsolete Isar TTY loop. |
927 obsolete Isar TTY loop. |
906 |
928 |
|
929 * Simplified "isabelle display" tool. Settings variables DVI_VIEWER |
|
930 and PDF_VIEWER now refer to the actual programs, not shell |
|
931 command-lines. Discontinued option -c: invocation may be asynchronous |
|
932 via desktop environment, without any special precautions. Potential |
|
933 INCOMPATIBILITY with ambitious private settings. |
|
934 |
907 * Removed obsolete "isabelle unsymbolize". Note that the usual format |
935 * Removed obsolete "isabelle unsymbolize". Note that the usual format |
908 for email communication is the Unicode rendering of Isabelle symbols, |
936 for email communication is the Unicode rendering of Isabelle symbols, |
909 as produced by Isabelle/jEdit, for example. |
937 as produced by Isabelle/jEdit, for example. |
910 |
938 |
911 * Retired the now unused Isabelle tool "wwwfind". Similar |
939 * Removed obsolete tool "wwwfind". Similar functionality may be |
912 functionality may be integrated into PIDE/jEdit at a later point. |
940 integrated into Isabelle/jEdit eventually. |
|
941 |
|
942 * Improved 'display_drafts' concerning desktop integration and |
|
943 repeated invocation in PIDE front-end: re-use single file |
|
944 $ISABELLE_HOME_USER/tmp/drafts.pdf and corresponding views. |
913 |
945 |
914 * Windows: support for regular TeX installation (e.g. MiKTeX) instead |
946 * Windows: support for regular TeX installation (e.g. MiKTeX) instead |
915 of TeX Live from Cygwin. |
947 of TeX Live from Cygwin. |
|
948 |
|
949 * Session ROOT specifications require explicit 'document_files' for |
|
950 robust dependencies on LaTeX sources. Only these explicitly given |
|
951 files are copied to the document output directory, before document |
|
952 processing is started. |
916 |
953 |
917 |
954 |
918 |
955 |
919 New in Isabelle2013-2 (December 2013) |
956 New in Isabelle2013-2 (December 2013) |
920 ------------------------------------- |
957 ------------------------------------- |