NEWS
author haftmann
Sat, 28 Jun 2014 22:13:23 +0200
changeset 57430 020cea57eaa4
parent 57423 96f970d1522b
child 57431 02c408aed5ee
permissions -rw-r--r--
tracing facilities for the code generator preprocessor
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5363
0cf15843b82f isatool install;
wenzelm
parents: 5332
diff changeset
     1
Isabelle NEWS -- history user-relevant changes
0cf15843b82f isatool install;
wenzelm
parents: 5332
diff changeset
     2
==============================================
2553
ed941505cab7 Isabelle NEWS -- history of user-visible changes;
wenzelm
parents:
diff changeset
     3
54055
5bf55a713232 back to post-release mode -- after fork point;
wenzelm
parents: 54049
diff changeset
     4
New in this Isabelle version
5bf55a713232 back to post-release mode -- after fork point;
wenzelm
parents: 54049
diff changeset
     5
----------------------------
5bf55a713232 back to post-release mode -- after fork point;
wenzelm
parents: 54049
diff changeset
     6
54702
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
     7
*** General ***
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
     8
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
     9
* Document antiquotation @{url} produces markup for the given URL,
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
    10
which results in an active hyperlink within the text.
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
    11
54705
0dff3326d12a provide @{file_unchecked} in Isabelle/Pure;
wenzelm
parents: 54702
diff changeset
    12
* Document antiquotation @{file_unchecked} is like @{file}, but does
0dff3326d12a provide @{file_unchecked} in Isabelle/Pure;
wenzelm
parents: 54702
diff changeset
    13
not check existence within the file-system.
0dff3326d12a provide @{file_unchecked} in Isabelle/Pure;
wenzelm
parents: 54702
diff changeset
    14
54732
b01bb3d09928 discontinued legacy_isub_isup;
wenzelm
parents: 54708
diff changeset
    15
* Discontinued legacy_isub_isup, which was a temporary Isabelle/ML
b01bb3d09928 discontinued legacy_isub_isup;
wenzelm
parents: 54708
diff changeset
    16
workaround in Isabelle2013-1.  The prover process no longer accepts
b01bb3d09928 discontinued legacy_isub_isup;
wenzelm
parents: 54708
diff changeset
    17
old identifier syntax with \<^isub> or \<^isup>.
b01bb3d09928 discontinued legacy_isub_isup;
wenzelm
parents: 54708
diff changeset
    18
55029
61a6bf7d4b02 clarified @{rail} syntax: prefer explicit \<newline> symbol;
wenzelm
parents: 55015
diff changeset
    19
* Syntax of document antiquotation @{rail} now uses \<newline> instead
61a6bf7d4b02 clarified @{rail} syntax: prefer explicit \<newline> symbol;
wenzelm
parents: 55015
diff changeset
    20
of "\\", to avoid the optical illusion of escaped backslash within
61a6bf7d4b02 clarified @{rail} syntax: prefer explicit \<newline> symbol;
wenzelm
parents: 55015
diff changeset
    21
string token.  Minor INCOMPATIBILITY.
61a6bf7d4b02 clarified @{rail} syntax: prefer explicit \<newline> symbol;
wenzelm
parents: 55015
diff changeset
    22
55122
wenzelm
parents: 55114
diff changeset
    23
* Lexical syntax (inner and outer) supports text cartouches with
55668
wenzelm
parents: 55654
diff changeset
    24
arbitrary nesting, and without escapes of quotes etc.  The Prover IDE
56591
1a59587f46ec clarified abbreviations for cartouche delimiters, to work in any context;
wenzelm
parents: 56580
diff changeset
    25
supports input via ` (backquote).
55122
wenzelm
parents: 55114
diff changeset
    26
56499
7e0178c84994 allow text cartouches in regular outer syntax categories "text" and "altstring";
wenzelm
parents: 56450
diff changeset
    27
* The outer syntax categories "text" (for formal comments and document
7e0178c84994 allow text cartouches in regular outer syntax categories "text" and "altstring";
wenzelm
parents: 56450
diff changeset
    28
markup commands) and "altstring" (for literal fact references) allow
7e0178c84994 allow text cartouches in regular outer syntax categories "text" and "altstring";
wenzelm
parents: 56450
diff changeset
    29
cartouches as well, in addition to the traditional mix of quotations.
7e0178c84994 allow text cartouches in regular outer syntax categories "text" and "altstring";
wenzelm
parents: 56450
diff changeset
    30
56232
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    31
* More static checking of proof methods, which allows the system to
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    32
form a closure over the concrete syntax.  Method arguments should be
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    33
processed in the original proof context as far as possible, before
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    34
operating on the goal state.  In any case, the standard discipline for
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    35
subgoal-addressing needs to be observed: no subgoals or a subgoal
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    36
number that is out of range produces an empty result sequence, not an
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    37
exception.  Potential INCOMPATIBILITY for non-conformant tactical
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    38
proof tools.
31e283f606e2 more static checking of proof methods;
wenzelm
parents: 56218
diff changeset
    39
56618
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    40
* Support for official Standard ML within the Isabelle context.
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    41
Command 'SML_file' reads and evaluates the given Standard ML file.
56275
600f432ab556 added command 'SML_file' for Standard ML without Isabelle/ML add-ons;
wenzelm
parents: 56265
diff changeset
    42
Toplevel bindings are stored within the theory context; the initial
600f432ab556 added command 'SML_file' for Standard ML without Isabelle/ML add-ons;
wenzelm
parents: 56265
diff changeset
    43
environment is restricted to the Standard ML implementation of
56618
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    44
Poly/ML, without the add-ons of Isabelle/ML.  Commands 'SML_import'
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    45
and 'SML_export' allow to exchange toplevel bindings between the two
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    46
separate environments.  See also ~~/src/Tools/SML/Examples.thy for
874bdedb2313 added command 'SML_export' and 'SML_import' for exchange of toplevel bindings;
wenzelm
parents: 56598
diff changeset
    47
some examples.
56275
600f432ab556 added command 'SML_file' for Standard ML without Isabelle/ML add-ons;
wenzelm
parents: 56265
diff changeset
    48
57423
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    49
* Updated and extended manuals: "codegen", "datatypes",
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    50
"implementation", "jedit", "system".
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    51
54702
3daeba5130f0 added document antiquotation @{url}, which produces formal markup for LaTeX and PIDE;
wenzelm
parents: 54688
diff changeset
    52
54533
wenzelm
parents: 54502
diff changeset
    53
*** Prover IDE -- Isabelle/Scala/jEdit ***
wenzelm
parents: 54502
diff changeset
    54
57423
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    55
* Document panel: simplied interaction where every single mouse click
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    56
(re)opens document via desktop environment or as jEdit buffer.
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    57
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    58
* Support for Navigator plugin (with toolbar buttons).
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    59
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    60
* Improved syntactic and semantic completion mechanism, with simple
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    61
templates, completion language context, name-space completion,
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    62
file-name completion, spell-checker completion.
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    63
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    64
* Refined GUI popup for completion: more robust key/mouse event
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    65
handling and propagation to enclosing text area -- avoid loosing
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    66
keystrokes with slow / remote graphics displays.
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    67
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    68
* Refined insertion of completion items wrt. jEdit text: multiple
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    69
selections, rectangular selections, rectangular selection as "tall
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    70
caret".
56342
075397022503 cumulative NEWS;
wenzelm
parents: 56303
diff changeset
    71
56580
wenzelm
parents: 56554
diff changeset
    72
* Integrated spell-checker for document text, comments etc. with
57423
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    73
completion popup and context-menu.
56554
wenzelm
parents: 56533
diff changeset
    74
54533
wenzelm
parents: 54502
diff changeset
    75
* Auxiliary files ('ML_file' etc.) are managed by the Prover IDE.
wenzelm
parents: 54502
diff changeset
    76
Open text buffers take precedence over copies within the file-system.
wenzelm
parents: 54502
diff changeset
    77
55536
wenzelm
parents: 55533
diff changeset
    78
* Improved support for Isabelle/ML, with jEdit mode "isabelle-ml" for
wenzelm
parents: 55533
diff changeset
    79
auxiliary ML files.
wenzelm
parents: 55533
diff changeset
    80
56879
ee2b61f37ad9 renamed "Find" to "Query", with more general operations;
wenzelm
parents: 56851
diff changeset
    81
* More general "Query" panel supersedes "Find" panel, with GUI access
ee2b61f37ad9 renamed "Find" to "Query", with more general operations;
wenzelm
parents: 56851
diff changeset
    82
to commands 'find_theorems' and 'find_consts', as well as print
ee2b61f37ad9 renamed "Find" to "Query", with more general operations;
wenzelm
parents: 56851
diff changeset
    83
operations for the context.  Minor incompatibility in keyboard
ee2b61f37ad9 renamed "Find" to "Query", with more general operations;
wenzelm
parents: 56851
diff changeset
    84
shortcuts etc.: replace action isabelle-find by isabelle-query.
56761
wenzelm
parents: 56652
diff changeset
    85
56901
wenzelm
parents: 56889
diff changeset
    86
* Search field for all output panels ("Output", "Query", "Info" etc.)
wenzelm
parents: 56889
diff changeset
    87
to highlight text via regular expression.
wenzelm
parents: 56889
diff changeset
    88
54881
dff57132cf18 added system option "jedit_print_mode";
wenzelm
parents: 54864
diff changeset
    89
* Option "jedit_print_mode" (see also "Plugin Options / Isabelle /
dff57132cf18 added system option "jedit_print_mode";
wenzelm
parents: 54864
diff changeset
    90
General") allows to specify additional print modes for the prover
dff57132cf18 added system option "jedit_print_mode";
wenzelm
parents: 54864
diff changeset
    91
process, without requiring old-fashioned command-line invocation of
dff57132cf18 added system option "jedit_print_mode";
wenzelm
parents: 54864
diff changeset
    92
"isabelle jedit -m MODE".
dff57132cf18 added system option "jedit_print_mode";
wenzelm
parents: 54864
diff changeset
    93
57423
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    94
* New Simplifier Trace panel provides an interactive view of the
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    95
simplification process, enabled by the "simplifier_trace" attribute
96f970d1522b updated NEWS -- removed material that is already in the manual;
wenzelm
parents: 57418
diff changeset
    96
within the context.
56413
2d4d9a5f68ff support for jEdit Navigator plugin;
wenzelm
parents: 56399
diff changeset
    97
56505
wenzelm
parents: 56499
diff changeset
    98
* More support for remote files (e.g. http) using standard Java
wenzelm
parents: 56499
diff changeset
    99
networking operations instead of jEdit virtual file-systems.
wenzelm
parents: 56499
diff changeset
   100
56838
wenzelm
parents: 56815
diff changeset
   101
* Improved Console/Scala plugin: more uniform scala.Console output,
wenzelm
parents: 56815
diff changeset
   102
more robust treatment of threads and interrupts.
wenzelm
parents: 56815
diff changeset
   103
56939
wenzelm
parents: 56927
diff changeset
   104
* Improved management of dockable windows: clarified keyboard focus
wenzelm
parents: 56927
diff changeset
   105
and window placement wrt. main editor view; optional menu item to
wenzelm
parents: 56927
diff changeset
   106
"Detach" a copy where this makes sense.
wenzelm
parents: 56927
diff changeset
   107
54533
wenzelm
parents: 54502
diff changeset
   108
55001
wenzelm
parents: 54893
diff changeset
   109
*** Pure ***
wenzelm
parents: 54893
diff changeset
   110
56245
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   111
* Basic constants of Pure use more conventional names and are always
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   112
qualified.  Rare INCOMPATIBILITY, but with potentially serious
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   113
consequences, notably for tools in Isabelle/ML.  The following
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   114
renaming needs to be applied:
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   115
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   116
  ==             ~>  Pure.eq
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   117
  ==>            ~>  Pure.imp
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   118
  all            ~>  Pure.all
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   119
  TYPE           ~>  Pure.type
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   120
  dummy_pattern  ~>  Pure.dummy_pattern
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   121
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   122
Systematic porting works by using the following theory setup on a
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   123
*previous* Isabelle version to introduce the new name accesses for the
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   124
old constants:
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   125
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   126
setup {*
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   127
  fn thy => thy
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   128
    |> Sign.root_path
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   129
    |> Sign.const_alias (Binding.qualify true "Pure" @{binding eq}) "=="
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   130
    |> Sign.const_alias (Binding.qualify true "Pure" @{binding imp}) "==>"
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   131
    |> Sign.const_alias (Binding.qualify true "Pure" @{binding all}) "all"
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   132
    |> Sign.restore_naming thy
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   133
*}
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   134
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   135
Thus ML antiquotations like @{const_name Pure.eq} may be used already.
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   136
Later the application is moved to the current Isabelle version, and
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   137
the auxiliary aliases are deleted.
84fc7dfa3cd4 more qualified names;
wenzelm
parents: 56232
diff changeset
   138
55385
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   139
* Low-level type-class commands 'classes', 'classrel', 'arities' have
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   140
been discontinued to avoid the danger of non-trivial axiomatization
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   141
that is not immediately visible.  INCOMPATIBILITY, use regular
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   142
'instance' with proof.  The required OFCLASS(...) theorem might be
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   143
postulated via 'axiomatization' beforehand, or the proof finished
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   144
trivially if the underlying class definition is made vacuous (without
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   145
any assumptions).  See also Isabelle/ML operations
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   146
Axclass.axiomatize_class, Axclass.axiomatize_classrel,
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   147
Axclass.axiomatize_arity.
169e12bbf9a3 discontinued axiomatic 'classes', 'classrel', 'arities';
wenzelm
parents: 55316
diff changeset
   148
55143
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   149
* Attributes "where" and "of" allow an optional context of local
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   150
variables ('for' declaration): these variables become schematic in the
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   151
instantiated theorem.
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   152
55152
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   153
* Obsolete attribute "standard" has been discontinued (legacy since
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   154
Isabelle2012).  Potential INCOMPATIBILITY, use explicit 'for' context
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   155
where instantiations with schematic variables are intended (for
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   156
declaration commands like 'lemmas' or attributes like "of").  The
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   157
following temporary definition may help to port old applications:
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   158
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   159
  attribute_setup standard =
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   160
    "Scan.succeed (Thm.rule_attribute (K Drule.export_without_context))"
a56099a6447a discontinued obsolete attribute "standard";
wenzelm
parents: 55143
diff changeset
   161
55001
wenzelm
parents: 54893
diff changeset
   162
* More thorough check of proof context for goal statements and
55006
wenzelm
parents: 55001
diff changeset
   163
attributed fact expressions (concerning background theory, declared
wenzelm
parents: 55001
diff changeset
   164
hyps).  Potential INCOMPATIBILITY, tools need to observe standard
wenzelm
parents: 55001
diff changeset
   165
context discipline.  See also Assumption.add_assumes and the more
wenzelm
parents: 55001
diff changeset
   166
primitive Thm.assume_hyps.
55001
wenzelm
parents: 54893
diff changeset
   167
55108
0b7a0c1fdf7e inner syntax token language allows regular quoted strings;
wenzelm
parents: 55049
diff changeset
   168
* Inner syntax token language allows regular quoted strings "..."
0b7a0c1fdf7e inner syntax token language allows regular quoted strings;
wenzelm
parents: 55049
diff changeset
   169
(only makes sense in practice, if outer syntax is delimited
0b7a0c1fdf7e inner syntax token language allows regular quoted strings;
wenzelm
parents: 55049
diff changeset
   170
differently).
0b7a0c1fdf7e inner syntax token language allows regular quoted strings;
wenzelm
parents: 55049
diff changeset
   171
57430
020cea57eaa4 tracing facilities for the code generator preprocessor
haftmann
parents: 57423
diff changeset
   172
* Code generator preprocessor: explicit control of simp tracing
020cea57eaa4 tracing facilities for the code generator preprocessor
haftmann
parents: 57423
diff changeset
   173
on a per-constant basis.  See attribute "code_preproc".
020cea57eaa4 tracing facilities for the code generator preprocessor
haftmann
parents: 57423
diff changeset
   174
57415
e721124f1b1e command 'print_term_bindings' supersedes 'print_binds';
wenzelm
parents: 57413
diff changeset
   175
* Command 'print_term_bindings' supersedes 'print_binds' for clarity,
e721124f1b1e command 'print_term_bindings' supersedes 'print_binds';
wenzelm
parents: 57413
diff changeset
   176
but the latter is retained some time as Proof General legacy.
e721124f1b1e command 'print_term_bindings' supersedes 'print_binds';
wenzelm
parents: 57413
diff changeset
   177
55001
wenzelm
parents: 54893
diff changeset
   178
54227
63b441f49645 moving generic lemmas out of theory parity, disregarding some unused auxiliary lemmas;
haftmann
parents: 54055
diff changeset
   179
*** HOL ***
63b441f49645 moving generic lemmas out of theory parity, disregarding some unused auxiliary lemmas;
haftmann
parents: 54055
diff changeset
   180
56927
4044a7d1720f hardcoded nbe and sml into value command
haftmann
parents: 56923
diff changeset
   181
* Command and antiquotation ''value'' are hardcoded against nbe and
4044a7d1720f hardcoded nbe and sml into value command
haftmann
parents: 56923
diff changeset
   182
ML now.  Minor INCOMPATIBILITY.
4044a7d1720f hardcoded nbe and sml into value command
haftmann
parents: 56923
diff changeset
   183
56923
c062543d380e prefer separate command for approximation
haftmann
parents: 56901
diff changeset
   184
* Separate command ''approximate'' for approximative computation
56927
4044a7d1720f hardcoded nbe and sml into value command
haftmann
parents: 56923
diff changeset
   185
in Decision_Procs/Approximation.  Minor INCOMPATIBILITY.
56923
c062543d380e prefer separate command for approximation
haftmann
parents: 56901
diff changeset
   186
56807
haftmann
parents: 56787
diff changeset
   187
* Adjustion of INF and SUP operations:
haftmann
parents: 56787
diff changeset
   188
  * Elongated constants INFI and SUPR to INFIMUM and SUPREMUM.
haftmann
parents: 56787
diff changeset
   189
  * Consolidated theorem names containing INFI and SUPR: have INF
haftmann
parents: 56787
diff changeset
   190
  and SUP instead uniformly.
haftmann
parents: 56787
diff changeset
   191
  * More aggressive normalization of expressions involving INF and Inf
haftmann
parents: 56787
diff changeset
   192
  or SUP and Sup.
haftmann
parents: 56787
diff changeset
   193
  * INF_image and SUP_image do not unfold composition.
haftmann
parents: 56787
diff changeset
   194
  * Dropped facts INF_comp, SUP_comp.
haftmann
parents: 56787
diff changeset
   195
  * Default congruence rules strong_INF_cong and strong_SUP_cong,
haftmann
parents: 56787
diff changeset
   196
  with simplifier implication in premises.  Generalize and replace
haftmann
parents: 56787
diff changeset
   197
  former INT_cong, SUP_cong
56166
9a241bc276cd normalising simp rules for compound operators
haftmann
parents: 56154
diff changeset
   198
INCOMPATIBILITY.
9a241bc276cd normalising simp rules for compound operators
haftmann
parents: 56154
diff changeset
   199
56154
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   200
* Swapped orientation of facts image_comp and vimage_comp:
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   201
  image_compose ~> image_comp [symmetric]
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   202
  image_comp ~> image_comp [symmetric]
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   203
  vimage_compose ~> vimage_comp [symmetric]
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   204
  vimage_comp ~> vimage_comp [symmetric]
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   205
  INCOMPATIBILITY.
f0a927235162 more complete set of lemmas wrt. image and composition
haftmann
parents: 56148
diff changeset
   206
56073
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   207
* Simplifier: Enhanced solver of preconditions of rewrite rules
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   208
  can now deal with conjunctions.
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   209
  For help with converting proofs, the old behaviour of the simplifier
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   210
  can be restored like this:  declare/using [[simp_legacy_precond]]
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   211
  This configuration option will disappear again in the future.
29e308b56d23 enhanced simplifier solver for preconditions of rewrite rule, can now deal with conjunctions
nipkow
parents: 56072
diff changeset
   212
55818
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   213
* HOL-Word:
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   214
  * Abandoned fact collection "word_arith_alts", which is a
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   215
  duplicate of "word_arith_wis".
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   216
  * Dropped first (duplicated) element in fact collections
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   217
  "sint_word_ariths", "word_arith_alts", "uint_word_ariths",
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   218
  "uint_word_arith_bintrs".
d8b2f50705d0 more precise imports;
haftmann
parents: 55757
diff changeset
   219
56826
ba18bd41e510 enforce case of identifiers only to accomodate strict language requirements (or clear separation of constructors from variables in the case of SML)
haftmann
parents: 56815
diff changeset
   220
* Code generator: enforce case of identifiers only for strict
ba18bd41e510 enforce case of identifiers only to accomodate strict language requirements (or clear separation of constructors from variables in the case of SML)
haftmann
parents: 56815
diff changeset
   221
target language requirements.  INCOMPATIBILITY.
ba18bd41e510 enforce case of identifiers only to accomodate strict language requirements (or clear separation of constructors from variables in the case of SML)
haftmann
parents: 56815
diff changeset
   222
55757
9fc71814b8c1 prefer proof context over background theory
haftmann
parents: 55716
diff changeset
   223
* Code generator: explicit proof contexts in many ML interfaces.
9fc71814b8c1 prefer proof context over background theory
haftmann
parents: 55716
diff changeset
   224
INCOMPATIBILITY.
9fc71814b8c1 prefer proof context over background theory
haftmann
parents: 55716
diff changeset
   225
55686
e99ed112d303 NEWS and documentation, including correction of long-overseen "*"
haftmann
parents: 55677
diff changeset
   226
* Code generator: minimize exported identifiers by default.
55757
9fc71814b8c1 prefer proof context over background theory
haftmann
parents: 55716
diff changeset
   227
Minor INCOMPATIBILITY.
55686
e99ed112d303 NEWS and documentation, including correction of long-overseen "*"
haftmann
parents: 55677
diff changeset
   228
55677
1f89921f3e75 dropped long-unused option
haftmann
parents: 55668
diff changeset
   229
* Code generation for SML and OCaml: dropped arcane "no_signatures" option.
55757
9fc71814b8c1 prefer proof context over background theory
haftmann
parents: 55716
diff changeset
   230
Minor INCOMPATIBILITY.
55677
1f89921f3e75 dropped long-unused option
haftmann
parents: 55668
diff changeset
   231
55139
4d899933a51a NEWS for 31afce809794;
wenzelm
parents: 55122
diff changeset
   232
* Simproc "finite_Collect" is no longer enabled by default, due to
4d899933a51a NEWS for 31afce809794;
wenzelm
parents: 55122
diff changeset
   233
spurious crashes and other surprises.  Potential INCOMPATIBILITY.
4d899933a51a NEWS for 31afce809794;
wenzelm
parents: 55122
diff changeset
   234
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   235
* Moved new (co)datatype package and its dependencies from "HOL-BNF" to "HOL".
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   236
  The "bnf", "wrap_free_constructors", "datatype_new", "codatatype",
55875
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   237
  "primcorec", and "primcorecursive" commands are now part of "Main".
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   238
  Theory renamings:
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   239
    FunDef.thy ~> Fun_Def.thy (and Fun_Def_Base.thy)
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   240
    Library/Wfrec.thy ~> Wfrec.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   241
    Library/Zorn.thy ~> Zorn.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   242
    Cardinals/Order_Relation.thy ~> Order_Relation.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   243
    Library/Order_Union.thy ~> Cardinals/Order_Union.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   244
    Cardinals/Cardinal_Arithmetic_Base.thy ~> BNF_Cardinal_Arithmetic.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   245
    Cardinals/Cardinal_Order_Relation_Base.thy ~> BNF_Cardinal_Order_Relation.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   246
    Cardinals/Constructions_on_Wellorders_Base.thy ~> BNF_Constructions_on_Wellorders.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   247
    Cardinals/Wellorder_Embedding_Base.thy ~> BNF_Wellorder_Embedding.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   248
    Cardinals/Wellorder_Relation_Base.thy ~> BNF_Wellorder_Relation.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   249
    BNF/Ctr_Sugar.thy ~> Ctr_Sugar.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   250
    BNF/Basic_BNFs.thy ~> Basic_BNFs.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   251
    BNF/BNF_Comp.thy ~> BNF_Comp.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   252
    BNF/BNF_Def.thy ~> BNF_Def.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   253
    BNF/BNF_FP_Base.thy ~> BNF_FP_Base.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   254
    BNF/BNF_GFP.thy ~> BNF_GFP.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   255
    BNF/BNF_LFP.thy ~> BNF_LFP.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   256
    BNF/BNF_Util.thy ~> BNF_Util.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   257
    BNF/Coinduction.thy ~> Coinduction.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   258
    BNF/More_BNFs.thy ~> Library/More_BNFs.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   259
    BNF/Countable_Type.thy ~> Library/Countable_Set_Type.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   260
    BNF/Examples/* ~> BNF_Examples/*
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   261
  New theories:
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   262
    Wellorder_Extension.thy (split from Zorn.thy)
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   263
    Library/Cardinal_Notations.thy
56942
5fff4dc31d34 bnf_decl -> bnf_axiomatization
traytel
parents: 56939
diff changeset
   264
    Library/BNF_Axomatization.thy
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   265
    BNF_Examples/Misc_Primcorec.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   266
    BNF_Examples/Stream_Processor.thy
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   267
  Discontinued theories:
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   268
    BNF/BNF.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   269
    BNF/Equiv_Relations_More.thy
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   270
  INCOMPATIBILITY.
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   271
56118
d3967fdc800a updated NEWS and CONTRIBUTORS (BNF, SMT2, Sledgehammer)
blanchet
parents: 56076
diff changeset
   272
* New (co)datatype package:
55875
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   273
  * "primcorec" is fully implemented.
56652
b0126a5a256d updated NEWS
blanchet
parents: 56618
diff changeset
   274
  * "datatype_new" generates size functions ("size_xxx" and "size") as
b0126a5a256d updated NEWS
blanchet
parents: 56618
diff changeset
   275
    required by "fun".
b0126a5a256d updated NEWS
blanchet
parents: 56618
diff changeset
   276
  * BNFs are integrated with the Lifting tool and new-style (co)datatypes
b0126a5a256d updated NEWS
blanchet
parents: 56618
diff changeset
   277
    with Transfer.
55875
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   278
  * Renamed commands:
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   279
      datatype_new_compat ~> datatype_compat
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   280
      primrec_new ~> primrec
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   281
      wrap_free_constructors ~> free_constructors
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   282
    INCOMPATIBILITY.
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   283
  * The generated constants "xxx_case" and "xxx_rec" have been renamed
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   284
    "case_xxx" and "rec_xxx" (e.g., "prod_case" ~> "case_prod").
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   285
    INCOMPATIBILITY.
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   286
  * The constant "xxx_(un)fold" and related theorems are no longer generated.
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   287
    Use "xxx_(co)rec" or define "xxx_(un)fold" manually using "prim(co)rec".
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   288
    INCOMPATIBILITY.
57091
1fa9c19ba2c9 got rid of '=:' squiggly
blanchet
parents: 57089
diff changeset
   289
  * No discriminators are generated for nullary constructors by default,
1fa9c19ba2c9 got rid of '=:' squiggly
blanchet
parents: 57089
diff changeset
   290
    eliminating the need for the odd "=:" syntax.
1fa9c19ba2c9 got rid of '=:' squiggly
blanchet
parents: 57089
diff changeset
   291
    INCOMPATIBILITY.
57094
589ec121ce1a don't generate discriminators and selectors for 'datatype_new' unless the user asked for it
blanchet
parents: 57091
diff changeset
   292
  * No discriminators or selectors are generated by default by
589ec121ce1a don't generate discriminators and selectors for 'datatype_new' unless the user asked for it
blanchet
parents: 57091
diff changeset
   293
    "datatype_new", unless custom names are specified or the new
589ec121ce1a don't generate discriminators and selectors for 'datatype_new' unless the user asked for it
blanchet
parents: 57091
diff changeset
   294
    "discs_sels" option is passed.
589ec121ce1a don't generate discriminators and selectors for 'datatype_new' unless the user asked for it
blanchet
parents: 57091
diff changeset
   295
    INCOMPATIBILITY.
55875
6478b12b7297 updated NEWS
blanchet
parents: 55867
diff changeset
   296
55643
blanchet
parents: 55622
diff changeset
   297
* Old datatype package:
blanchet
parents: 55622
diff changeset
   298
  * The generated theorems "xxx.cases" and "xxx.recs" have been renamed
blanchet
parents: 55622
diff changeset
   299
    "xxx.case" and "xxx.rec" (e.g., "sum.cases" -> "sum.case").
blanchet
parents: 55622
diff changeset
   300
    INCOMPATIBILITY.
56846
9df717fef2bb renamed 'xxx_size' to 'size_xxx' for old datatype package
blanchet
parents: 56845
diff changeset
   301
  * The generated constants "xxx_case", "xxx_rec", and "xxx_size" have been
9df717fef2bb renamed 'xxx_size' to 'size_xxx' for old datatype package
blanchet
parents: 56845
diff changeset
   302
    renamed "case_xxx", "rec_xxx", and "size_xxx" (e.g., "prod_case" ~>
9df717fef2bb renamed 'xxx_size' to 'size_xxx' for old datatype package
blanchet
parents: 56845
diff changeset
   303
    "case_prod").
55427
7a3e78ee813b [mq]: news
blanchet
parents: 55385
diff changeset
   304
    INCOMPATIBILITY.
7a3e78ee813b [mq]: news
blanchet
parents: 55385
diff changeset
   305
55524
f41ef840f09d folded 'list_all2' with the relator generated by 'datatype_new'
blanchet
parents: 55519
diff changeset
   306
* The types "'a list" and "'a option", their set and map functions, their
55585
014138b356c4 updated NEWS
blanchet
parents: 55580
diff changeset
   307
  relators, and their selectors are now produced using the new BNF-based
014138b356c4 updated NEWS
blanchet
parents: 55580
diff changeset
   308
  datatype package.
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   309
  Renamed constants:
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   310
    Option.set ~> set_option
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   311
    Option.map ~> map_option
55525
70b7e91fa1f9 folded 'rel_option' into 'option_rel'
blanchet
parents: 55524
diff changeset
   312
    option_rel ~> rel_option
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   313
  Renamed theorems:
55585
014138b356c4 updated NEWS
blanchet
parents: 55580
diff changeset
   314
    set_def ~> set_rec[abs_def]
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   315
    map_def ~> map_rec[abs_def]
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   316
    Option.map_def ~> map_option_case[abs_def] (with "case_option" instead of "rec_option")
56652
b0126a5a256d updated NEWS
blanchet
parents: 56618
diff changeset
   317
    option.recs ~> option.rec
55524
f41ef840f09d folded 'list_all2' with the relator generated by 'datatype_new'
blanchet
parents: 55519
diff changeset
   318
    list_all2_def ~> list_all2_iff
55585
014138b356c4 updated NEWS
blanchet
parents: 55580
diff changeset
   319
    set.simps ~> set_simps (or the slightly different "list.set")
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   320
    map.simps ~> list.map
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   321
    hd.simps ~> list.sel(1)
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   322
    tl.simps ~> list.sel(2-3)
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   323
    the.simps ~> option.sel
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   324
  INCOMPATIBILITY.
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   325
55933
12ee2c407dad renamed 'fset_rel' to 'rel_fset'
blanchet
parents: 55931
diff changeset
   326
* The following map functions and relators have been renamed:
55939
682fc100dbff fixed NEWS
blanchet
parents: 55938
diff changeset
   327
    sum_map ~> map_sum
682fc100dbff fixed NEWS
blanchet
parents: 55938
diff changeset
   328
    map_pair ~> map_prod
55944
7ab8f003fe41 renamed 'prod_rel' to 'rel_prod'
blanchet
parents: 55943
diff changeset
   329
    prod_rel ~> rel_prod
55943
5c2df04e97d1 renamed 'sum_rel' to 'rel_sum'
blanchet
parents: 55942
diff changeset
   330
    sum_rel ~> rel_sum
55945
e96383acecf9 renamed 'fun_rel' to 'rel_fun'
blanchet
parents: 55944
diff changeset
   331
    fun_rel ~> rel_fun
55942
c2d96043de4b renamed 'filter_rel' to 'rel_filter'
blanchet
parents: 55940
diff changeset
   332
    set_rel ~> rel_set
c2d96043de4b renamed 'filter_rel' to 'rel_filter'
blanchet
parents: 55940
diff changeset
   333
    filter_rel ~> rel_filter
55940
7339ef350739 renamed 'vset_rel' to 'rel_vset'
blanchet
parents: 55939
diff changeset
   334
    fset_rel ~> rel_fset (in "Library/FSet.thy")
7339ef350739 renamed 'vset_rel' to 'rel_vset'
blanchet
parents: 55939
diff changeset
   335
    cset_rel ~> rel_cset (in "Library/Countable_Set_Type.thy")
55942
c2d96043de4b renamed 'filter_rel' to 'rel_filter'
blanchet
parents: 55940
diff changeset
   336
    vset ~> rel_vset (in "Library/Quotient_Set.thy")
55931
62156e694f3d renamed 'map_sum' to 'sum_map'
blanchet
parents: 55889
diff changeset
   337
57251
f51985ebd152 announce Tree
nipkow
parents: 57246
diff changeset
   338
* New theories:
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   339
    Cardinals/Ordinal_Arithmetic.thy
57251
f51985ebd152 announce Tree
nipkow
parents: 57246
diff changeset
   340
    Library/Tree
55098
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   341
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   342
* Theory reorganizations:
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   343
  * Big_Operators.thy ~> Groups_Big.thy and Lattices_Big.thy
01869d711567 updated NEWS
blanchet
parents: 55049
diff changeset
   344
57418
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   345
* Consolidated some facts about big group operators:
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   346
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   347
    setsum_0' ~> setsum.neutral
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   348
    setsum_0 ~> setsum.neutral_const
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   349
    setsum_addf ~> setsum.distrib
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   350
    setsum_cartesian_product ~> setsum.cartesian_product
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   351
    setsum_cases ~> setsum.If_cases
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   352
    setsum_commute ~> setsum.commute
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   353
    setsum_cong ~> setsum.cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   354
    setsum_delta ~> setsum.delta
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   355
    setsum_delta' ~> setsum.delta'
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   356
    setsum_diff1' ~> setsum.remove
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   357
    setsum_empty ~> setsum.empty
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   358
    setsum_infinite ~> setsum.infinite
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   359
    setsum_insert ~> setsum.insert
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   360
    setsum_inter_restrict'' ~> setsum.inter_filter
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   361
    setsum_mono_zero_cong_left ~> setsum.mono_neutral_cong_left
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   362
    setsum_mono_zero_cong_right ~> setsum.mono_neutral_cong_right
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   363
    setsum_mono_zero_left ~> setsum.mono_neutral_left
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   364
    setsum_mono_zero_right ~> setsum.mono_neutral_right
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   365
    setsum_reindex ~> setsum.reindex
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   366
    setsum_reindex_cong ~> setsum.reindex_cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   367
    setsum_reindex_nonzero ~> setsum.reindex_nontrivial
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   368
    setsum_restrict_set ~> setsum.inter_restrict
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   369
    setsum_Plus ~> setsum.Plus
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   370
    setsum_setsum_restrict ~> setsum.commute_restrict
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   371
    setsum_Sigma ~> setsum.Sigma
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   372
    setsum_subset_diff ~> setsum.subset_diff
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   373
    setsum_Un_disjoint ~> setsum.union_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   374
    setsum_UN_disjoint ~> setsum.UNION_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   375
    setsum_Un_Int ~> setsum.union_inter
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   376
    setsum_Union_disjoint ~> setsum.Union_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   377
    setsum_UNION_zero ~> setsum.Union_comp
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   378
    setsum_Un_zero ~> setsum.union_inter_neutral
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   379
    strong_setprod_cong ~> setprod.strong_cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   380
    strong_setsum_cong ~> setsum.strong_cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   381
    setprod_1' ~> setprod.neutral
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   382
    setprod_1 ~> setprod.neutral_const
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   383
    setprod_cartesian_product ~> setprod.cartesian_product
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   384
    setprod_cong ~> setprod.cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   385
    setprod_delta ~> setprod.delta
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   386
    setprod_delta' ~> setprod.delta'
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   387
    setprod_empty ~> setprod.empty
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   388
    setprod_infinite ~> setprod.infinite
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   389
    setprod_insert ~> setprod.insert
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   390
    setprod_mono_one_cong_left ~> setprod.mono_neutral_cong_left
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   391
    setprod_mono_one_cong_right ~> setprod.mono_neutral_cong_right
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   392
    setprod_mono_one_left ~> setprod.mono_neutral_left
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   393
    setprod_mono_one_right ~> setprod.mono_neutral_right
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   394
    setprod_reindex ~> setprod.reindex
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   395
    setprod_reindex_cong ~> setprod.reindex_cong
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   396
    setprod_reindex_nonzero ~> setprod.reindex_nontrivial
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   397
    setprod_Sigma ~> setprod.Sigma
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   398
    setprod_subset_diff ~> setprod.subset_diff
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   399
    setprod_timesf ~> setprod.distrib
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   400
    setprod_Un2 ~> setprod.union_diff2
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   401
    setprod_Un_disjoint ~> setprod.union_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   402
    setprod_UN_disjoint ~> setprod.UNION_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   403
    setprod_Un_Int ~> setprod.union_inter
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   404
    setprod_Union_disjoint ~> setprod.Union_disjoint
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   405
    setprod_Un_one ~> setprod.union_inter_neutral
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   406
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   407
  Dropped setsum_cong2 (simple variant of setsum.cong).
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   408
  Dropped setsum_inter_restrict' (simple variant of setsum.inter_restrict)
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   409
  Dropped setsum_reindex_id, setprod_reindex_id
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   410
    (simple variants of setsum.reindex [symmetric], setprod.reindex [symmetric]).
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   411
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   412
  INCOMPATIBILITY.
6ab1c7cb0b8d fact consolidation
haftmann
parents: 57415
diff changeset
   413
56851
35ff4ede3409 renamed 'dpll_p' to 'cdclite', to avoid confusion with the old 'dpll' and to reflect the idea that the new prover implements some ideas from CDCL not in DPLL -- this follows its author's, Sascha B.'s, wish
blanchet
parents: 56850
diff changeset
   414
* New internal SAT solver "cdclite" that produces models and proof traces.
56845
691da43fbdd4 removed obsolete internal SAT solvers
boehmes
parents: 56843
diff changeset
   415
  This solver replaces the internal SAT solvers "enumerate" and "dpll".
691da43fbdd4 removed obsolete internal SAT solvers
boehmes
parents: 56843
diff changeset
   416
  Applications that explicitly used one of these two SAT solvers should
56851
35ff4ede3409 renamed 'dpll_p' to 'cdclite', to avoid confusion with the old 'dpll' and to reflect the idea that the new prover implements some ideas from CDCL not in DPLL -- this follows its author's, Sascha B.'s, wish
blanchet
parents: 56850
diff changeset
   417
  use "cdclite" instead. In addition, "cdclite" is now the default SAT
56850
13a7bca533a3 added 'satx' proof method to Try0
blanchet
parents: 56846
diff changeset
   418
  solver for the "sat" and "satx" proof methods and corresponding tactics;
13a7bca533a3 added 'satx' proof method to Try0
blanchet
parents: 56846
diff changeset
   419
  the old default can be restored using
13a7bca533a3 added 'satx' proof method to Try0
blanchet
parents: 56846
diff changeset
   420
  "declare [[sat_solver = zchaff_with_proofs]]". Minor INCOMPATIBILITY.
56815
848d507584db added internal proof-producing SAT solver
boehmes
parents: 56807
diff changeset
   421
56118
d3967fdc800a updated NEWS and CONTRIBUTORS (BNF, SMT2, Sledgehammer)
blanchet
parents: 56076
diff changeset
   422
* SMT module:
d3967fdc800a updated NEWS and CONTRIBUTORS (BNF, SMT2, Sledgehammer)
blanchet
parents: 56076
diff changeset
   423
  * A new version of the SMT module, temporarily called "SMT2", uses SMT-LIB 2
d3967fdc800a updated NEWS and CONTRIBUTORS (BNF, SMT2, Sledgehammer)
blanchet
parents: 56076
diff changeset
   424
    and supports recent versions of Z3 (e.g., 4.3). The new proof method is
57241
7fca4159117f updated docs
blanchet
parents: 57237
diff changeset
   425
    called "smt2". CVC3 and CVC4 are also supported as oracles. Yices is no
7fca4159117f updated docs
blanchet
parents: 57237
diff changeset
   426
    longer supported, because no version of the solver can handle both
7fca4159117f updated docs
blanchet
parents: 57237
diff changeset
   427
    SMT-LIB 2 and quantifiers.
56118
d3967fdc800a updated NEWS and CONTRIBUTORS (BNF, SMT2, Sledgehammer)
blanchet
parents: 56076
diff changeset
   428
55183
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   429
* Sledgehammer:
57246
blanchet
parents: 57245
diff changeset
   430
  - Z3 can now produce Isar proofs.
57020
blanchet
parents: 56996
diff changeset
   431
  - MaSh overhaul:
57089
353652f47974 renamed 'MaSh' option
blanchet
parents: 57084
diff changeset
   432
      - New SML-based learning engines eliminate the dependency on Python
353652f47974 renamed 'MaSh' option
blanchet
parents: 57084
diff changeset
   433
        and increase performance and reliability.
57272
fd539459a112 enabled MaSh by default -- set 'MaSh' to 'none' in Isabelle Plugin Options to disable
blanchet
parents: 57253
diff changeset
   434
      - MaSh and MeSh are now used by default together with the traditional
fd539459a112 enabled MaSh by default -- set 'MaSh' to 'none' in Isabelle Plugin Options to disable
blanchet
parents: 57253
diff changeset
   435
        MePo (Meng-Paulson) relevance filter. To disable MaSh, set the "MaSh"
fd539459a112 enabled MaSh by default -- set 'MaSh' to 'none' in Isabelle Plugin Options to disable
blanchet
parents: 57253
diff changeset
   436
        system option in Plugin Options / Isabelle / General to "none". Other
fd539459a112 enabled MaSh by default -- set 'MaSh' to 'none' in Isabelle Plugin Options to disable
blanchet
parents: 57253
diff changeset
   437
        allowed values include "sml" (for the default SML engine) and "py"
fd539459a112 enabled MaSh by default -- set 'MaSh' to 'none' in Isabelle Plugin Options to disable
blanchet
parents: 57253
diff changeset
   438
        (for the old Python engine).
55289
30d874dc7000 added new option to documentation
blanchet
parents: 55183
diff changeset
   439
  - New option:
55297
1dfcd49f5dcb renamed 'smt' option 'smt_proofs' to avoid clash with 'smt' prover
blanchet
parents: 55289
diff changeset
   440
      smt_proofs
55183
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   441
  - Renamed options:
57245
f6bf6d5341ee renamed Sledgehammer options
blanchet
parents: 57241
diff changeset
   442
      isar_compress ~> compress
f6bf6d5341ee renamed Sledgehammer options
blanchet
parents: 57241
diff changeset
   443
      isar_try0 ~> try0
55183
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   444
    INCOMPATIBILITY.
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   445
55315
54b0352fb46d removed legacy 'metisFT' method
blanchet
parents: 55297
diff changeset
   446
* Metis:
54b0352fb46d removed legacy 'metisFT' method
blanchet
parents: 55297
diff changeset
   447
  - Removed legacy proof method 'metisFT'. Use 'metis (full_types)' instead.
54b0352fb46d removed legacy 'metisFT' method
blanchet
parents: 55297
diff changeset
   448
    INCOMPATIBILITY.
54b0352fb46d removed legacy 'metisFT' method
blanchet
parents: 55297
diff changeset
   449
55183
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   450
* Try0: Added 'algebra' and 'meson' to the set of proof methods.
17ec4a29ef71 renamed Sledgehammer options for symmetry between positive and negative versions
blanchet
parents: 55152
diff changeset
   451
55519
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   452
* Command renaming: enriched_type ~> functor. INCOMPATIBILITY.
8a54bf4a92ca more NEWS
blanchet
parents: 55427
diff changeset
   453
55015
e33c5bd729ff added \<newline> symbol, which is used for char/string literals in HOL;
wenzelm
parents: 55007
diff changeset
   454
* The symbol "\<newline>" may be used within char or string literals
e33c5bd729ff added \<newline> symbol, which is used for char/string literals in HOL;
wenzelm
parents: 55007
diff changeset
   455
to represent (Char Nibble0 NibbleA), i.e. ASCII newline.
e33c5bd729ff added \<newline> symbol, which is used for char/string literals in HOL;
wenzelm
parents: 55007
diff changeset
   456
55007
0c07990363a3 activation of Z3 via "z3_non_commercial" system option (without requiring restart);
wenzelm
parents: 55006
diff changeset
   457
* Activation of Z3 now works via "z3_non_commercial" system option
0c07990363a3 activation of Z3 via "z3_non_commercial" system option (without requiring restart);
wenzelm
parents: 55006
diff changeset
   458
(without requiring restart), instead of former settings variable
0c07990363a3 activation of Z3 via "z3_non_commercial" system option (without requiring restart);
wenzelm
parents: 55006
diff changeset
   459
"Z3_NON_COMMERCIAL".  The option can be edited in Isabelle/jEdit menu
0c07990363a3 activation of Z3 via "z3_non_commercial" system option (without requiring restart);
wenzelm
parents: 55006
diff changeset
   460
Plugin Options / Isabelle / General.
0c07990363a3 activation of Z3 via "z3_non_commercial" system option (without requiring restart);
wenzelm
parents: 55006
diff changeset
   461
54893
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   462
* "declare [[code abort: ...]]" replaces "code_abort ...".
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   463
INCOMPATIBILITY.
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   464
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   465
* "declare [[code drop: ...]]" drops all code equations associated
54890
cb892d835803 fundamental treatment of undefined vs. universally partial replaces code_abort
haftmann
parents: 54881
diff changeset
   466
with the given constants.
cb892d835803 fundamental treatment of undefined vs. universally partial replaces code_abort
haftmann
parents: 54881
diff changeset
   467
54864
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   468
* Abolished slightly odd global lattice interpretation for min/max.
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   469
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   470
Fact consolidations:
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   471
    min_max.inf_assoc ~> min.assoc
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   472
    min_max.inf_commute ~> min.commute
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   473
    min_max.inf_left_commute ~> min.left_commute
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   474
    min_max.inf_idem ~> min.idem
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   475
    min_max.inf_left_idem ~> min.left_idem
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   476
    min_max.inf_right_idem ~> min.right_idem
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   477
    min_max.sup_assoc ~> max.assoc
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   478
    min_max.sup_commute ~> max.commute
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   479
    min_max.sup_left_commute ~> max.left_commute
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   480
    min_max.sup_idem ~> max.idem
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   481
    min_max.sup_left_idem ~> max.left_idem
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   482
    min_max.sup_inf_distrib1 ~> max_min_distrib2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   483
    min_max.sup_inf_distrib2 ~> max_min_distrib1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   484
    min_max.inf_sup_distrib1 ~> min_max_distrib2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   485
    min_max.inf_sup_distrib2 ~> min_max_distrib1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   486
    min_max.distrib ~> min_max_distribs
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   487
    min_max.inf_absorb1 ~> min.absorb1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   488
    min_max.inf_absorb2 ~> min.absorb2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   489
    min_max.sup_absorb1 ~> max.absorb1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   490
    min_max.sup_absorb2 ~> max.absorb2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   491
    min_max.le_iff_inf ~> min.absorb_iff1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   492
    min_max.le_iff_sup ~> max.absorb_iff2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   493
    min_max.inf_le1 ~> min.cobounded1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   494
    min_max.inf_le2 ~> min.cobounded2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   495
    le_maxI1, min_max.sup_ge1 ~> max.cobounded1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   496
    le_maxI2, min_max.sup_ge2 ~> max.cobounded2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   497
    min_max.le_infI1 ~> min.coboundedI1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   498
    min_max.le_infI2 ~> min.coboundedI2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   499
    min_max.le_supI1 ~> max.coboundedI1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   500
    min_max.le_supI2 ~> max.coboundedI2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   501
    min_max.less_infI1 ~> min.strict_coboundedI1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   502
    min_max.less_infI2 ~> min.strict_coboundedI2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   503
    min_max.less_supI1 ~> max.strict_coboundedI1
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   504
    min_max.less_supI2 ~> max.strict_coboundedI2
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   505
    min_max.inf_mono ~> min.mono
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   506
    min_max.sup_mono ~> max.mono
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   507
    min_max.le_infI, min_max.inf_greatest ~> min.boundedI
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   508
    min_max.le_supI, min_max.sup_least ~> max.boundedI
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   509
    min_max.le_inf_iff ~> min.bounded_iff
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   510
    min_max.le_sup_iff ~> max.bounded_iff
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   511
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   512
For min_max.inf_sup_aci, prefer (one of) min.commute, min.assoc,
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   513
min.left_commute, min.left_idem, max.commute, max.assoc,
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   514
max.left_commute, max.left_idem directly.
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   515
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   516
For min_max.inf_sup_ord, prefer (one of) min.cobounded1, min.cobounded2,
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   517
max.cobounded1m max.cobounded2 directly.
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   518
56807
haftmann
parents: 56787
diff changeset
   519
For min_ac or max_ac, prefer more general collection ac_simps.
54864
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   520
57253
paulson <lp15@cam.ac.uk>
parents: 57252
diff changeset
   521
INCOMPATBILITY.
54864
a064732223ad abolished slightly odd global lattice interpretation for min/max
haftmann
parents: 54850
diff changeset
   522
54850
haftmann
parents: 54787
diff changeset
   523
* Word library: bit representations prefer type bool over type bit.
haftmann
parents: 54787
diff changeset
   524
INCOMPATIBILITY.
haftmann
parents: 54787
diff changeset
   525
54745
46e441e61ff5 disambiguation of interpretation prefixes
haftmann
parents: 54742
diff changeset
   526
* Theorem disambiguation Inf_le_Sup (on finite sets) ~> Inf_fin_le_Sup_fin.
54850
haftmann
parents: 54787
diff changeset
   527
INCOMPATIBILITY.
54745
46e441e61ff5 disambiguation of interpretation prefixes
haftmann
parents: 54742
diff changeset
   528
54708
haftmann
parents: 54705
diff changeset
   529
* Code generations are provided for make, fields, extend and truncate
haftmann
parents: 54705
diff changeset
   530
operations on records.
haftmann
parents: 54705
diff changeset
   531
54295
45a5523d4a63 qualifed popular user space names
haftmann
parents: 54264
diff changeset
   532
* Qualified constant names Wellfounded.acc, Wellfounded.accp.
45a5523d4a63 qualifed popular user space names
haftmann
parents: 54264
diff changeset
   533
INCOMPATIBILITY.
45a5523d4a63 qualifed popular user space names
haftmann
parents: 54264
diff changeset
   534
54228
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   535
* Fact generalization and consolidation:
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   536
    neq_one_mod_two, mod_2_not_eq_zero_eq_one_int ~> not_mod_2_eq_0_eq_1
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   537
INCOMPATIBILITY.
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   538
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   539
* Purely algebraic definition of even.  Fact generalization and consolidation:
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   540
    nat_even_iff_2_dvd, int_even_iff_2_dvd ~> even_iff_2_dvd
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   541
    even_zero_(nat|int) ~> even_zero
229282d53781 purely algebraic foundation for even/odd
haftmann
parents: 54227
diff changeset
   542
INCOMPATIBILITY.
54055
5bf55a713232 back to post-release mode -- after fork point;
wenzelm
parents: 54049
diff changeset
   543
54489
03ff4d1e6784 eliminiated neg_numeral in favour of - (numeral _)
haftmann
parents: 54449
diff changeset
   544
* Abolished neg_numeral.
03ff4d1e6784 eliminiated neg_numeral in favour of - (numeral _)
haftmann
parents: 54449
diff changeset
   545
  * Canonical representation for minus one is "- 1".
03ff4d1e6784 eliminiated neg_numeral in favour of - (numeral _)
haftmann
parents: 54449
diff changeset
   546
  * Canonical representation for other negative numbers is "- (numeral _)".
54502
e7c9a14632d0 more correct NEWS
haftmann
parents: 54489
diff changeset
   547
  * When devising rule sets for number calculation, consider the
54587
19cd731eb745 even more precise NEWS
haftmann
parents: 54533
diff changeset
   548
    following canonical cases: 0, 1, numeral _, - 1, - numeral _.
19cd731eb745 even more precise NEWS
haftmann
parents: 54533
diff changeset
   549
  * HOLogic.dest_number also recognizes numerals in non-canonical forms
54893
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   550
    like "numeral One", "- numeral One", "- 0" and even "- ... - _".
54489
03ff4d1e6784 eliminiated neg_numeral in favour of - (numeral _)
haftmann
parents: 54449
diff changeset
   551
  * Syntax for negative numerals is mere input syntax.
56964
haftmann
parents: 56942
diff changeset
   552
INCOMPATIBILITY.
54489
03ff4d1e6784 eliminiated neg_numeral in favour of - (numeral _)
haftmann
parents: 54449
diff changeset
   553
54230
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   554
* Elimination of fact duplicates:
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   555
    equals_zero_I ~> minus_unique
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   556
    diff_eq_0_iff_eq ~> right_minus_eq
54588
traytel
parents: 54587
diff changeset
   557
    nat_infinite ~> infinite_UNIV_nat
traytel
parents: 54587
diff changeset
   558
    int_infinite ~> infinite_UNIV_int
54230
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   559
INCOMPATIBILITY.
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   560
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   561
* Fact name consolidation:
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   562
    diff_def, diff_minus, ab_diff_minus ~> diff_conv_add_uminus
54250
7d2544dd3988 fact generalization and name consolidation
haftmann
parents: 54230
diff changeset
   563
    minus_le_self_iff ~> neg_less_eq_nonneg
7d2544dd3988 fact generalization and name consolidation
haftmann
parents: 54230
diff changeset
   564
    le_minus_self_iff ~> less_eq_neg_nonpos
7d2544dd3988 fact generalization and name consolidation
haftmann
parents: 54230
diff changeset
   565
    neg_less_nonneg ~> neg_less_pos
7d2544dd3988 fact generalization and name consolidation
haftmann
parents: 54230
diff changeset
   566
    less_minus_self_iff ~> less_neg_neg [simp]
54230
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   567
INCOMPATIBILITY.
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   568
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   569
* More simplification rules on unary and binary minus:
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   570
add_diff_cancel, add_diff_cancel_left, add_le_same_cancel1,
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   571
add_le_same_cancel2, add_less_same_cancel1, add_less_same_cancel2,
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   572
add_minus_cancel, diff_add_cancel, le_add_same_cancel1,
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   573
le_add_same_cancel2, less_add_same_cancel1, less_add_same_cancel2,
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   574
minus_add_cancel, uminus_add_conv_diff.  These correspondingly
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   575
have been taken away from fact collections algebra_simps and
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   576
field_simps.  INCOMPATIBILITY.
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   577
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   578
To restore proofs, the following patterns are helpful:
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   579
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   580
a) Arbitrary failing proof not involving "diff_def":
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   581
Consider simplification with algebra_simps or field_simps.
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   582
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   583
b) Lifting rules from addition to subtraction:
54893
4061ec8adb1c avoid unicode text, which causes problems when recoding symbols (e.g. via UTF8-Isabelle in Isabelle/jEdit);
wenzelm
parents: 54890
diff changeset
   584
Try with "using <rule for addition> of [... "- _" ...]" by simp".
54230
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   585
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   586
c) Simplification with "diff_def": just drop "diff_def".
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   587
Consider simplification with algebra_simps or field_simps;
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   588
or the brute way with
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   589
"simp add: diff_conv_add_uminus del: add_uminus_conv_diff".
b1d955791529 more simplification rules on unary and binary minus
haftmann
parents: 54228
diff changeset
   590
54264
hoelzl
parents: 54250
diff changeset
   591
* SUP and INF generalized to conditionally_complete_lattice
hoelzl
parents: 54250
diff changeset
   592
hoelzl
parents: 54250
diff changeset
   593
* Theory Lubs moved HOL image to HOL-Library. It is replaced by
hoelzl
parents: 54250
diff changeset
   594
Conditionally_Complete_Lattices.   INCOMPATIBILITY.
hoelzl
parents: 54250
diff changeset
   595
hoelzl
parents: 54250
diff changeset
   596
* Introduce bdd_above and bdd_below in Conditionally_Complete_Lattices, use them
hoelzl
parents: 54250
diff changeset
   597
instead of explicitly stating boundedness of sets.
hoelzl
parents: 54250
diff changeset
   598
54631
Andreas Lochbihler
parents: 54588
diff changeset
   599
* ccpo.admissible quantifies only over non-empty chains to allow
Andreas Lochbihler
parents: 54588
diff changeset
   600
more syntax-directed proof rules; the case of the empty chain
Andreas Lochbihler
parents: 54588
diff changeset
   601
shows up as additional case in fixpoint induction proofs.
Andreas Lochbihler
parents: 54588
diff changeset
   602
INCOMPATIBILITY
54264
hoelzl
parents: 54250
diff changeset
   603
56214
hoelzl
parents: 56212
diff changeset
   604
* Removed and renamed theorems in Series:
hoelzl
parents: 56212
diff changeset
   605
  summable_le         ~>  suminf_le
hoelzl
parents: 56212
diff changeset
   606
  suminf_le           ~>  suminf_le_const
hoelzl
parents: 56212
diff changeset
   607
  series_pos_le       ~>  setsum_le_suminf
hoelzl
parents: 56212
diff changeset
   608
  series_pos_less     ~>  setsum_less_suminf
hoelzl
parents: 56212
diff changeset
   609
  suminf_ge_zero      ~>  suminf_nonneg
hoelzl
parents: 56212
diff changeset
   610
  suminf_gt_zero      ~>  suminf_pos
hoelzl
parents: 56212
diff changeset
   611
  suminf_gt_zero_iff  ~>  suminf_pos_iff
hoelzl
parents: 56212
diff changeset
   612
  summable_sumr_LIMSEQ_suminf  ~>  summable_LIMSEQ
hoelzl
parents: 56212
diff changeset
   613
  suminf_0_le         ~>  suminf_nonneg [rotate]
hoelzl
parents: 56212
diff changeset
   614
  pos_summable        ~>  summableI_nonneg_bounded
hoelzl
parents: 56212
diff changeset
   615
  ratio_test          ~>  summable_ratio_test
hoelzl
parents: 56212
diff changeset
   616
hoelzl
parents: 56212
diff changeset
   617
  removed series_zero, replaced by sums_finite
hoelzl
parents: 56212
diff changeset
   618
hoelzl
parents: 56212
diff changeset
   619
  removed auxiliary lemmas:
hoelzl
parents: 56212
diff changeset
   620
    sumr_offset, sumr_offset2, sumr_offset3, sumr_offset4, sumr_group,
hoelzl
parents: 56212
diff changeset
   621
    half, le_Suc_ex_iff, lemma_realpow_diff_sumr, real_setsum_nat_ivl_bounded,
hoelzl
parents: 56212
diff changeset
   622
    summable_le2, ratio_test_lemma2, sumr_minus_one_realpow_zerom,
hoelzl
parents: 56212
diff changeset
   623
    sumr_one_lb_realpow_zero, summable_convergent_sumr_iff, sumr_diff_mult_const
hoelzl
parents: 56212
diff changeset
   624
INCOMPATIBILITY.
hoelzl
parents: 56212
diff changeset
   625
hoelzl
parents: 56212
diff changeset
   626
* Replace (F)DERIV syntax by has_derivative:
hoelzl
parents: 56212
diff changeset
   627
  - "(f has_derivative f') (at x within s)" replaces "FDERIV f x : s : f'"
hoelzl
parents: 56212
diff changeset
   628
hoelzl
parents: 56212
diff changeset
   629
  - "(f has_field_derivative f') (at x within s)" replaces "DERIV f x : s : f'"
hoelzl
parents: 56212
diff changeset
   630
hoelzl
parents: 56212
diff changeset
   631
  - "f differentiable at x within s" replaces "_ differentiable _ in _" syntax
hoelzl
parents: 56212
diff changeset
   632
hoelzl
parents: 56212
diff changeset
   633
  - removed constant isDiff
hoelzl
parents: 56212
diff changeset
   634
hoelzl
parents: 56212
diff changeset
   635
  - "DERIV f x : f'" and "FDERIV f x : f'" syntax is only available as input
hoelzl
parents: 56212
diff changeset
   636
    syntax.
hoelzl
parents: 56212
diff changeset
   637
hoelzl
parents: 56212
diff changeset
   638
  - "DERIV f x : s : f'" and "FDERIV f x : s : f'" syntax removed
hoelzl
parents: 56212
diff changeset
   639
hoelzl
parents: 56212
diff changeset
   640
  - Renamed FDERIV_... lemmas to has_derivative_...
hoelzl
parents: 56212
diff changeset
   641
56381
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   642
  - renamed deriv (the syntax constant used for "DERIV _ _ :> _") to DERIV
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   643
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   644
  - removed DERIV_intros, has_derivative_eq_intros
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   645
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   646
  - introduced derivative_intros and deriative_eq_intros which includes now rules for
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   647
    DERIV, has_derivative and has_vector_derivative.
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   648
56214
hoelzl
parents: 56212
diff changeset
   649
  - Other renamings:
hoelzl
parents: 56212
diff changeset
   650
    differentiable_def        ~>  real_differentiable_def
hoelzl
parents: 56212
diff changeset
   651
    differentiableE           ~>  real_differentiableE
hoelzl
parents: 56212
diff changeset
   652
    fderiv_def                ~>  has_derivative_at
hoelzl
parents: 56212
diff changeset
   653
    field_fderiv_def          ~>  field_has_derivative_at
hoelzl
parents: 56212
diff changeset
   654
    isDiff_der                ~>  differentiable_def
hoelzl
parents: 56212
diff changeset
   655
    deriv_fderiv              ~>  has_field_derivative_def
56381
0556204bc230 merged DERIV_intros, has_derivative_intros into derivative_intros
hoelzl
parents: 56371
diff changeset
   656
    deriv_def                 ~>  DERIV_def
56214
hoelzl
parents: 56212
diff changeset
   657
INCOMPATIBILITY.
hoelzl
parents: 56212
diff changeset
   658
56371
fb9ae0727548 extend continuous_intros; remove continuous_on_intros and isCont_intros
hoelzl
parents: 56369
diff changeset
   659
* Include more theorems in continuous_intros. Remove the continuous_on_intros,
fb9ae0727548 extend continuous_intros; remove continuous_on_intros and isCont_intros
hoelzl
parents: 56369
diff changeset
   660
  isCont_intros collections, these facts are now in continuous_intros.
fb9ae0727548 extend continuous_intros; remove continuous_on_intros and isCont_intros
hoelzl
parents: 56369
diff changeset
   661
56889
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   662
* Theorems about complex numbers are now stated only using Re and Im, the Complex
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   663
  constructor is not used anymore. It is possible to use primcorec to defined the
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   664
  behaviour of a complex-valued function.
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   665
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   666
  Removed theorems about the Complex constructor from the simpset, they are
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   667
  available as the lemma collection legacy_Complex_simps. This especially
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   668
  removes
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   669
    i_complex_of_real: "ii * complex_of_real r = Complex 0 r".
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   670
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   671
  Instead the reverse direction is supported with
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   672
    Complex_eq: "Complex a b = a + \<i> * b"
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   673
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   674
  Moved csqrt from Fundamental_Algebra_Theorem to Complex.
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   675
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   676
  Renamings:
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   677
    Re/Im                  ~>  complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   678
    complex_Re/Im_zero     ~>  zero_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   679
    complex_Re/Im_add      ~>  plus_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   680
    complex_Re/Im_minus    ~>  uminus_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   681
    complex_Re/Im_diff     ~>  minus_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   682
    complex_Re/Im_one      ~>  one_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   683
    complex_Re/Im_mult     ~>  times_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   684
    complex_Re/Im_inverse  ~>  inverse_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   685
    complex_Re/Im_scaleR   ~>  scaleR_complex.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   686
    complex_Re/Im_i        ~>  ii.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   687
    complex_Re/Im_cnj      ~>  cnj.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   688
    Re/Im_cis              ~>  cis.sel
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   689
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   690
    complex_divide_def   ~>  divide_complex_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   691
    complex_norm_def     ~>  norm_complex_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   692
    cmod_def             ~>  norm_complex_de
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   693
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   694
  Removed theorems:
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   695
    complex_zero_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   696
    complex_add_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   697
    complex_minus_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   698
    complex_diff_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   699
    complex_one_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   700
    complex_mult_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   701
    complex_inverse_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   702
    complex_scaleR_def
48a745e1bde7 avoid the Complex constructor, use the more natural Re/Im view; moved csqrt to Complex.
hoelzl
parents: 56879
diff changeset
   703
55049
327eafb594ba removed obsolete remote_cvc3 and remote_z3
boehmes
parents: 55029
diff changeset
   704
* Removed solvers remote_cvc3 and remote_z3. Use cvc3 and z3 instead.
327eafb594ba removed obsolete remote_cvc3 and remote_z3
boehmes
parents: 55029
diff changeset
   705
54672
748778ac0ab8 relocate NEWS to post-release version (cf. 7a14f831d02d);
wenzelm
parents: 54671
diff changeset
   706
* Nitpick:
748778ac0ab8 relocate NEWS to post-release version (cf. 7a14f831d02d);
wenzelm
parents: 54671
diff changeset
   707
  - Fixed soundness bug whereby mutually recursive datatypes could take
748778ac0ab8 relocate NEWS to post-release version (cf. 7a14f831d02d);
wenzelm
parents: 54671
diff changeset
   708
    infinite values.
55889
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
   709
  - Fixed soundness bug with low-level number functions such as "Abs_Integ" and
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
   710
    "Rep_Integ".
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
   711
  - Removed "std" option.
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
   712
  - Renamed "show_datatypes" to "show_types" and "hide_datatypes" to
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
   713
    "hide_types".
54672
748778ac0ab8 relocate NEWS to post-release version (cf. 7a14f831d02d);
wenzelm
parents: 54671
diff changeset
   714
54787
immler
parents: 54745
diff changeset
   715
* HOL-Multivariate_Analysis:
immler
parents: 54745
diff changeset
   716
  - type class ordered_real_vector for ordered vector spaces
57253
paulson <lp15@cam.ac.uk>
parents: 57252
diff changeset
   717
  - new theory Complex_Basic_Analysis defining complex derivatives,
paulson <lp15@cam.ac.uk>
parents: 57252
diff changeset
   718
    holomorphic functions, etc., ported from HOL Light's canal.ml.
54787
immler
parents: 54745
diff changeset
   719
  - changed order of ordered_euclidean_space to be compatible with
immler
parents: 54745
diff changeset
   720
    pointwise ordering on products. Therefore instance of
immler
parents: 54745
diff changeset
   721
    conditionally_complete_lattice and ordered_real_vector.
immler
parents: 54745
diff changeset
   722
    INCOMPATIBILITY: use box instead of greaterThanLessThan or
immler
parents: 54745
diff changeset
   723
    explicit set-comprehensions with eucl_less for other (half-) open
immler
parents: 54745
diff changeset
   724
    intervals.
immler
parents: 54745
diff changeset
   725
56369
2704ca85be98 moved generic theorems from Complex_Analysis_Basic; fixed some theorem names
hoelzl
parents: 56342
diff changeset
   726
  - renamed theorems:
2704ca85be98 moved generic theorems from Complex_Analysis_Basic; fixed some theorem names
hoelzl
parents: 56342
diff changeset
   727
    derivative_linear         ~>  has_derivative_bounded_linear
2704ca85be98 moved generic theorems from Complex_Analysis_Basic; fixed some theorem names
hoelzl
parents: 56342
diff changeset
   728
    derivative_is_linear      ~>  has_derivative_linear
2704ca85be98 moved generic theorems from Complex_Analysis_Basic; fixed some theorem names
hoelzl
parents: 56342
diff changeset
   729
    bounded_linear_imp_linear ~>  bounded_linear.linear
2704ca85be98 moved generic theorems from Complex_Analysis_Basic; fixed some theorem names
hoelzl
parents: 56342
diff changeset
   730
56993
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   731
* HOL-Probability:
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   732
  - replaced the Lebesgue integral on real numbers by the more general Bochner
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   733
    integral for functions into a real-normed vector space.
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   734
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   735
    integral_zero               ~>  integral_zero / integrable_zero
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   736
    integral_minus              ~>  integral_minus / integrable_minus
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   737
    integral_add                ~>  integral_add / integrable_add
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   738
    integral_diff               ~>  integral_diff / integrable_diff
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   739
    integral_setsum             ~>  integral_setsum / integrable_setsum
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   740
    integral_multc              ~>  integral_mult_left / integrable_mult_left
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   741
    integral_cmult              ~>  integral_mult_right / integrable_mult_right
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   742
    integral_triangle_inequality~>  integral_norm_bound
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   743
    integrable_nonneg           ~>  integrableI_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   744
    integral_positive           ~>  integral_nonneg_AE
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   745
    integrable_abs_iff          ~>  integrable_abs_cancel
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   746
    positive_integral_lim_INF   ~>  positive_integral_liminf
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   747
    lebesgue_real_affine        ~>  lborel_real_affine
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   748
    borel_integral_has_integral ~>  has_integral_lebesgue_integral
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   749
    integral_indicator          ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   750
         integral_real_indicator / integrable_real_indicator
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   751
    positive_integral_fst       ~>  positive_integral_fst'
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   752
    positive_integral_fst_measurable ~> positive_integral_fst
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   753
    positive_integral_snd_measurable ~> positive_integral_snd
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   754
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   755
    integrable_fst_measurable   ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   756
         integral_fst / integrable_fst / AE_integrable_fst
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   757
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   758
    integrable_snd_measurable   ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   759
         integral_snd / integrable_snd / AE_integrable_snd
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   760
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   761
    integral_monotone_convergence  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   762
         integral_monotone_convergence / integrable_monotone_convergence
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   763
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   764
    integral_monotone_convergence_at_top  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   765
         integral_monotone_convergence_at_top /
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   766
         integrable_monotone_convergence_at_top
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   767
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   768
    has_integral_iff_positive_integral_lebesgue  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   769
         has_integral_iff_has_bochner_integral_lebesgue_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   770
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   771
    lebesgue_integral_has_integral  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   772
         has_integral_integrable_lebesgue_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   773
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   774
    positive_integral_lebesgue_has_integral  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   775
         integral_has_integral_lebesgue_nonneg /
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   776
         integrable_has_integral_lebesgue_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   777
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   778
    lebesgue_integral_real_affine  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   779
         positive_integral_real_affine
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   780
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   781
    has_integral_iff_positive_integral_lborel  ~>
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   782
         integral_has_integral_nonneg / integrable_has_integral_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   783
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   784
    The following theorems where removed:
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   785
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   786
    lebesgue_integral_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   787
    lebesgue_integral_uminus
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   788
    lebesgue_integral_cmult
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   789
    lebesgue_integral_multc
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   790
    lebesgue_integral_cmult_nonneg
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   791
    integral_cmul_indicator
e5366291d6aa introduce Bochner integral: generalizes Lebesgue integral from real-valued function to functions on real-normed vector spaces
hoelzl
parents: 56964
diff changeset
   792
    integral_real
54672
748778ac0ab8 relocate NEWS to post-release version (cf. 7a14f831d02d);
wenzelm
parents: 54671
diff changeset
   793
56996
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   794
  - Renamed positive_integral to nn_integral:
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   795
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   796
    * Renamed all lemmas "*positive_integral*" to *nn_integral*"
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   797
      positive_integral_positive ~> nn_integral_nonneg
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   798
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   799
    * Renamed abbreviation integral\<^sup>P to integral\<^sup>N.
891e992e510f renamed positive_integral to nn_integral
hoelzl
parents: 56993
diff changeset
   800
57252
19b7ace1c5da properties of normal distributed random variables (by Sudeep Kanav)
hoelzl
parents: 57251
diff changeset
   801
  - Formalized properties about exponentially, Erlang, and normal distributed
19b7ace1c5da properties of normal distributed random variables (by Sudeep Kanav)
hoelzl
parents: 57251
diff changeset
   802
    random variables.
19b7ace1c5da properties of normal distributed random variables (by Sudeep Kanav)
hoelzl
parents: 57251
diff changeset
   803
57112
70395c65c0e3 removed Kleene_Algebra because of superior AFP entry; authors agreed
nipkow
parents: 57094
diff changeset
   804
* Library/Kleene-Algebra was removed because AFP/Kleene_Algebra subsumes it.
70395c65c0e3 removed Kleene_Algebra because of superior AFP entry; authors agreed
nipkow
parents: 57094
diff changeset
   805
55622
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   806
*** Scala ***
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   807
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   808
* The signature and semantics of Document.Snapshot.cumulate_markup /
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   809
select_markup have been clarified.  Markup is now traversed in the
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   810
order of reports given by the prover: later markup is usually more
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   811
specific and may override results accumulated so far.  The elements
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   812
guard is mandatory and checked precisely.  Subtle INCOMPATIBILITY.
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   813
ce575c2212fc clarified markup cumulation order (see also 25306d92f4ad and 0009a6ebc83b), e.g. relevant for completion_context;
wenzelm
parents: 55585
diff changeset
   814
54449
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   815
*** ML ***
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   816
56303
4cc3f4db3447 clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
wenzelm
parents: 56285
diff changeset
   817
* Moved ML_Compiler.exn_trace and other operations on exceptions to
4cc3f4db3447 clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
wenzelm
parents: 56285
diff changeset
   818
structure Runtime.  Minor INCOMPATIBILITY.
4cc3f4db3447 clarified Isabelle/ML bootstrap, such that Execution does not require ML_Compiler;
wenzelm
parents: 56285
diff changeset
   819
56279
b4d874f6c6be clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
wenzelm
parents: 56276
diff changeset
   820
* Discontinued old Toplevel.debug in favour of system option
b4d874f6c6be clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
wenzelm
parents: 56276
diff changeset
   821
"ML_exception_trace", which may be also declared within the context via
b4d874f6c6be clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
wenzelm
parents: 56276
diff changeset
   822
"declare [[ML_exception_trace = true]]".  Minor INCOMPATIBILITY.
b4d874f6c6be clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
wenzelm
parents: 56276
diff changeset
   823
56281
03c3d1a7c3b8 proper configuration option "ML_print_depth";
wenzelm
parents: 56279
diff changeset
   824
* Renamed configuration option "ML_trace" to "ML_source_trace". Minor
03c3d1a7c3b8 proper configuration option "ML_print_depth";
wenzelm
parents: 56279
diff changeset
   825
INCOMPATIBILITY.
03c3d1a7c3b8 proper configuration option "ML_print_depth";
wenzelm
parents: 56279
diff changeset
   826
03c3d1a7c3b8 proper configuration option "ML_print_depth";
wenzelm
parents: 56279
diff changeset
   827
* Configuration option "ML_print_depth" controls the pretty-printing
03c3d1a7c3b8 proper configuration option "ML_print_depth";
wenzelm
parents: 56279
diff changeset
   828
depth of the ML compiler within the context.  The old print_depth in
56285
wenzelm
parents: 56281
diff changeset
   829
ML is still available as default_print_depth, but rarely used.  Minor
wenzelm
parents: 56281
diff changeset
   830
INCOMPATIBILITY.
56279
b4d874f6c6be clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
wenzelm
parents: 56276
diff changeset
   831
55143
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   832
* Proper context discipline for read_instantiate and instantiate_tac:
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   833
variables that are meant to become schematic need to be given as
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   834
fixed, and are generalized by the explicit context of local variables.
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   835
This corresponds to Isar attributes "where" and "of" with 'for'
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   836
declaration.  INCOMPATIBILITY, also due to potential change of indices
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   837
of schematic variables.
04448228381d explicit eigen-context for attributes "where", "of", and corresponding read_instantiate, instantiate_tac;
wenzelm
parents: 55139
diff changeset
   838
54449
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   839
* Toplevel function "use" refers to raw ML bootstrap environment,
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   840
without Isar context nor antiquotations.  Potential INCOMPATIBILITY.
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   841
Note that 'ML_file' is the canonical command to load ML files into the
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   842
formal context.
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   843
54742
7a86358a3c0b proper context for basic Simplifier operations: rewrite_rule, rewrite_goals_rule, rewrite_goals_tac etc.;
wenzelm
parents: 54732
diff changeset
   844
* Proper context for basic Simplifier operations: rewrite_rule,
7a86358a3c0b proper context for basic Simplifier operations: rewrite_rule, rewrite_goals_rule, rewrite_goals_tac etc.;
wenzelm
parents: 54732
diff changeset
   845
rewrite_goals_rule, rewrite_goals_tac etc. INCOMPATIBILITY, need to
7a86358a3c0b proper context for basic Simplifier operations: rewrite_rule, rewrite_goals_rule, rewrite_goals_tac etc.;
wenzelm
parents: 54732
diff changeset
   846
pass runtime Proof.context (and ensure that the simplified entity
7a86358a3c0b proper context for basic Simplifier operations: rewrite_rule, rewrite_goals_rule, rewrite_goals_tac etc.;
wenzelm
parents: 54732
diff changeset
   847
actually belongs to it).
7a86358a3c0b proper context for basic Simplifier operations: rewrite_rule, rewrite_goals_rule, rewrite_goals_tac etc.;
wenzelm
parents: 54732
diff changeset
   848
55549
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   849
* Subtle change of semantics of Thm.eq_thm: theory stamps are not
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   850
compared (according to Thm.thm_ord), but assumed to be covered by the
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   851
current background theory.  Thus equivalent data produced in different
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   852
branches of the theory graph usually coincides (e.g. relevant for
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   853
theory merge).  Note that the softer Thm.eq_thm_prop is often more
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   854
appropriate than Thm.eq_thm.
384bfd19ee61 subtle change of semantics of Thm.eq_thm, e.g. relevant for merge of src/HOL/Tools/Predicate_Compile/core_data.ML (cf. HOL-IMP);
wenzelm
parents: 55536
diff changeset
   855
56205
ceb8a93460b7 clarified modules;
wenzelm
parents: 56166
diff changeset
   856
* Simplified programming interface to define ML antiquotations, see
ceb8a93460b7 clarified modules;
wenzelm
parents: 56166
diff changeset
   857
structure ML_Antiquotation.  Minor INCOMPATIBILITY.
56069
451d5b73f8cf simplified programming interface to define ML antiquotations -- NB: the transformed context ignores updates of the context parser;
wenzelm
parents: 55965
diff changeset
   858
56071
2ffdedb0c044 added ML antiquotation @{here};
wenzelm
parents: 56069
diff changeset
   859
* ML antiquotation @{here} refers to its source position, which is
2ffdedb0c044 added ML antiquotation @{here};
wenzelm
parents: 56069
diff changeset
   860
occasionally useful for experimentation and diagnostic purposes.
2ffdedb0c044 added ML antiquotation @{here};
wenzelm
parents: 56069
diff changeset
   861
56135
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   862
* ML antiquotation @{path} produces a Path.T value, similarly to
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   863
Path.explode, but with compile-time check against the file-system and
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   864
some PIDE markup.  Note that unlike theory source, ML does not have a
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   865
well-defined master directory, so an absolute symbolic path
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   866
specification is usually required, e.g. "~~/src/HOL".
efa24d31e595 added ML antiquotation @{path};
wenzelm
parents: 56072
diff changeset
   867
56399
386e4cb7ad68 added ML antiquotation @{print};
wenzelm
parents: 56381
diff changeset
   868
* ML antiquotation @{print} inlines a function to print an arbitrary
386e4cb7ad68 added ML antiquotation @{print};
wenzelm
parents: 56381
diff changeset
   869
ML value, which is occasionally useful for diagnostic or demonstration
386e4cb7ad68 added ML antiquotation @{print};
wenzelm
parents: 56381
diff changeset
   870
purposes.
386e4cb7ad68 added ML antiquotation @{print};
wenzelm
parents: 56381
diff changeset
   871
54449
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   872
54683
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   873
*** System ***
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   874
56787
81dc6fffdf30 require explicit 'document_files';
wenzelm
parents: 56762
diff changeset
   875
* Session ROOT specifications require explicit 'document_files' for
56533
cd8b6d849b6a explicit 'document_files' in session ROOT specifications;
wenzelm
parents: 56505
diff changeset
   876
robust dependencies on LaTeX sources.  Only these explicitly given
cd8b6d849b6a explicit 'document_files' in session ROOT specifications;
wenzelm
parents: 56505
diff changeset
   877
files are copied to the document output directory, before document
cd8b6d849b6a explicit 'document_files' in session ROOT specifications;
wenzelm
parents: 56505
diff changeset
   878
processing is started.
cd8b6d849b6a explicit 'document_files' in session ROOT specifications;
wenzelm
parents: 56505
diff changeset
   879
54683
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   880
* Simplified "isabelle display" tool.  Settings variables DVI_VIEWER
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   881
and PDF_VIEWER now refer to the actual programs, not shell
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   882
command-lines.  Discontinued option -c: invocation may be asynchronous
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   883
via desktop environment, without any special precautions.  Potential
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   884
INCOMPATIBILITY with ambitious private settings.
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   885
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   886
* Improved 'display_drafts' concerning desktop integration and
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   887
repeated invocation in PIDE front-end: re-use single file
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   888
$ISABELLE_HOME_USER/tmp/drafts.pdf and corresponding views.
cf48ddc266e5 clarified "isabelle display" and 'display_drafts': re-use file and program instance, open asynchronously via desktop environment;
wenzelm
parents: 54672
diff changeset
   889
56439
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   890
* The raw Isabelle process executable has been renamed from
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   891
"isabelle-process" to "isabelle_process", which conforms to common
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   892
shell naming conventions, and allows to define a shell function within
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   893
the Isabelle environment to avoid dynamic path lookup.  Rare
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   894
incompatibility for old tools that do not use the $ISABELLE_PROCESS
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   895
settings variable yet.
95e2656b3b23 renamed "isabelle-process" to "isabelle_process", with shell function to avoid dynamic path lookups;
wenzelm
parents: 56413
diff changeset
   896
57413
c14af83bd8db removed obsolete "isabelle unsymbolize";
wenzelm
parents: 57272
diff changeset
   897
* Removed obsolete "isabelle unsymbolize".  Note that the usual format
c14af83bd8db removed obsolete "isabelle unsymbolize";
wenzelm
parents: 57272
diff changeset
   898
for email communication is the Unicode rendering of Isabelle symbols,
c14af83bd8db removed obsolete "isabelle unsymbolize";
wenzelm
parents: 57272
diff changeset
   899
as produced by Isabelle/jEdit, for example.
c14af83bd8db removed obsolete "isabelle unsymbolize";
wenzelm
parents: 57272
diff changeset
   900
57084
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   901
* Retired the now unused Isabelle tool "wwwfind". Similar
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   902
functionality may be integrated into PIDE/jEdit at a later point.
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   903
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   904
* Windows: support for regular TeX installation (e.g. MiKTeX) instead
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   905
of TeX Live from Cygwin.
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   906
70e288a4b32d support for regular Windows TeX installation;
wenzelm
parents: 57029
diff changeset
   907
54449
f3cfe882f9af toplevel function "use" refers to raw ML bootstrap environment;
wenzelm
parents: 54384
diff changeset
   908
54639
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   909
New in Isabelle2013-2 (December 2013)
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   910
-------------------------------------
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   911
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   912
*** Prover IDE -- Isabelle/Scala/jEdit ***
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   913
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   914
* More robust editing of running commands with internal forks,
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   915
e.g. non-terminating 'by' steps.
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   916
54641
wenzelm
parents: 54639
diff changeset
   917
* More relaxed Sledgehammer panel: avoid repeated application of query
wenzelm
parents: 54639
diff changeset
   918
after edits surrounding the command location.
wenzelm
parents: 54639
diff changeset
   919
54648
wenzelm
parents: 54641
diff changeset
   920
* More status information about commands that are interrupted
wenzelm
parents: 54641
diff changeset
   921
accidentally (via physical event or Poly/ML runtime system signal,
wenzelm
parents: 54641
diff changeset
   922
e.g. out-of-memory).
wenzelm
parents: 54641
diff changeset
   923
54653
wenzelm
parents: 54648
diff changeset
   924
wenzelm
parents: 54648
diff changeset
   925
*** System ***
wenzelm
parents: 54648
diff changeset
   926
wenzelm
parents: 54648
diff changeset
   927
* More robust termination of external processes managed by
54664
wenzelm
parents: 54653
diff changeset
   928
Isabelle/ML: support cancellation of tasks within the range of
wenzelm
parents: 54653
diff changeset
   929
milliseconds, as required for PIDE document editing with automatically
wenzelm
parents: 54653
diff changeset
   930
tried tools (e.g. Sledgehammer).
54653
wenzelm
parents: 54648
diff changeset
   931
54648
wenzelm
parents: 54641
diff changeset
   932
* Reactivated Isabelle/Scala kill command for external processes on
wenzelm
parents: 54641
diff changeset
   933
Mac OS X, which was accidentally broken in Isabelle2013-1 due to a
wenzelm
parents: 54641
diff changeset
   934
workaround for some Debian/Ubuntu Linux versions from 2013.
wenzelm
parents: 54641
diff changeset
   935
54639
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   936
5adc68deb322 updated to Isabelle2013-2;
wenzelm
parents: 54378
diff changeset
   937
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   938
New in Isabelle2013-1 (November 2013)
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   939
-------------------------------------
50994
aafd4270b4d4 back to post-release mode -- after fork point;
wenzelm
parents: 50993
diff changeset
   940
51293
05b1bbae748d discontinued obsolete 'uses' within theory header;
wenzelm
parents: 51238
diff changeset
   941
*** General ***
05b1bbae748d discontinued obsolete 'uses' within theory header;
wenzelm
parents: 51238
diff changeset
   942
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   943
* Discontinued obsolete 'uses' within theory header.  Note that
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   944
commands like 'ML_file' work without separate declaration of file
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   945
dependencies.  Minor INCOMPATIBILITY.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   946
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   947
* Discontinued redundant 'use' command, which was superseded by
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   948
'ML_file' in Isabelle2013.  Minor INCOMPATIBILITY.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   949
53016
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   950
* Simplified subscripts within identifiers, using plain \<^sub>
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   951
instead of the second copy \<^isub> and \<^isup>.  Superscripts are
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   952
only for literal tokens within notation; explicit mixfix annotations
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   953
for consts or fixed variables may be used as fall-back for unusual
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   954
names.  Obsolete \<twosuperior> has been expanded to \<^sup>2 in
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   955
Isabelle/HOL.  INCOMPATIBILITY, use "isabelle update_sub_sup" to
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   956
standardize symbols as a starting point for further manual cleanup.
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   957
The ML reference variable "legacy_isub_isup" may be set as temporary
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   958
workaround, to make the prover accept a subset of the old identifier
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   959
syntax.
fa9c38891cf2 disable old identifier syntax by default, legacy_isub_isup := true may be used temporarily as fall-back;
wenzelm
parents: 52949
diff changeset
   960
53021
d0fa3f446b9d discontinued special treatment of \<^isub> and \<^isup> in rendering or editor front-end;
wenzelm
parents: 53016
diff changeset
   961
* Document antiquotations: term style "isub" has been renamed to
d0fa3f446b9d discontinued special treatment of \<^isub> and \<^isup> in rendering or editor front-end;
wenzelm
parents: 53016
diff changeset
   962
"sub".  Minor INCOMPATIBILITY.
d0fa3f446b9d discontinued special treatment of \<^isub> and \<^isup> in rendering or editor front-end;
wenzelm
parents: 53016
diff changeset
   963
52487
48bc24467008 backout dedd7952a62c: static "proofs" value within theory prevents later inferencing with different configuration;
wenzelm
parents: 52470
diff changeset
   964
* Uniform management of "quick_and_dirty" as system option (see also
48bc24467008 backout dedd7952a62c: static "proofs" value within theory prevents later inferencing with different configuration;
wenzelm
parents: 52470
diff changeset
   965
"isabelle options"), configuration option within the context (see also
48bc24467008 backout dedd7952a62c: static "proofs" value within theory prevents later inferencing with different configuration;
wenzelm
parents: 52470
diff changeset
   966
Config.get in Isabelle/ML), and attribute in Isabelle/Isar.  Minor
48bc24467008 backout dedd7952a62c: static "proofs" value within theory prevents later inferencing with different configuration;
wenzelm
parents: 52470
diff changeset
   967
INCOMPATIBILITY, need to use more official Isabelle means to access
48bc24467008 backout dedd7952a62c: static "proofs" value within theory prevents later inferencing with different configuration;
wenzelm
parents: 52470
diff changeset
   968
quick_and_dirty, instead of historical poking into mutable reference.
52059
2f970c7f722b proper option quick_and_dirty;
wenzelm
parents: 52054
diff changeset
   969
52060
179236c82c2a renamed 'print_configs' to 'print_options';
wenzelm
parents: 52059
diff changeset
   970
* Renamed command 'print_configs' to 'print_options'.  Minor
179236c82c2a renamed 'print_configs' to 'print_options';
wenzelm
parents: 52059
diff changeset
   971
INCOMPATIBILITY.
179236c82c2a renamed 'print_configs' to 'print_options';
wenzelm
parents: 52059
diff changeset
   972
52430
289e36c2870a proper diagnostic command 'print_state';
wenzelm
parents: 52415
diff changeset
   973
* Proper diagnostic command 'print_state'.  Old 'pr' (with its
289e36c2870a proper diagnostic command 'print_state';
wenzelm
parents: 52415
diff changeset
   974
implicit change of some global references) is retained for now as
289e36c2870a proper diagnostic command 'print_state';
wenzelm
parents: 52415
diff changeset
   975
control command, e.g. for ProofGeneral 3.7.x.
289e36c2870a proper diagnostic command 'print_state';
wenzelm
parents: 52415
diff changeset
   976
52549
802576856527 discontinued command 'print_drafts';
wenzelm
parents: 52539
diff changeset
   977
* Discontinued 'print_drafts' command with its old-fashioned PS output
802576856527 discontinued command 'print_drafts';
wenzelm
parents: 52539
diff changeset
   978
and Unix command-line print spooling.  Minor INCOMPATIBILITY: use
802576856527 discontinued command 'print_drafts';
wenzelm
parents: 52539
diff changeset
   979
'display_drafts' instead and print via the regular document viewer.
802576856527 discontinued command 'print_drafts';
wenzelm
parents: 52539
diff changeset
   980
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   981
* Updated and extended "isar-ref" and "implementation" manual,
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   982
eliminated old "ref" manual.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   983
51293
05b1bbae748d discontinued obsolete 'uses' within theory header;
wenzelm
parents: 51238
diff changeset
   984
51533
3f6280aedbcc dockable window for timing information;
wenzelm
parents: 51517
diff changeset
   985
*** Prover IDE -- Isabelle/Scala/jEdit ***
3f6280aedbcc dockable window for timing information;
wenzelm
parents: 51517
diff changeset
   986
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   987
* New manual "jedit" for Isabelle/jEdit, see isabelle doc or
53852
wenzelm
parents: 53803
diff changeset
   988
Documentation panel.
wenzelm
parents: 53803
diff changeset
   989
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   990
* Dockable window "Documentation" provides access to Isabelle
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
   991
documentation.
52646
wenzelm
parents: 52550
diff changeset
   992
52949
wenzelm
parents: 52896
diff changeset
   993
* Dockable window "Find" provides query operations for formal entities
wenzelm
parents: 52896
diff changeset
   994
(GUI front-end to 'find_theorems' command).
wenzelm
parents: 52896
diff changeset
   995
53050
wenzelm
parents: 53021
diff changeset
   996
* Dockable window "Sledgehammer" manages asynchronous / parallel
wenzelm
parents: 53021
diff changeset
   997
sledgehammer runs over existing document sources, independently of
wenzelm
parents: 53021
diff changeset
   998
normal editing and checking process.
wenzelm
parents: 53021
diff changeset
   999
51533
3f6280aedbcc dockable window for timing information;
wenzelm
parents: 51517
diff changeset
  1000
* Dockable window "Timing" provides an overview of relevant command
54332
wenzelm
parents: 54319
diff changeset
  1001
timing information, depending on option jedit_timing_threshold.  The
wenzelm
parents: 54319
diff changeset
  1002
same timing information is shown in the extended tooltip of the
wenzelm
parents: 54319
diff changeset
  1003
command keyword, when hovering the mouse over it while the CONTROL or
wenzelm
parents: 54319
diff changeset
  1004
COMMAND modifier is pressed.
51533
3f6280aedbcc dockable window for timing information;
wenzelm
parents: 51517
diff changeset
  1005
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1006
* Improved dockable window "Theories": Continuous checking of proof
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1007
document (visible and required parts) may be controlled explicitly,
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1008
using check box or shortcut "C+e ENTER".  Individual theory nodes may
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1009
be marked explicitly as required and checked in full, using check box
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1010
or shortcut "C+e SPACE".
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1011
54305
wenzelm
parents: 54049
diff changeset
  1012
* Improved completion mechanism, which is now managed by the
wenzelm
parents: 54049
diff changeset
  1013
Isabelle/jEdit plugin instead of SideKick.  Refined table of Isabelle
wenzelm
parents: 54049
diff changeset
  1014
symbol abbreviations (see $ISABELLE_HOME/etc/symbols).
wenzelm
parents: 54049
diff changeset
  1015
54319
wenzelm
parents: 54305
diff changeset
  1016
* Standard jEdit keyboard shortcut C+b complete-word is remapped to
wenzelm
parents: 54305
diff changeset
  1017
isabelle.complete for explicit completion in Isabelle sources.
wenzelm
parents: 54305
diff changeset
  1018
INCOMPATIBILITY wrt. jEdit defaults, may have to invent new shortcuts
wenzelm
parents: 54305
diff changeset
  1019
to resolve conflict.
wenzelm
parents: 54305
diff changeset
  1020
54305
wenzelm
parents: 54049
diff changeset
  1021
* Improved support of various "minor modes" for Isabelle NEWS,
wenzelm
parents: 54049
diff changeset
  1022
options, session ROOT etc., with completion and SideKick tree view.
wenzelm
parents: 54049
diff changeset
  1023
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1024
* Strictly monotonic document update, without premature cancellation of
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1025
running transactions that are still needed: avoid reset/restart of
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1026
such command executions while editing.
53271
0460d6962ced GTK+ works better due to avoidance of default list view popups;
wenzelm
parents: 53251
diff changeset
  1027
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1028
* Support for asynchronous print functions, as overlay to existing
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1029
document content.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1030
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1031
* Support for automatic tools in HOL, which try to prove or disprove
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1032
toplevel theorem statements.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1033
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1034
* Action isabelle.reset-font-size resets main text area font size
54365
5d45c985974a no default shortcut for isabelle.reset-font-size -- avoid conflict with unsplit-current;
wenzelm
parents: 54351
diff changeset
  1035
according to Isabelle/Scala plugin option "jedit_font_reset_size" (see
5d45c985974a no default shortcut for isabelle.reset-font-size -- avoid conflict with unsplit-current;
wenzelm
parents: 54351
diff changeset
  1036
also "Plugin Options / Isabelle / General").  It can be bound to some
5d45c985974a no default shortcut for isabelle.reset-font-size -- avoid conflict with unsplit-current;
wenzelm
parents: 54351
diff changeset
  1037
keyboard shortcut by the user (e.g. C+0 and/or C+NUMPAD0).
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1038
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1039
* File specifications in jEdit (e.g. file browser) may refer to
54351
5cbe32533cdb more on file-system access;
wenzelm
parents: 54332
diff changeset
  1040
$ISABELLE_HOME and $ISABELLE_HOME_USER on all platforms.  Discontinued
5cbe32533cdb more on file-system access;
wenzelm
parents: 54332
diff changeset
  1041
obsolete $ISABELLE_HOME_WINDOWS variable.
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1042
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1043
* Improved support for Linux look-and-feel "GTK+", see also "Utilities
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1044
/ Global Options / Appearance".
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1045
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1046
* Improved support of native Mac OS X functionality via "MacOSX"
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1047
plugin, which is now enabled by default.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1048
51533
3f6280aedbcc dockable window for timing information;
wenzelm
parents: 51517
diff changeset
  1049
51313
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1050
*** Pure ***
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1051
54049
566b769c3477 Streamlined locales reference material.
ballarin
parents: 54033
diff changeset
  1052
* Commands 'interpretation' and 'sublocale' are now target-sensitive.
566b769c3477 Streamlined locales reference material.
ballarin
parents: 54033
diff changeset
  1053
In particular, 'interpretation' allows for non-persistent
566b769c3477 Streamlined locales reference material.
ballarin
parents: 54033
diff changeset
  1054
interpretation within "context ... begin ... end" blocks offering a
566b769c3477 Streamlined locales reference material.
ballarin
parents: 54033
diff changeset
  1055
light-weight alternative to 'sublocale'.  See "isar-ref" manual for
566b769c3477 Streamlined locales reference material.
ballarin
parents: 54033
diff changeset
  1056
details.
51747
e4b5bebe5235 documentation and NEWS
haftmann
parents: 51732
diff changeset
  1057
51565
5e9fdbdf88ce Improvements to the print_dependencies command.
ballarin
parents: 51553
diff changeset
  1058
* Improved locales diagnostic command 'print_dependencies'.
5e9fdbdf88ce Improvements to the print_dependencies command.
ballarin
parents: 51553
diff changeset
  1059
51313
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1060
* Discontinued obsolete 'axioms' command, which has been marked as
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1061
legacy since Isabelle2009-2.  INCOMPATIBILITY, use 'axiomatization'
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1062
instead, while observing its uniform scope for polymorphism.
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1063
51316
dfe469293eb4 discontinued empty name bindings in 'axiomatization';
wenzelm
parents: 51313
diff changeset
  1064
* Discontinued empty name bindings in 'axiomatization'.
dfe469293eb4 discontinued empty name bindings in 'axiomatization';
wenzelm
parents: 51313
diff changeset
  1065
INCOMPATIBILITY.
dfe469293eb4 discontinued empty name bindings in 'axiomatization';
wenzelm
parents: 51313
diff changeset
  1066
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1067
* System option "proofs" has been discontinued.  Instead the global
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1068
state of Proofterm.proofs is persistently compiled into logic images
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1069
as required, notably HOL-Proofs.  Users no longer need to change
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1070
Proofterm.proofs dynamically.  Minor INCOMPATIBILITY.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1071
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1072
* Syntax translation functions (print_translation etc.) always depend
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1073
on Proof.context.  Discontinued former "(advanced)" option -- this is
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1074
now the default.  Minor INCOMPATIBILITY.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1075
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1076
* Former global reference trace_unify_fail is now available as
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1077
configuration option "unify_trace_failure" (global context only).
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1078
52463
c45a6939217f updated documentation;
wenzelm
parents: 52445
diff changeset
  1079
* SELECT_GOAL now retains the syntactic context of the overall goal
c45a6939217f updated documentation;
wenzelm
parents: 52445
diff changeset
  1080
state (schematic variables etc.).  Potential INCOMPATIBILITY in rare
c45a6939217f updated documentation;
wenzelm
parents: 52445
diff changeset
  1081
situations.
c45a6939217f updated documentation;
wenzelm
parents: 52445
diff changeset
  1082
51313
102a0a0718c5 discontinued obsolete 'axioms' command;
wenzelm
parents: 51295
diff changeset
  1083
51002
496013a6eb38 remove unnecessary assumption from real_normed_vector
hoelzl
parents: 50994
diff changeset
  1084
*** HOL ***
496013a6eb38 remove unnecessary assumption from real_normed_vector
hoelzl
parents: 50994
diff changeset
  1085
54032
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1086
* Stronger precedence of syntax for big intersection and union on
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1087
sets, in accordance with corresponding lattice operations.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1088
INCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1089
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1090
* Notation "{p:A. P}" now allows tuple patterns as well.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1091
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1092
* Nested case expressions are now translated in a separate check phase
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1093
rather than during parsing. The data for case combinators is separated
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1094
from the datatype package. The declaration attribute
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1095
"case_translation" can be used to register new case combinators:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1096
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1097
  declare [[case_translation case_combinator constructor1 ... constructorN]]
52637
1501ebe39711 attribute "code" declares concrete and abstract code equations uniformly; added explicit "code equation" instead
haftmann
parents: 52550
diff changeset
  1098
52435
6646bb548c6b migration from code_(const|type|class|instance) to code_printing and from code_module to code_identifier
haftmann
parents: 52430
diff changeset
  1099
* Code generator:
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1100
  - 'code_printing' unifies 'code_const' / 'code_type' / 'code_class' /
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1101
    'code_instance'.
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1102
  - 'code_identifier' declares name hints for arbitrary identifiers in
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1103
    generated code, subsuming 'code_modulename'.
53983
wenzelm
parents: 53981
diff changeset
  1104
wenzelm
parents: 53981
diff changeset
  1105
See the isar-ref manual for syntax diagrams, and the HOL theories for
wenzelm
parents: 53981
diff changeset
  1106
examples.
52435
6646bb548c6b migration from code_(const|type|class|instance) to code_printing and from code_module to code_identifier
haftmann
parents: 52430
diff changeset
  1107
54032
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1108
* Attibute 'code': 'code' now declares concrete and abstract code
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1109
equations uniformly.  Use explicit 'code equation' and 'code abstract'
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1110
to distinguish both when desired.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1111
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1112
* Discontinued theories Code_Integer and Efficient_Nat by a more
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1113
fine-grain stack of theories Code_Target_Int, Code_Binary_Nat,
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1114
Code_Target_Nat and Code_Target_Numeral.  See the tutorial on code
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1115
generation for details.  INCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1116
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1117
* Numeric types are mapped by default to target language numerals:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1118
natural (replaces former code_numeral) and integer (replaces former
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1119
code_int).  Conversions are available as integer_of_natural /
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1120
natural_of_integer / integer_of_nat / nat_of_integer (in HOL) and
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1121
Code_Numeral.integer_of_natural / Code_Numeral.natural_of_integer (in
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1122
ML).  INCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1123
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1124
* Function package: For mutually recursive functions f and g, separate
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1125
cases rules f.cases and g.cases are generated instead of unusable
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1126
f_g.cases which exposed internal sum types. Potential INCOMPATIBILITY,
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1127
in the case that the unusable rule was used nevertheless.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1128
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1129
* Function package: For each function f, new rules f.elims are
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1130
generated, which eliminate equalities of the form "f x = t".
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1131
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1132
* New command 'fun_cases' derives ad-hoc elimination rules for
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1133
function equations as simplified instances of f.elims, analogous to
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1134
inductive_cases.  See ~~/src/HOL/ex/Fundefs.thy for some examples.
53307
221ff2b39a35 updated news/contributors with BNF stuff
blanchet
parents: 53293
diff changeset
  1135
54021
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1136
* Lifting:
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1137
  - parametrized correspondence relations are now supported:
54378
72254819befd tuned whitespace;
wenzelm
parents: 54365
diff changeset
  1138
    + parametricity theorems for the raw term can be specified in
54021
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1139
      the command lift_definition, which allow us to generate stronger
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1140
      transfer rules
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1141
    + setup_lifting generates stronger transfer rules if parametric
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1142
      correspondence relation can be generated
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1143
    + various new properties of the relator must be specified to support
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1144
      parametricity
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1145
    + parametricity theorem for the Quotient relation can be specified
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1146
  - setup_lifting generates domain rules for the Transfer package
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1147
  - stronger reflexivity prover of respectfulness theorems for type
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1148
    copies
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1149
  - ===> and --> are now local. The symbols can be introduced
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1150
    by interpreting the locale lifting_syntax (typically in an
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1151
    anonymous context)
54378
72254819befd tuned whitespace;
wenzelm
parents: 54365
diff changeset
  1152
  - Lifting/Transfer relevant parts of Library/Quotient_* are now in
54021
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1153
    Main. Potential INCOMPATIBILITY
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1154
  - new commands for restoring and deleting Lifting/Transfer context:
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1155
    lifting_forget, lifting_update
54378
72254819befd tuned whitespace;
wenzelm
parents: 54365
diff changeset
  1156
  - the command print_quotmaps was renamed to print_quot_maps.
54021
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1157
    INCOMPATIBILITY
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1158
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1159
* Transfer:
54378
72254819befd tuned whitespace;
wenzelm
parents: 54365
diff changeset
  1160
  - better support for domains in Transfer: replace Domainp T
54021
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1161
    by the actual invariant in a transferred goal
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1162
  - transfer rules can have as assumptions other transfer rules
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1163
  - Experimental support for transferring from the raw level to the
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1164
    abstract level: Transfer.transferred attribute
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1165
  - Attribute version of the transfer method: untransferred attribute
8089e82833b6 NEWS and CONTRIBUTORS
kuncar
parents: 54010
diff changeset
  1166
52286
8170e5327c02 make reification part of HOL
haftmann
parents: 52266
diff changeset
  1167
* Reification and reflection:
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1168
  - Reification is now directly available in HOL-Main in structure
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1169
    "Reification".
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1170
  - Reflection now handles multiple lists with variables also.
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1171
  - The whole reflection stack has been decomposed into conversions.
52286
8170e5327c02 make reification part of HOL
haftmann
parents: 52266
diff changeset
  1172
INCOMPATIBILITY.
8170e5327c02 make reification part of HOL
haftmann
parents: 52266
diff changeset
  1173
51489
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1174
* Revised devices for recursive definitions over finite sets:
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1175
  - Only one fundamental fold combinator on finite set remains:
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1176
    Finite_Set.fold :: ('a => 'b => 'b) => 'b => 'a set => 'b
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1177
    This is now identity on infinite sets.
52745
821ce370b7fc avoid predefined symbols -- allow editing with Isabelle/jEdit in isabelle-news mode;
wenzelm
parents: 52743
diff changeset
  1178
  - Locales ("mini packages") for fundamental definitions with
51489
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1179
    Finite_Set.fold: folding, folding_idem.
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1180
  - Locales comm_monoid_set, semilattice_order_set and
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1181
    semilattice_neutr_order_set for big operators on sets.
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1182
    See theory Big_Operators for canonical examples.
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1183
    Note that foundational constants comm_monoid_set.F and
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1184
    semilattice_set.F correspond to former combinators fold_image
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1185
    and fold1 respectively.  These are now gone.  You may use
51490
7edcc0618dae spelling
haftmann
parents: 51489
diff changeset
  1186
    those foundational constants as substitutes, but it is
53983
wenzelm
parents: 53981
diff changeset
  1187
    preferable to interpret the above locales accordingly.
51489
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1188
  - Dropped class ab_semigroup_idem_mult (special case of lattice,
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1189
    no longer needed in connection with Finite_Set.fold etc.)
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1190
  - Fact renames:
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1191
      card.union_inter ~> card_Un_Int [symmetric]
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1192
      card.union_disjoint ~> card_Un_disjoint
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1193
INCOMPATIBILITY.
f738e6dbd844 fundamental revision of big operators on sets
haftmann
parents: 51487
diff changeset
  1194
51487
f4bfdee99304 locales for abstract orders
haftmann
parents: 51417
diff changeset
  1195
* Locale hierarchy for abstract orderings and (semi)lattices.
f4bfdee99304 locales for abstract orders
haftmann
parents: 51417
diff changeset
  1196
53526
wenzelm
parents: 53398
diff changeset
  1197
* Complete_Partial_Order.admissible is defined outside the type class
wenzelm
parents: 53398
diff changeset
  1198
ccpo, but with mandatory prefix ccpo. Admissibility theorems lose the
wenzelm
parents: 53398
diff changeset
  1199
class predicate assumption or sort constraint when possible.
53362
Andreas Lochbihler
parents: 53342
diff changeset
  1200
INCOMPATIBILITY.
Andreas Lochbihler
parents: 53342
diff changeset
  1201
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1202
* Introduce type class "conditionally_complete_lattice": Like a
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1203
complete lattice but does not assume the existence of the top and
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1204
bottom elements.  Allows to generalize some lemmas about reals and
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1205
extended reals.  Removed SupInf and replaced it by the instantiation
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1206
of conditionally_complete_lattice for real. Renamed lemmas about
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1207
conditionally-complete lattice from Sup_... to cSup_... and from
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1208
Inf_...  to cInf_... to avoid hidding of similar complete lattice
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1209
lemmas.
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1210
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1211
* Introduce type class linear_continuum as combination of
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1212
conditionally-complete lattices and inner dense linorders which have
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1213
more than one element.  INCOMPATIBILITY.
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1214
53983
wenzelm
parents: 53981
diff changeset
  1215
* Introduced type classes order_top and order_bot. The old classes top
wenzelm
parents: 53981
diff changeset
  1216
and bot only contain the syntax without assumptions.  INCOMPATIBILITY:
wenzelm
parents: 53981
diff changeset
  1217
Rename bot -> order_bot, top -> order_top
53683
e6adad558def order_bot, order_top
lammich <lammich@in.tum.de>
parents: 53681
diff changeset
  1218
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1219
* Introduce type classes "no_top" and "no_bot" for orderings without
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1220
top and bottom elements.
51732
hoelzl
parents: 51717
diff changeset
  1221
hoelzl
parents: 51717
diff changeset
  1222
* Split dense_linorder into inner_dense_order and no_top, no_bot.
hoelzl
parents: 51717
diff changeset
  1223
hoelzl
parents: 51717
diff changeset
  1224
* Complex_Main: Unify and move various concepts from
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1225
HOL-Multivariate_Analysis to HOL-Complex_Main.
51732
hoelzl
parents: 51717
diff changeset
  1226
53983
wenzelm
parents: 53981
diff changeset
  1227
 - Introduce type class (lin)order_topology and
wenzelm
parents: 53981
diff changeset
  1228
   linear_continuum_topology.  Allows to generalize theorems about
wenzelm
parents: 53981
diff changeset
  1229
   limits and order.  Instances are reals and extended reals.
51732
hoelzl
parents: 51717
diff changeset
  1230
hoelzl
parents: 51717
diff changeset
  1231
 - continuous and continuos_on from Multivariate_Analysis:
53983
wenzelm
parents: 53981
diff changeset
  1232
   "continuous" is the continuity of a function at a filter.  "isCont"
wenzelm
parents: 53981
diff changeset
  1233
   is now an abbrevitation: "isCont x f == continuous (at _) f".
wenzelm
parents: 53981
diff changeset
  1234
wenzelm
parents: 53981
diff changeset
  1235
   Generalized continuity lemmas from isCont to continuous on an
wenzelm
parents: 53981
diff changeset
  1236
   arbitrary filter.
wenzelm
parents: 53981
diff changeset
  1237
wenzelm
parents: 53981
diff changeset
  1238
 - compact from Multivariate_Analysis. Use Bolzano's lemma to prove
wenzelm
parents: 53981
diff changeset
  1239
   compactness of closed intervals on reals. Continuous functions
wenzelm
parents: 53981
diff changeset
  1240
   attain infimum and supremum on compact sets. The inverse of a
wenzelm
parents: 53981
diff changeset
  1241
   continuous function is continuous, when the function is continuous
wenzelm
parents: 53981
diff changeset
  1242
   on a compact set.
51732
hoelzl
parents: 51717
diff changeset
  1243
hoelzl
parents: 51717
diff changeset
  1244
 - connected from Multivariate_Analysis. Use it to prove the
51775
408d937c9486 revert #916271d52466; add non-topological linear_continuum type class; show linear_continuum_topology is a perfect_space
hoelzl
parents: 51774
diff changeset
  1245
   intermediate value theorem. Show connectedness of intervals on
408d937c9486 revert #916271d52466; add non-topological linear_continuum type class; show linear_continuum_topology is a perfect_space
hoelzl
parents: 51774
diff changeset
  1246
   linear_continuum_topology).
51732
hoelzl
parents: 51717
diff changeset
  1247
hoelzl
parents: 51717
diff changeset
  1248
 - first_countable_topology from Multivariate_Analysis. Is used to
53983
wenzelm
parents: 53981
diff changeset
  1249
   show equivalence of properties on the neighbourhood filter of x and
wenzelm
parents: 53981
diff changeset
  1250
   on all sequences converging to x.
wenzelm
parents: 53981
diff changeset
  1251
wenzelm
parents: 53981
diff changeset
  1252
 - FDERIV: Definition of has_derivative moved to Deriv.thy. Moved
wenzelm
parents: 53981
diff changeset
  1253
   theorems from Library/FDERIV.thy to Deriv.thy and base the
wenzelm
parents: 53981
diff changeset
  1254
   definition of DERIV on FDERIV. Add variants of DERIV and FDERIV
wenzelm
parents: 53981
diff changeset
  1255
   which are restricted to sets, i.e. to represent derivatives from
wenzelm
parents: 53981
diff changeset
  1256
   left or right.
51732
hoelzl
parents: 51717
diff changeset
  1257
hoelzl
parents: 51717
diff changeset
  1258
 - Removed the within-filter. It is replaced by the principal filter:
hoelzl
parents: 51717
diff changeset
  1259
hoelzl
parents: 51717
diff changeset
  1260
     F within X = inf F (principal X)
hoelzl
parents: 51717
diff changeset
  1261
hoelzl
parents: 51717
diff changeset
  1262
 - Introduce "at x within U" as a single constant, "at x" is now an
hoelzl
parents: 51717
diff changeset
  1263
   abbreviation for "at x within UNIV"
hoelzl
parents: 51717
diff changeset
  1264
53983
wenzelm
parents: 53981
diff changeset
  1265
 - Introduce named theorem collections tendsto_intros,
wenzelm
parents: 53981
diff changeset
  1266
   continuous_intros, continuous_on_intros and FDERIV_intros. Theorems
wenzelm
parents: 53981
diff changeset
  1267
   in tendsto_intros (or FDERIV_intros) are also available as
wenzelm
parents: 53981
diff changeset
  1268
   tendsto_eq_intros (or FDERIV_eq_intros) where the right-hand side
wenzelm
parents: 53981
diff changeset
  1269
   is replaced by a congruence rule. This allows to apply them as
wenzelm
parents: 53981
diff changeset
  1270
   intro rules and then proving equivalence by the simplifier.
51732
hoelzl
parents: 51717
diff changeset
  1271
hoelzl
parents: 51717
diff changeset
  1272
 - Restructured theories in HOL-Complex_Main:
hoelzl
parents: 51717
diff changeset
  1273
hoelzl
parents: 51717
diff changeset
  1274
   + Moved RealDef and RComplete into Real
hoelzl
parents: 51717
diff changeset
  1275
hoelzl
parents: 51717
diff changeset
  1276
   + Introduced Topological_Spaces and moved theorems about
hoelzl
parents: 51717
diff changeset
  1277
     topological spaces, filters, limits and continuity to it
hoelzl
parents: 51717
diff changeset
  1278
hoelzl
parents: 51717
diff changeset
  1279
   + Renamed RealVector to Real_Vector_Spaces
hoelzl
parents: 51717
diff changeset
  1280
53983
wenzelm
parents: 53981
diff changeset
  1281
   + Split Lim, SEQ, Series into Topological_Spaces,
wenzelm
parents: 53981
diff changeset
  1282
     Real_Vector_Spaces, and Limits
51732
hoelzl
parents: 51717
diff changeset
  1283
hoelzl
parents: 51717
diff changeset
  1284
   + Moved Ln and Log to Transcendental
hoelzl
parents: 51717
diff changeset
  1285
hoelzl
parents: 51717
diff changeset
  1286
   + Moved theorems about continuity from Deriv to Topological_Spaces
hoelzl
parents: 51717
diff changeset
  1287
hoelzl
parents: 51717
diff changeset
  1288
 - Remove various auxiliary lemmas.
hoelzl
parents: 51717
diff changeset
  1289
hoelzl
parents: 51717
diff changeset
  1290
INCOMPATIBILITY.
51002
496013a6eb38 remove unnecessary assumption from real_normed_vector
hoelzl
parents: 50994
diff changeset
  1291
53738
9868e6d4733f updated NEWS
blanchet
parents: 53728
diff changeset
  1292
* Nitpick:
55889
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
  1293
  - Added option "spy".
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
  1294
  - Reduce incidence of "too high arity" errors.
53738
9868e6d4733f updated NEWS
blanchet
parents: 53728
diff changeset
  1295
51137
077456580eca updated news
blanchet
parents: 51115
diff changeset
  1296
* Sledgehammer:
077456580eca updated news
blanchet
parents: 51115
diff changeset
  1297
  - Renamed option:
077456580eca updated news
blanchet
parents: 51115
diff changeset
  1298
      isar_shrink ~> isar_compress
53738
9868e6d4733f updated NEWS
blanchet
parents: 53728
diff changeset
  1299
    INCOMPATIBILITY.
55889
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
  1300
  - Added options "isar_try0", "spy".
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
  1301
  - Better support for "isar_proofs".
6bfbec3dff62 tuned code
blanchet
parents: 55875
diff changeset
  1302
  - MaSh has been fined-tuned and now runs as a local server.
51137
077456580eca updated news
blanchet
parents: 51115
diff changeset
  1303
54032
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1304
* Improved support for ad hoc overloading of constants (see also
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1305
isar-ref manual and ~~/src/HOL/ex/Adhoc_Overloading_Examples.thy).
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1306
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1307
* Library/Polynomial.thy:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1308
  - Use lifting for primitive definitions.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1309
  - Explicit conversions from and to lists of coefficients, used for
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1310
    generated code.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1311
  - Replaced recursion operator poly_rec by fold_coeffs.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1312
  - Prefer pre-existing gcd operation for gcd.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1313
  - Fact renames:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1314
    poly_eq_iff ~> poly_eq_poly_eq_iff
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1315
    poly_ext ~> poly_eqI
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1316
    expand_poly_eq ~> poly_eq_iff
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1317
IMCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1318
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1319
* New Library/Simps_Case_Conv.thy: Provides commands simps_of_case and
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1320
case_of_simps to convert function definitions between a list of
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1321
equations with patterns on the lhs and a single equation with case
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1322
expressions on the rhs. See also Ex/Simps_Case_Conv_Examples.thy.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1323
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1324
* New Library/FSet.thy: type of finite sets defined as a subtype of
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1325
sets defined by Lifting/Transfer.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1326
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1327
* Discontinued theory src/HOL/Library/Eval_Witness.  INCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1328
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1329
* Consolidation of library theories on product orders:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1330
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1331
    Product_Lattice ~> Product_Order -- pointwise order on products
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1332
    Product_ord ~> Product_Lexorder -- lexicographic order on products
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1333
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1334
INCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1335
53160
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1336
* Imperative-HOL: The MREC combinator is considered legacy and no
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1337
longer included by default. INCOMPATIBILITY, use partial_function
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1338
instead, or import theory Legacy_Mrec as a fallback.
317077e35b0e tuned -- some reformatting;
wenzelm
parents: 53109
diff changeset
  1339
53983
wenzelm
parents: 53981
diff changeset
  1340
* HOL-Algebra: Discontinued theories ~~/src/HOL/Algebra/abstract and
wenzelm
parents: 53981
diff changeset
  1341
~~/src/HOL/Algebra/poly.  Existing theories should be based on
wenzelm
parents: 53981
diff changeset
  1342
~~/src/HOL/Library/Polynomial instead.  The latter provides
wenzelm
parents: 53981
diff changeset
  1343
integration with HOL's type classes for rings.  INCOMPATIBILITY.
51517
7957d26c3334 Discontinued theories src/HOL/Algebra/abstract and .../poly.
ballarin
parents: 51490
diff changeset
  1344
54033
wenzelm
parents: 54032
diff changeset
  1345
* HOL-BNF:
54032
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1346
  - Various improvements to BNF-based (co)datatype package, including
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1347
    new commands "primrec_new", "primcorec", and
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1348
    "datatype_new_compat", as well as documentation. See
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1349
    "datatypes.pdf" for details.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1350
  - New "coinduction" method to avoid some boilerplate (compared to
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1351
    coinduct).
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1352
  - Renamed keywords:
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1353
    data ~> datatype_new
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1354
    codata ~> codatatype
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1355
    bnf_def ~> bnf
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1356
  - Renamed many generated theorems, including
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1357
    discs ~> disc
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1358
    map_comp' ~> map_comp
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1359
    map_id' ~> map_id
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1360
    sels ~> sel
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1361
    set_map' ~> set_map
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1362
    sets ~> set
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1363
IMCOMPATIBILITY.
67ed9e57dd03 misc tuning for release;
wenzelm
parents: 54029
diff changeset
  1364
51517
7957d26c3334 Discontinued theories src/HOL/Algebra/abstract and .../poly.
ballarin
parents: 51490
diff changeset
  1365
51551
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1366
*** ML ***
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1367
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1368
* Spec_Check is a Quickcheck tool for Isabelle/ML.  The ML function
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1369
"check_property" allows to check specifications of the form "ALL x y
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1370
z. prop x y z".  See also ~~/src/Tools/Spec_Check/ with its
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1371
Examples.thy in particular.
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1372
53709
84522727f9d3 improved printing of exception trace in Poly/ML 5.5.1;
wenzelm
parents: 53683
diff changeset
  1373
* Improved printing of exception trace in Poly/ML 5.5.1, with regular
84522727f9d3 improved printing of exception trace in Poly/ML 5.5.1;
wenzelm
parents: 53683
diff changeset
  1374
tracing output in the command transaction context instead of physical
84522727f9d3 improved printing of exception trace in Poly/ML 5.5.1;
wenzelm
parents: 53683
diff changeset
  1375
stdout.  See also Toplevel.debug, Toplevel.debugging and
84522727f9d3 improved printing of exception trace in Poly/ML 5.5.1;
wenzelm
parents: 53683
diff changeset
  1376
ML_Compiler.exn_trace.
84522727f9d3 improved printing of exception trace in Poly/ML 5.5.1;
wenzelm
parents: 53683
diff changeset
  1377
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1378
* ML type "theory" is now immutable, without any special treatment of
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1379
drafts or linear updates (which could lead to "stale theory" errors in
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1380
the past).  Discontinued obsolete operations like Theory.copy,
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1381
Theory.checkpoint, and the auxiliary type theory_ref.  Minor
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1382
INCOMPATIBILITY.
53164
beb4ee344c22 clarified position of Spec_Check for Isabelle/ML -- it is unrelated to Isabelle/HOL;
wenzelm
parents: 53162
diff changeset
  1383
51551
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1384
* More uniform naming of goal functions for skipped proofs:
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1385
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1386
    Skip_Proof.prove  ~>  Goal.prove_sorry
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1387
    Skip_Proof.prove_global  ~>  Goal.prove_sorry_global
88d1d19fb74f tuned signature and module arrangement;
wenzelm
parents: 51533
diff changeset
  1388
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1389
Minor INCOMPATIBILITY.
51703
f2e92fc0c8aa modifiers for classical wrappers operate on Proof.context instead of claset;
wenzelm
parents: 51689
diff changeset
  1390
51717
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1391
* Simplifier tactics and tools use proper Proof.context instead of
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1392
historic type simpset.  Old-style declarations like addsimps,
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1393
addsimprocs etc. operate directly on Proof.context.  Raw type simpset
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1394
retains its use as snapshot of the main Simplifier context, using
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1395
simpset_of and put_simpset on Proof.context.  INCOMPATIBILITY -- port
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1396
old tools by making them depend on (ctxt : Proof.context) instead of
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1397
(ss : simpset), then turn (simpset_of ctxt) into ctxt.
9e7d1c139569 simplifier uses proper Proof.context instead of historic type simpset;
wenzelm
parents: 51703
diff changeset
  1398
53971
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1399
* Modifiers for classical wrappers (e.g. addWrapper, delWrapper)
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1400
operate on Proof.context instead of claset, for uniformity with addIs,
c4156b37627f misc tuning for release;
wenzelm
parents: 53968
diff changeset
  1401
addEs, addDs etc. Note that claset_of and put_claset allow to manage
c4156b37627f misc tuning for release;
wenzelm
paren