src/HOL/BNF/Tools/bnf_fp_def_sugar.ML
Thu, 12 Sep 2013 17:18:20 +0200 traytel conceal definitions of high-level constructors and (co)iterators
Thu, 12 Sep 2013 00:07:46 +0200 blanchet avoid a keyword
Mon, 09 Sep 2013 14:22:11 +0200 blanchet include map theorems in datastructure for "primcorec"
Mon, 09 Sep 2013 13:47:58 +0200 blanchet enriched data structure with necessary theorems
Fri, 30 Aug 2013 14:17:19 +0200 blanchet more canonical naming
Thu, 29 Aug 2013 23:01:04 +0200 blanchet renamed BNF fact
Thu, 29 Aug 2013 22:39:46 +0200 blanchet renamed BNF fact
Thu, 29 Aug 2013 18:44:03 +0200 blanchet renamed BNF axiom
Thu, 29 Aug 2013 18:31:23 +0200 blanchet merge
Thu, 29 Aug 2013 18:24:11 +0200 blanchet handle type class annotations on (co)datatype parameters gracefully
Thu, 29 Aug 2013 18:17:13 +0200 traytel store nesting_bnfs in fp_sugar (required in "nested to mutual" reduction)
Thu, 29 Aug 2013 17:57:25 +0200 blanchet cleaner handling of bootstrapping "fake" context, with fewer (no?) obscure bugs
Thu, 29 Aug 2013 16:26:11 +0200 blanchet qualify generated constants uniformly
Thu, 29 Aug 2013 13:51:31 +0200 blanchet rationalize message generation + added a warning
Thu, 29 Aug 2013 10:08:55 +0200 traytel build relator term for compound type (generalized build_map)
Thu, 29 Aug 2013 08:05:29 +0200 blanchet documentation ideas
Thu, 29 Aug 2013 05:41:58 +0200 blanchet more
Wed, 28 Aug 2013 18:44:50 +0200 blanchet better error message
Wed, 28 Aug 2013 18:44:50 +0200 blanchet tuning
Mon, 26 Aug 2013 18:08:54 +0200 blanchet simplify code (now that ctr_sugar uses the same type variables as fp_sugar)
Mon, 26 Aug 2013 13:44:46 +0200 traytel moved derivation of ctor_dtor_unfold to sugar (streamlines fp_result interface)
Thu, 22 Aug 2013 17:13:46 +0200 traytel configuration option to control timing output for (co)datatypes
Wed, 21 Aug 2013 13:48:25 +0200 traytel transfer stored fp_sugar theorems into the "current" theory when retrieving an fp_sugar (avoids non-trivial merges)
Tue, 20 Aug 2013 17:39:08 +0200 traytel moved derivation of strong coinduction to sugar
Fri, 16 Aug 2013 18:36:55 +0200 blanchet tuning
Fri, 16 Aug 2013 18:06:37 +0200 blanchet moved function to where it seems to belong
Fri, 16 Aug 2013 18:04:39 +0200 blanchet moved library function where it belongs, and used Dmitriy's inside-out implementation
Fri, 16 Aug 2013 16:48:46 +0200 blanchet added useful library function
Fri, 16 Aug 2013 15:49:16 +0200 traytel tuned
Fri, 16 Aug 2013 15:35:47 +0200 blanchet moved useful library functions upstream
Wed, 14 Aug 2013 14:05:54 +0200 blanchet added fixme
Mon, 12 Aug 2013 15:25:17 +0200 blanchet clarified option name (since case/fold/rec are also destructors)
Mon, 12 Aug 2013 15:25:17 +0200 blanchet define case constant from other 'free constructor' axioms
Mon, 12 Aug 2013 09:38:42 +0200 blanchet qualify map and rel names
Sun, 11 Aug 2013 23:35:59 +0200 blanchet made (hopefully temporary) hack more robust
Sun, 11 Aug 2013 23:35:59 +0200 blanchet added warning
Sun, 11 Aug 2013 23:35:59 +0200 blanchet gracefully handle one more error condition
Sun, 11 Aug 2013 23:35:59 +0200 blanchet gracefully fail to define polymorphic (co)datatypes in local context
Fri, 09 Aug 2013 11:26:29 +0200 traytel tuned
Wed, 07 Aug 2013 17:23:40 +0200 blanchet tuning
Wed, 07 Aug 2013 17:23:40 +0200 blanchet enrich exported ML function's signature
Tue, 06 Aug 2013 15:50:23 +0200 blanchet tuning
Tue, 06 Aug 2013 15:50:23 +0200 blanchet tuning
Tue, 06 Aug 2013 15:50:23 +0200 blanchet tuning
Tue, 06 Aug 2013 15:50:23 +0200 blanchet tuning
Tue, 06 Aug 2013 15:50:23 +0200 blanchet export ML function (for primcorec)
Thu, 01 Aug 2013 14:22:21 +0200 blanchet tuning
Tue, 30 Jul 2013 16:22:39 +0200 blanchet avoid DUP error in local context
Tue, 30 Jul 2013 15:09:25 +0200 wenzelm type theory is purely value-oriented;
Mon, 15 Jul 2013 14:23:51 +0200 traytel eliminate duplicated theorems (thanks to "Auto solve_direct" in jEdit)
Tue, 11 Jun 2013 19:11:31 -0400 blanchet tuning
Tue, 11 Jun 2013 18:50:09 -0400 blanchet tuning
Mon, 10 Jun 2013 08:39:48 -0400 blanchet use right context when exporting variables (cf. AFP Coinductive_List failures)
Mon, 10 Jun 2013 00:30:30 -0400 blanchet keep track of nested BNFs
Mon, 10 Jun 2013 00:30:29 -0400 blanchet tuning
Fri, 07 Jun 2013 17:24:29 +0100 blanchet tuning
Fri, 07 Jun 2013 17:04:55 +0100 blanchet code simplifications (cf. 78a3d5006cf1)
Fri, 07 Jun 2013 16:19:52 +0100 blanchet killed dead code
Fri, 07 Jun 2013 14:45:07 +0200 blanchet changed back type of corecursor for nested case, effectively reverting aa66ea552357 and 78a3d5006cf1
Fri, 07 Jun 2013 12:54:40 +0200 blanchet killed dead code
Fri, 07 Jun 2013 12:34:40 +0200 blanchet tuning
Fri, 07 Jun 2013 12:11:55 +0200 blanchet tuning
Fri, 07 Jun 2013 12:00:29 +0200 blanchet tuning
Fri, 07 Jun 2013 11:42:37 +0200 blanchet tuning
Fri, 07 Jun 2013 11:40:24 +0200 blanchet tuning
Fri, 07 Jun 2013 11:31:48 +0200 blanchet tuning
Fri, 07 Jun 2013 10:55:44 +0200 blanchet tuning
Fri, 07 Jun 2013 10:37:13 +0200 blanchet tuning
Fri, 07 Jun 2013 10:29:42 +0200 blanchet tuning
Fri, 07 Jun 2013 10:24:35 +0200 blanchet tuning
Fri, 07 Jun 2013 09:47:04 +0200 blanchet tuning
Fri, 07 Jun 2013 09:30:13 +0200 blanchet tuning
Fri, 07 Jun 2013 09:28:59 +0200 blanchet tuning
Fri, 07 Jun 2013 08:57:44 +0200 blanchet tuning
Fri, 07 Jun 2013 08:48:59 +0200 blanchet [mq]: tuning
Thu, 06 Jun 2013 22:01:42 +0200 blanchet tuning
Thu, 06 Jun 2013 21:32:39 +0200 blanchet tuning
Thu, 06 Jun 2013 15:49:09 +0200 blanchet tuning
Thu, 06 Jun 2013 15:49:09 +0200 blanchet tuning
Thu, 06 Jun 2013 15:49:08 +0200 blanchet tuning
Thu, 06 Jun 2013 12:20:04 +0200 blanchet tuning
Thu, 06 Jun 2013 12:16:35 +0200 blanchet avoid duplicate call to "mk_fold_rec_args_types" function
Thu, 06 Jun 2013 11:47:11 +0200 blanchet continuation of f461dca57c66
Thu, 06 Jun 2013 11:41:19 +0200 blanchet renamed ML variables
Thu, 06 Jun 2013 11:33:41 +0200 blanchet tuned record field names to avoid confusion between low-level and high-level constants/theorems
Thu, 06 Jun 2013 11:19:04 +0200 blanchet tuned signature
Thu, 06 Jun 2013 09:17:17 +0200 blanchet support induction principles with multiple occurrences of the same type in "fpTs" and (hopefully) with loss of recursion (e.g. primrec definition of is_nil, where the IH can be dropped)
Thu, 06 Jun 2013 08:40:37 +0200 blanchet tuned ML variable names
Wed, 05 Jun 2013 13:39:02 +0200 blanchet tuning
Wed, 05 Jun 2013 13:31:32 +0200 blanchet avoid code duplication
Wed, 05 Jun 2013 13:22:44 +0200 blanchet eliminated dead argument
Wed, 05 Jun 2013 13:19:26 +0200 blanchet one less flaky "fpTs" check (flaky in the presence of duplicates in "fpTs", which we want to have in "primrec")
Wed, 05 Jun 2013 13:13:35 +0200 blanchet tuning
Wed, 05 Jun 2013 12:51:16 +0200 blanchet simpler, more robust iterator goal construction code
Wed, 05 Jun 2013 11:30:24 +0200 blanchet tuning
Wed, 05 Jun 2013 11:16:46 +0200 blanchet reverted 23929f647f79 -- not needed after all
Wed, 05 Jun 2013 10:27:46 +0200 blanchet killed dead code
Wed, 05 Jun 2013 10:21:35 +0200 blanchet tuning
Wed, 05 Jun 2013 10:05:08 +0200 blanchet slightly nicer ML interface
Wed, 05 Jun 2013 09:56:28 +0200 blanchet added convenience function
Wed, 05 Jun 2013 09:24:16 +0200 blanchet keep a record of the fixpoint equations
Wed, 05 Jun 2013 08:57:43 +0200 blanchet export ML function (needed for "primrec_new")
Tue, 04 Jun 2013 12:11:48 +0200 blanchet export ML function
Wed, 29 May 2013 03:10:26 +0200 blanchet tuning
Wed, 29 May 2013 02:35:49 +0200 blanchet more work on general recursors
Wed, 29 May 2013 02:35:49 +0200 blanchet tuning (use lists rather than pairs of lists throughout)
Wed, 29 May 2013 02:35:49 +0200 blanchet generalized recursors, effectively reverting inductive half of c7a034d01936
Wed, 29 May 2013 02:35:49 +0200 blanchet tuning
Tue, 28 May 2013 23:01:28 +0200 blanchet tuning (refactoring)
Tue, 28 May 2013 22:20:25 +0200 blanchet refactored triplicated functionality
Tue, 28 May 2013 21:17:48 +0200 blanchet tuning -- avoided unreadable true/false all over the place for LFP/GFP
Tue, 28 May 2013 10:18:43 +0200 blanchet exported ML function
Tue, 28 May 2013 08:36:12 +0200 blanchet clean up list of theorems
Mon, 27 May 2013 15:13:34 +0200 blanchet tuning
Mon, 27 May 2013 15:00:01 +0200 blanchet killed dead argument
Mon, 27 May 2013 14:00:32 +0200 blanchet tuning
Mon, 27 May 2013 13:30:08 +0200 blanchet generalized "mk_co_iter" to handle mutualized (co)iterators
Mon, 27 May 2013 12:21:17 +0200 blanchet tuning
Tue, 07 May 2013 21:37:40 +0200 blanchet removed dead argument
Tue, 07 May 2013 21:09:47 +0200 blanchet more robust iterator construction (needed for mutualized FPs)
Tue, 07 May 2013 21:09:46 +0200 blanchet tuning
Tue, 07 May 2013 17:35:29 +0200 blanchet removed tracing
Tue, 07 May 2013 17:29:23 +0200 blanchet export one more function
Tue, 07 May 2013 17:07:37 +0200 blanchet added field to record
Tue, 07 May 2013 16:43:17 +0200 blanchet tuning
Tue, 07 May 2013 16:18:42 +0200 blanchet removed dead code
Tue, 07 May 2013 16:15:21 +0200 blanchet move function to library
Tue, 07 May 2013 15:40:00 +0200 blanchet tuning
Tue, 07 May 2013 15:31:58 +0200 blanchet tuning
Tue, 07 May 2013 15:11:24 +0200 blanchet code tuning
Tue, 07 May 2013 15:03:01 +0200 blanchet refactoring
Tue, 07 May 2013 14:27:39 +0200 blanchet export one more function + tuning
Tue, 07 May 2013 11:27:29 +0200 blanchet tuned names + extended ML signature
Tue, 07 May 2013 10:29:30 +0200 blanchet tuning
Tue, 07 May 2013 10:18:59 +0200 blanchet imported patch refactor_coiter_constr
Mon, 06 May 2013 22:49:26 +0200 blanchet started factoring out coiter construction
Mon, 06 May 2013 21:29:16 +0200 blanchet rationalize ML signature
Mon, 06 May 2013 21:20:54 +0200 blanchet factor out construction of iterator
Mon, 06 May 2013 18:17:45 +0200 blanchet tuning
Thu, 02 May 2013 21:04:50 +0200 blanchet renamings
Thu, 02 May 2013 18:48:39 +0200 blanchet code tuning
Thu, 02 May 2013 18:34:36 +0200 blanchet signature tuning
Thu, 02 May 2013 18:25:44 +0200 blanchet removed dead code
Thu, 02 May 2013 18:16:28 +0200 blanchet tuned signature
Thu, 02 May 2013 16:33:04 +0200 blanchet store (co)induction rules in data structure
Thu, 02 May 2013 16:14:14 +0200 blanchet tuning names
Thu, 02 May 2013 14:04:56 +0200 blanchet export one more function
Thu, 02 May 2013 12:35:02 +0200 blanchet rationalized data structure
Thu, 02 May 2013 11:58:18 +0200 blanchet added and moved library functions (used in primrec code)
Thu, 02 May 2013 11:19:05 +0200 blanchet tuned names -- co_ and un_ with underscore are to be understood as (co) and (un)
Thu, 02 May 2013 10:16:40 +0200 blanchet tuning
Thu, 02 May 2013 10:11:14 +0200 blanchet more code rationalization
Thu, 02 May 2013 10:05:30 +0200 blanchet more code rationalization
Thu, 02 May 2013 09:50:58 +0200 blanchet more code rationalization
Thu, 02 May 2013 09:41:29 +0200 blanchet refactoring
Wed, 01 May 2013 19:33:49 +0200 blanchet renamed a few FP-related files, to make it clear that these are not the sum of LFP + GFP but rather shared basic libraries
Tue, 30 Apr 2013 21:30:36 +0200 blanchet tuning
Tue, 30 Apr 2013 18:43:48 +0200 blanchet export more functions (useful for primrec_new)
Tue, 30 Apr 2013 17:22:51 +0200 blanchet further enrich data structure
Tue, 30 Apr 2013 16:50:09 +0200 blanchet more
Tue, 30 Apr 2013 16:42:23 +0200 blanchet rationalized terminology (iterator = fold or rec, xxfoo = (co)foo or (un)foo)
Tue, 30 Apr 2013 16:29:31 +0200 blanchet added fields to database
Tue, 30 Apr 2013 16:18:21 +0200 blanchet tuned data structure
Tue, 30 Apr 2013 16:04:50 +0200 blanchet renamed records
Tue, 30 Apr 2013 15:58:32 +0200 blanchet added constructors to data structure
Tue, 30 Apr 2013 13:45:43 +0200 blanchet added pre-BNFs to database
Tue, 30 Apr 2013 13:38:41 +0200 blanchet lowercase type constructor, for consistency (cf. fp_result not FP_result nor FP_Result)
Tue, 30 Apr 2013 13:23:52 +0200 blanchet Added maps, sets, rels to "simps" thm collection
Tue, 30 Apr 2013 12:18:40 +0200 blanchet comment tuning
Tue, 30 Apr 2013 12:13:28 +0200 blanchet tuning
Tue, 30 Apr 2013 11:59:20 +0200 blanchet tuning
Tue, 30 Apr 2013 11:28:43 +0200 blanchet tuning
Tue, 30 Apr 2013 10:58:25 +0200 blanchet signature tuning
Tue, 30 Apr 2013 10:07:41 +0200 blanchet whitespace tuning
Tue, 30 Apr 2013 09:53:56 +0200 blanchet tuned signature
Mon, 29 Apr 2013 18:52:18 +0200 blanchet register all (co)datatypes in local data
Mon, 29 Apr 2013 17:37:00 +0200 blanchet create data structure for storing (co)datatype information
Mon, 29 Apr 2013 16:50:01 +0200 blanchet use record instead of big tuple
Mon, 29 Apr 2013 14:06:37 +0200 blanchet use base names, not full names
Mon, 29 Apr 2013 13:52:14 +0200 blanchet tune signatures
Mon, 29 Apr 2013 13:47:46 +0200 blanchet tuning
Mon, 29 Apr 2013 13:42:54 +0200 blanchet tuning
Mon, 29 Apr 2013 13:40:26 +0200 blanchet tuned function signatures
Mon, 29 Apr 2013 11:46:03 +0200 blanchet factored out derivation of coinduction, unfold, corec
Mon, 29 Apr 2013 10:37:23 +0200 blanchet factored out derivation of induction principles, folds and recs, in preparation for reduction of nested to mutual
Mon, 29 Apr 2013 09:45:14 +0200 blanchet use record instead of huge tuple
Mon, 29 Apr 2013 09:10:49 +0200 blanchet renamed BNF "(co)data" commands to names that are closer to their final names
Sat, 27 Apr 2013 11:37:50 +0200 blanchet tuned ML and thy file names
Fri, 26 Apr 2013 14:14:55 +0200 blanchet for compatibility, generate recursor arguments in the same order as old package
Fri, 26 Apr 2013 14:14:54 +0200 blanchet tuning in preparation for actual changes
Fri, 26 Apr 2013 14:14:52 +0200 blanchet started working on compatibility with old package's recursor
Fri, 26 Apr 2013 12:09:51 +0200 blanchet more intuitive syntax for equality-style discriminators of nullary constructors
Fri, 26 Apr 2013 11:04:46 +0200 blanchet put an underscore in prefix
Fri, 26 Apr 2013 11:04:45 +0200 blanchet changed discriminator default: avoid mixing ctor and dtor views
Thu, 25 Apr 2013 18:27:26 +0200 blanchet renamed "wrap_data" to "wrap_free_constructors"
Thu, 25 Apr 2013 18:14:04 +0200 blanchet register coinductive type's coinduct rule
Thu, 25 Apr 2013 17:13:24 +0200 blanchet generate proper attributes for coinduction rules
Thu, 25 Apr 2013 08:56:10 +0200 blanchet simplified code -- no need for two attempts, the error we get from mixfix the first time is good (and better to get than a parse error in the specification because the user tries to use a mixfix that silently failed)
Wed, 24 Apr 2013 22:48:22 +0200 blanchet proper error generated for wrong mixfix
Wed, 24 Apr 2013 18:49:52 +0200 blanchet honor user-specified name for relator + generalize syntax
Wed, 24 Apr 2013 17:47:22 +0200 blanchet renamed "set_natural" to "set_map", reflecting {Bl,Po,Tr} concensus
Wed, 24 Apr 2013 13:16:21 +0200 blanchet honor user-specified name for map function
Wed, 24 Apr 2013 13:16:20 +0200 blanchet honor user-specified set function names
Wed, 24 Apr 2013 13:16:20 +0200 blanchet parse set function name
Tue, 23 Apr 2013 17:46:12 +0200 blanchet avoid accidental specialization of the types in the "map" property of codatatypes
Tue, 23 Apr 2013 17:15:44 +0200 blanchet simplify "Inl () = Inr ()" as well (not entirely clear why this is necessary)
Wed, 27 Mar 2013 14:19:18 +0100 wenzelm tuned signature and module arrangement;
Fri, 08 Mar 2013 14:15:39 +0100 blanchet proper type inference for default values
Thu, 22 Nov 2012 14:44:37 +0100 traytel made SML/NJ happier
Wed, 03 Oct 2012 22:07:26 +0200 blanchet thread the right local theory through + reenable parallel proofs for previously problematic theories
Tue, 02 Oct 2012 01:00:18 +0200 blanchet continued changing type of corec type
Tue, 02 Oct 2012 01:00:18 +0200 blanchet removed dead params and dead code
Tue, 02 Oct 2012 01:00:18 +0200 blanchet changed type of corecursor for the nested recursion case
Mon, 01 Oct 2012 11:04:30 +0200 blanchet fixed recursor definition for datatypes with inner products (e.g. "'a trm" from the lambda-term example)
Mon, 01 Oct 2012 10:46:30 +0200 blanchet tweaked corecursor/coiterator tactic
Mon, 01 Oct 2012 10:34:58 +0200 blanchet changed the type of the recursor for nested recursion
Fri, 28 Sep 2012 09:12:50 +0200 blanchet renamed ML file in preparation for next step
less more (0) tip