History log of /seL4-l4v-master/isabelle/src/HOL/Tools/BNF/bnf_lfp_compat.ML
Revision Date Author Comments
# 14c7fb8f 09-Aug-2019 wenzelm <none@none>

formal position for PThm nodes;


# a4bab154 04-Jan-2019 wenzelm <none@none>

isabelle update -u control_cartouches;


# 9322bd71 02-Jul-2017 haftmann <none@none>

proper concept of code declaration wrt. atomicity and Isar declarations

--HG--
extra : rebase_source : adb08da85e01b6c9c81d471a0d8e7ebb68d7e472


# 502ab55a 30-Dec-2016 blanchet <none@none>

more uniform errors in '(prim)(co)rec(ursive)' variants


# bb1d3a61 28-Dec-2016 blanchet <none@none>

print constants in 'primrec', 'primcorec(ursive)', 'corec(ursive)', like in 'definition' and 'fun(ction)'


# d945085c 12-Sep-2016 blanchet <none@none>

make (co)induct component of 'fp_sugar' optional, for the benefit of nonuniform (co)datatypes and other similar extensions


# 0203cb9a 01-Sep-2016 blanchet <none@none>

more robustness


# 41f01a69 23-Aug-2016 traytel <none@none>

tuned signature


# 2e392e73 06-Jun-2016 haftmann <none@none>

explicit tagging of code equations de-baroquifies interface

--HG--
extra : rebase_source : 1d83d31f669dc30b586df508a64fdc3a9e7b2655


# 68f9ecca 28-Apr-2016 wenzelm <none@none>

support 'assumes' in specifications, e.g. 'definition', 'inductive';
tuned signatures;


# b33d7722 25-Apr-2016 blanchet <none@none>

generalize code to avoid making assumptions about type variable names


# d5c534a3 02-Mar-2016 traytel <none@none>

respect qualification when noting theorems in prim(co)rec


# 6b18406f 16-Feb-2016 traytel <none@none>

make predicator a first-class bnf citizen


# dbbe37ca 15-Jul-2015 traytel <none@none>

{r,e,d,f}tac with proper context in BNF


# 02fcb3d9 10-Apr-2015 blanchet <none@none>

have 'primrec' return definitions


# 3f438084 10-Apr-2015 blanchet <none@none>

renamed ML funs


# 4aa541f4 06-Apr-2015 wenzelm <none@none>

@{command_spec} is superseded by @{command_keyword};


# 4eeed71f 06-Mar-2015 wenzelm <none@none>

tuned;


# 13ddea91 26-Nov-2014 wenzelm <none@none>

renamed "pairself" to "apply2", in accordance to @{apply 2};


# becec75e 15-Oct-2014 blanchet <none@none>

tuned whitespace


# ce27dd00 13-Oct-2014 wenzelm <none@none>

tuned signature;


# bb4c3636 13-Oct-2014 wenzelm <none@none>

Local_Interpretation is superseded by Plugin with formal Plugin_Name management, avoiding undeclared strings;


# cbfdc100 08-Oct-2014 wenzelm <none@none>

added parameterized ML antiquotations @{map N}, @{fold N}, @{fold_map N}, @{split_list N};


# 4434c5ed 26-Sep-2014 desharna <none@none>

refactor fp_sugar move theorems


# 9608121d 26-Sep-2014 desharna <none@none>

refactor fp_sugar move theorems


# a14f7fdb 26-Sep-2014 desharna <none@none>

refactor fp_sugar move theorems


# d4e6376c 16-Sep-2014 blanchet <none@none>

tweaked compatibility layer


# b68ac3dc 17-Sep-2014 blanchet <none@none>

support (finite values of) codatatypes in Quickcheck


# 41af0ef0 14-Sep-2014 blanchet <none@none>

tuning


# 6b777fb4 15-Sep-2014 blanchet <none@none>

generate 'code' attribute only if 'code' plugin is enabled


# 4264224c 11-Sep-2014 blanchet <none@none>

tuning terminology


# 8f15946b 11-Sep-2014 blanchet <none@none>

speed up old Nominal by killing type variables


# f6ca0c63 09-Sep-2014 blanchet <none@none>

made SML/NJ happier


# cc7a8bab 08-Sep-2014 blanchet <none@none>

export right sorts


# b8a3e656 08-Sep-2014 blanchet <none@none>

wildcards in plugins


# c3eff356 08-Sep-2014 blanchet <none@none>

improved 'datatype_compat' further for recursion through functions


# 12e88600 08-Sep-2014 blanchet <none@none>

no type-based lookup -- these fail in the general, ambiguous case


# 90d63356 08-Sep-2014 blanchet <none@none>

tuning


# 53dc3f8b 08-Sep-2014 blanchet <none@none>

properly note theorems for split recursors


# ee50af50 08-Sep-2014 blanchet <none@none>

tuning


# 75fd5395 08-Sep-2014 blanchet <none@none>

extended 'datatype_compat' to generate the expected, old-style recursor in the presence of recursion through functions


# cc5256c1 04-Sep-2014 blanchet <none@none>

added 'plugins' option to control which hooks are enabled


# 625d35eb 04-Sep-2014 blanchet <none@none>

named interpretations


# ec4e6125 04-Sep-2014 blanchet <none@none>

tuned size function generation


# 3a5bbb8e 03-Sep-2014 blanchet <none@none>

introduced local interpretation mechanism for BNFs, to solve issues with datatypes in locales


# 48da5267 02-Sep-2014 blanchet <none@none>

more compatibility functions


# e0068d6b 02-Sep-2014 blanchet <none@none>

codatatypes are not datatypes


# a8254f92 01-Sep-2014 blanchet <none@none>

made SML/NJ happier


# 453ff8ee 01-Sep-2014 blanchet <none@none>

avoid more 'bad background theory' issues


# a5355909 01-Sep-2014 blanchet <none@none>

drop hopeless feature -- unfolding of BNF datatype info without a prior 'datatype_compat'


# ceaee95a 01-Sep-2014 blanchet <none@none>

ported to use new-style datatypes
* * *
compile


# e7560d84 01-Sep-2014 blanchet <none@none>

ported Refute to use new datatypes when possible


# 686ff25c 01-Sep-2014 blanchet <none@none>

added primrec compatibility function


# 621fdd98 01-Sep-2014 blanchet <none@none>

more work on compatibility interfaces


# ecd3ce67 01-Sep-2014 blanchet <none@none>

implemented compatibility definition of datatype


# c7247d61 01-Sep-2014 blanchet <none@none>

implemented compatibility interpretation


# 030fdf33 01-Sep-2014 blanchet <none@none>

tuning


# 9c861e3b 01-Sep-2014 blanchet <none@none>

more compatibility between old- and new-style datatypes


# 65facd24 01-Sep-2014 blanchet <none@none>

tuning


# fb2f6a3a 01-Sep-2014 blanchet <none@none>

renamed modules defining old datatypes, as a step towards having 'datatype_new' take 'datatype's place

--HG--
rename : src/HOL/Datatype.thy => src/HOL/Old_Datatype.thy
rename : src/HOL/Tools/Function/size.ML => src/HOL/Tools/Function/old_size.ML
rename : src/HOL/Tools/Datatype/datatype.ML => src/HOL/Tools/Old_Datatype/old_datatype.ML
rename : src/HOL/Tools/Datatype/datatype_aux.ML => src/HOL/Tools/Old_Datatype/old_datatype_aux.ML
rename : src/HOL/Tools/Datatype/datatype_codegen.ML => src/HOL/Tools/Old_Datatype/old_datatype_codegen.ML
rename : src/HOL/Tools/Datatype/datatype_data.ML => src/HOL/Tools/Old_Datatype/old_datatype_data.ML
rename : src/HOL/Tools/Datatype/datatype_prop.ML => src/HOL/Tools/Old_Datatype/old_datatype_prop.ML
rename : src/HOL/Tools/Datatype/datatype_realizer.ML => src/HOL/Tools/Old_Datatype/old_datatype_realizer.ML
rename : src/HOL/Tools/Datatype/primrec.ML => src/HOL/Tools/Old_Datatype/old_primrec.ML
rename : src/HOL/Tools/Datatype/rep_datatype.ML => src/HOL/Tools/Old_Datatype/old_rep_datatype.ML


# 6fb4e52a 18-Aug-2014 blanchet <none@none>

reordered some (co)datatype property names for more consistency


# e18f22c0 06-Aug-2014 blanchet <none@none>

tuning


# 30d2bdc7 05-Aug-2014 blanchet <none@none>

more correct clique computation for N2M


# 546879ed 05-Aug-2014 blanchet <none@none>

tuning whitespace


# 8c308eea 23-Jul-2014 blanchet <none@none>

repaired named derivations


# 6d54f022 09-Apr-2014 blanchet <none@none>

thread mutual cliques through


# dfb90dca 08-Apr-2014 blanchet <none@none>

allow arguments to 'datatype_compat' in disorder


# b5258340 08-Apr-2014 blanchet <none@none>

support deeply nested datatypes in 'datatype_compat'


# 57e7c9cf 08-Apr-2014 blanchet <none@none>

preserve user type variable names to avoid mismatches/confusion


# 3cb75ce2 09-Mar-2014 wenzelm <none@none>

tuned signature;


# d815b696 06-Mar-2014 blanchet <none@none>

balance tuples that represent curried functions


# 8decd8eb 05-Mar-2014 wenzelm <none@none>

tuned signature -- more uniform check_type_name/read_type_name;
proper reports for read_type_name (lost in 710bc66f432c);


# b29ffe0e 02-Mar-2014 blanchet <none@none>

rationalize internals


# a3a1f899 02-Mar-2014 blanchet <none@none>

got rid of automatically generated fold constant and theorems (to reduce overhead)


# ae64540a 27-Feb-2014 blanchet <none@none>

correct most general type for mutual recursion when several identical types are involved


# efebaf05 18-Feb-2014 blanchet <none@none>

prepare two-stage 'primrec' setup


# 9fc0c5f0 18-Feb-2014 blanchet <none@none>

tuning


# b904a69d 17-Feb-2014 blanchet <none@none>

follow up of 0819931d652d -- put right induction rule in the old data structure, repairs 'HOL-Proof'-based sessions


# 8d680255 17-Feb-2014 blanchet <none@none>

simplified data structure by reducing the incidence of clumsy indices


# a1d385ea 17-Feb-2014 blanchet <none@none>

renamed 'datatype_new_compat' to 'datatype_compat'


# 2f309df2 14-Feb-2014 blanchet <none@none>

generate proper 'DtRec' indices in 'datatype_new_compat' for the case where some types are duplicated


# 2a0c4d96 14-Feb-2014 blanchet <none@none>

better handling of recursion through functions


# 619db341 14-Feb-2014 blanchet <none@none>

generate unique names


# 0ba161cf 14-Feb-2014 blanchet <none@none>

allow different functions to recurse on the same type, like in the old package


# 0ef9ed5c 14-Feb-2014 blanchet <none@none>

improved 'datatype_new_compat': generate more fixpoint equations for types like 'datatype_new x = C (x list) (x list)' (here, one equation for each x list instead of a single for both), for higher compatibility + code generation attributes on the recursor


# fff4f229 12-Feb-2014 blanchet <none@none>

made 'ctr_sugar' more friendly to the 'datatype_realizer'
* * *
reverted changes to 'datatype_realizer.ML'


# e8e169dd 20-Jan-2014 blanchet <none@none>

adjusted comments


# a0868967 20-Jan-2014 blanchet <none@none>

avoid nested 'Tools' directories

--HG--
rename : src/HOL/Tools/BNF/Tools/bnf_comp.ML => src/HOL/Tools/BNF/bnf_comp.ML
rename : src/HOL/Tools/BNF/Tools/bnf_comp_tactics.ML => src/HOL/Tools/BNF/bnf_comp_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_def.ML => src/HOL/Tools/BNF/bnf_def.ML
rename : src/HOL/Tools/BNF/Tools/bnf_def_tactics.ML => src/HOL/Tools/BNF/bnf_def_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_def_sugar.ML => src/HOL/Tools/BNF/bnf_fp_def_sugar.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_def_sugar_tactics.ML => src/HOL/Tools/BNF/bnf_fp_def_sugar_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_n2m.ML => src/HOL/Tools/BNF/bnf_fp_n2m.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_n2m_sugar.ML => src/HOL/Tools/BNF/bnf_fp_n2m_sugar.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_n2m_tactics.ML => src/HOL/Tools/BNF/bnf_fp_n2m_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_rec_sugar_util.ML => src/HOL/Tools/BNF/bnf_fp_rec_sugar_util.ML
rename : src/HOL/Tools/BNF/Tools/bnf_fp_util.ML => src/HOL/Tools/BNF/bnf_fp_util.ML
rename : src/HOL/Tools/BNF/Tools/bnf_gfp.ML => src/HOL/Tools/BNF/bnf_gfp.ML
rename : src/HOL/Tools/BNF/Tools/bnf_gfp_rec_sugar.ML => src/HOL/Tools/BNF/bnf_gfp_rec_sugar.ML
rename : src/HOL/Tools/BNF/Tools/bnf_gfp_rec_sugar_tactics.ML => src/HOL/Tools/BNF/bnf_gfp_rec_sugar_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_gfp_tactics.ML => src/HOL/Tools/BNF/bnf_gfp_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_gfp_util.ML => src/HOL/Tools/BNF/bnf_gfp_util.ML
rename : src/HOL/Tools/BNF/Tools/bnf_lfp.ML => src/HOL/Tools/BNF/bnf_lfp.ML
rename : src/HOL/Tools/BNF/Tools/bnf_lfp_compat.ML => src/HOL/Tools/BNF/bnf_lfp_compat.ML
rename : src/HOL/Tools/BNF/Tools/bnf_lfp_rec_sugar.ML => src/HOL/Tools/BNF/bnf_lfp_rec_sugar.ML
rename : src/HOL/Tools/BNF/Tools/bnf_lfp_tactics.ML => src/HOL/Tools/BNF/bnf_lfp_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_lfp_util.ML => src/HOL/Tools/BNF/bnf_lfp_util.ML
rename : src/HOL/Tools/BNF/Tools/bnf_tactics.ML => src/HOL/Tools/BNF/bnf_tactics.ML
rename : src/HOL/Tools/BNF/Tools/bnf_util.ML => src/HOL/Tools/BNF/bnf_util.ML