wenzelm [Tue, 29 Sep 2009 21:36:49 +0200] rev 32763
tuned header;
wenzelm [Tue, 29 Sep 2009 21:36:33 +0200] rev 32762
Thomas Sewell, NICTA: more efficient HOL/record implementation;
wenzelm [Tue, 29 Sep 2009 21:34:59 +0200] rev 32761
tuned whitespace -- recover basic Isabelle conventions;
wenzelm [Tue, 29 Sep 2009 18:14:08 +0200] rev 32760
merged
Thomas Sewell <tsewell@nicta.com.au> [Tue, 29 Sep 2009 14:26:33 +1000] rev 32759
Merge with isabelle dev changes.
Thomas Sewell <tsewell@nicta.com.au> [Tue, 29 Sep 2009 14:25:42 +1000] rev 32758
Replace OldTerm.term_vars with Term.add_vars in named_cterm_instantiate.
Thomas Sewell <tsewell@nicta.com.au> [Mon, 28 Sep 2009 15:37:19 +1000] rev 32757
Avoid a possible variable name conflict in instantiating a theorem.
Instantiating a theorem variable with new variables created a possible
variable name conflict if a record was defined with a field named
'f', 'x' etc. Using variable indices of 1 avoids the problem.
Thomas Sewell <tsewell@nicta.com.au> [Mon, 28 Sep 2009 14:16:01 +1000] rev 32756
Fix unescaped expressions breaking latex output in Record.thy
Expressions containing _ and ^ need to be adjusted or antiquoted in
text comments for latex compatibility. This is in fact a little
annoying, since it makes the comment less readable in both source
and HTML form.
Thomas Sewell <tsewell@nicta.com.au> [Mon, 28 Sep 2009 11:13:11 +1000] rev 32755
Merge record patch with updates from isabelle mainline.
Thomas Sewell <tsewell@nicta.com.au> [Fri, 25 Sep 2009 19:04:18 +1000] rev 32754
Avoid record-inner constants in polymorphic definitions in Bali
The Bali package needs to insert a record extension into a type
class and define an associated polymorphic constant. There is no
elegant way to do this.
The existing approach was to insert every record extension into
the type class, defining the polymorphic constant at each layer
using inner operations created by the record package. Some of
those operations have been removed. They can be replaced by use
of record_name.extend if necessary, but we can also sidestep
this altogether.
The simpler approach here is to use defs(overloaded) once to
provide a single definition for the composition of all the type
constructors, which seems to be permitted. This gets us exactly
the fact we need, with the cost that some types that were
admitted to the type class have no definition for the constant
at all.
Thomas Sewell <tsewell@nicta.com.au> [Thu, 24 Sep 2009 11:33:05 +1000] rev 32753
Merge with changes from isabelle dev repository.
tsewell@rubicon.NSW.bigpond.net.au [Wed, 23 Sep 2009 19:17:48 +1000] rev 32752
Initial response to feedback from Norbert, Makarius on record patch
As Norbert recommended, the IsTuple.thy and istuple_support.ML files
have been integrated into Record.thy and record.ML. I haven't merged
the structures - record.ML now contains Record and IsTupleSupport.
Some of the cosmetic changes Makarius requested have been made,
including renaming variables with camel-case and run-together names
and removing the tab character from the Author: line. Constants are
defined with definition rather than constdefs. The split_ex_prf
inner function has been cleaned up.
Thomas Sewell <tsewell@nicta.com.au> [Tue, 22 Sep 2009 13:52:19 +1000] rev 32751
Branch merge for isabelle mainline updates.
Thomas Sewell <tsewell@nicta.com.au> [Thu, 17 Sep 2009 14:17:37 +1000] rev 32750
Branch merge with updates from mainline isabelle.
Thomas Sewell <tsewell@nicta.com.au> [Fri, 11 Sep 2009 20:58:29 +1000] rev 32749
Implement previous fix (don't duplicate ext_def) correctly.
Thomas Sewell <tsewell@nicta.com.au> [Fri, 11 Sep 2009 18:03:30 +1000] rev 32748
There's no particular reason to duplicate the extension
constant's definition under the name "ext_def", and it
also prevents you having a field called ext.
Thomas Sewell <tsewell@nicta.com.au> [Fri, 11 Sep 2009 15:57:16 +1000] rev 32747
Merged with mainline changes.
Thomas Sewell <tsewell@nicta.com.au> [Fri, 11 Sep 2009 15:56:51 +1000] rev 32746
Adjust some documentation.
Thomas Sewell <tsewell@nicta.com.au> [Thu, 10 Sep 2009 16:38:18 +1000] rev 32745
Simplification of various aspects of the IsTuple component
of the new record package. Extensive documentation added in
IsTuple.thy - it should now be possible to figure out what's
going on from the sources supplied.
Thomas Sewell <tsewell@nicta.com.au> [Thu, 10 Sep 2009 15:18:43 +1000] rev 32744
Record patch imported and working.
tsewell@rubicon.NSW.bigpond.net.au [Thu, 27 Aug 2009 00:40:53 +1000] rev 32743
Initial attempt at porting record update to repository Isabelle.
wenzelm [Tue, 29 Sep 2009 16:42:29 +0200] rev 32742
Synchronized and Unsynchronized;
wenzelm [Tue, 29 Sep 2009 16:42:02 +0200] rev 32741
hide "ref" by default, to enforce excplicit indication as Unsynchronized;
wenzelm [Tue, 29 Sep 2009 16:24:36 +0200] rev 32740
explicit indication of Unsynchronized.ref;
wenzelm [Tue, 29 Sep 2009 14:59:24 +0200] rev 32739
open_unsynchronized for interactive Isar loop;
wenzelm [Tue, 29 Sep 2009 11:49:22 +0200] rev 32738
explicit indication of Unsynchronized.ref;
wenzelm [Tue, 29 Sep 2009 11:48:32 +0200] rev 32737
Raw ML references as unsynchronized state variables.
wenzelm [Mon, 28 Sep 2009 23:51:13 +0200] rev 32736
Dummy version of state variables -- plain refs for sequential access.