History log of /seL4-l4v-master/l4v/isabelle/src/HOL/Inductive.thy
Revision Date Author Comments
# 6ce8882b 14-Mar-2019 wenzelm <none@none>

more specific keyword kinds;


# e60cf64d 06-Jan-2019 wenzelm <none@none>

isabelle update -u path_cartouches;


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

isabelle update -u control_cartouches;


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

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


# 963e5073 01-Oct-2016 wenzelm <none@none>

tuned proofs;


# f8080d0e 01-Oct-2016 wenzelm <none@none>

Isar proof of Schroeder_Bernstein without using Hilbert_Choice (and metis);


# 81b3bbe4 01-Oct-2016 wenzelm <none@none>

clarified lfp/gfp statements and proofs;


# f16f9112 01-Oct-2016 wenzelm <none@none>

added lemma;


# 9f80d8ca 13-Sep-2016 traytel <none@none>

don't expose internal construction in the coinduction rule for mutual coinductive predicates


# f937778a 02-Aug-2016 wenzelm <none@none>

misc tuning and modernization;


# 65b76842 29-Jul-2016 Andreas Lochbihler <none@none>

add lemmas contributed by Peter Gammie


# 14001a0d 22-Jul-2016 wenzelm <none@none>

tuned proofs -- avoid unstructured calculation;


# b78a0c93 05-Jul-2016 wenzelm <none@none>

misc tuning and modernization;


# 0bfb73b6 28-Dec-2015 wenzelm <none@none>

former "xsymbols" syntax is used by default, and ASCII replacement syntax with print mode "ASCII";


# 6fc0f068 28-Dec-2015 wenzelm <none@none>

prefer symbols for "Union", "Inter";


# 0df376fc 07-Dec-2015 wenzelm <none@none>

isabelle update_cartouches -c -t;


# 56730d74 06-Oct-2015 wenzelm <none@none>

fewer aliases for toplevel theorem statements;


# 85ed9565 01-Sep-2015 wenzelm <none@none>

eliminated \<Colon>;


# 1901affb 18-Jul-2015 wenzelm <none@none>

isabelle update_cartouches;


# ab2206a7 03-Jul-2015 hoelzl <none@none>

add named theorems order_continuous_intros; lfp/gfp_funpow; bounded variant for lfp/gfp transfer

--HG--
extra : rebase_source : b8f67b531a15510b1f468145a6194cf68875d262


# b53d433f 04-May-2015 hoelzl <none@none>

strengthened lfp_ordinal_induct; added dual gfp variant

--HG--
extra : rebase_source : faeeb4ca40153738fce12fd2ab3522b788b18d32


# 353eccf4 04-May-2015 hoelzl <none@none>

add rules for least/greatest fixed point calculus

--HG--
extra : rebase_source : 01de51c6333edb1f57ff734be51f94050a97d40a


# 794edf80 02-Nov-2014 wenzelm <none@none>

modernized header uniformly as section;


# 94bf2bab 29-Oct-2014 wenzelm <none@none>

modernized setup;


# cb40fd66 11-Sep-2014 blanchet <none@none>

renamed 'rep_datatype' to 'old_rep_datatype' (HOL)


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

fixed infinite loops in 'register' functions + more uniform API


# 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


# 07eba0f3 14-Mar-2014 wenzelm <none@none>

discontinued somewhat pointless "thy_script" keyword kind;


# d149e4f0 20-Feb-2014 noschinl <none@none>

less flex-flex pairs


# 04523a1c 19-Feb-2014 blanchet <none@none>

moved 'primrec' up (for real this time) and removed temporary 'old_primrec'


# 3154df20 17-Feb-2014 blanchet <none@none>

renamed old 'primrec' to 'old_primrec' (until the new 'primrec' can be moved above 'Nat' in the theory dependencies)


# edd5c531 02-Dec-2013 blanchet <none@none>

generalized datatype code generation code so that it works with old-style and new-style (co)datatypes (as long as they are not local)


# 90f25eaa 12-Nov-2013 blanchet <none@none>

moved 'Ctr_Sugar' further up the theory hierarchy, so that 'Datatype' can use it


# ffcd6989 25-May-2013 wenzelm <none@none>

syntax translations always depend on context;


# 0ea002cc 10-Apr-2013 wenzelm <none@none>

tuned pretty layout: avoid nested Pretty.string_of, which merely happens to work with Isabelle/jEdit since formatting is delegated to Scala side;
declare command "print_case_translations" where it is actually defined;


# 575233e1 05-Apr-2013 traytel <none@none>

disallow coercions to interfere with case translations


# d6ca5a22 05-Apr-2013 traytel <none@none>

allow redundant cases in the list comprehension translation


# 054d898f 05-Apr-2013 traytel <none@none>

special constant to prevent eta-contraction of the check-phase syntax of case translations


# 67709574 22-Jan-2013 traytel <none@none>

separate data used for case translation from the datatype package


# d564436d 22-Jan-2013 berghofe <none@none>

case translations performed in a separate check phase (with adjustments by traytel)


# bdb30def 30-Nov-2012 wenzelm <none@none>

added 'print_inductives' command;


# e3227796 22-Aug-2012 wenzelm <none@none>

prefer ML_file over old uses;


# f63d11a7 19-Jul-2012 haftmann <none@none>

removed ML module DSeq which was a part of the ancient code generator (cf. 58e33a125f32)


# 870593bf 15-Mar-2012 wenzelm <none@none>

declare command keywords via theory header, including strict checking outside Pure;


# 9986980f 15-Mar-2012 wenzelm <none@none>

declare minor keywords via theory header;


# ed418196 28-Dec-2011 wenzelm <none@none>

reverted some changes for set->predicate transition, according to "hg log -u berghofe -r Isabelle2007:Isabelle2008";
tuned proofs;


# 3438a43f 16-Dec-2011 wenzelm <none@none>

clarified modules that contribute to datatype package;


# ee5a08df 15-Dec-2011 wenzelm <none@none>

prefer Name.context operations;


# ffccc68a 16-Dec-2011 wenzelm <none@none>

clarified modules that contribute to datatype package;

--HG--
rename : src/HOL/Tools/primrec.ML => src/HOL/Tools/Datatype/primrec.ML


# 231120dd 15-Dec-2011 wenzelm <none@none>

clarified module dependencies: Datatype_Data, Datatype_Case, Rep_Datatype;


# 25a07f9a 15-Dec-2011 wenzelm <none@none>

separate rep_datatype.ML;
tuned signature;


# d04d4aee 10-Sep-2011 haftmann <none@none>

renamed theory Complete_Lattice to Complete_Lattices, in accordance with Lattices, Orderings etc.

--HG--
rename : src/HOL/Complete_Lattice.thy => src/HOL/Complete_Lattices.thy


# 57cde513 27-Jun-2011 krauss <none@none>

new Datatype.info_of_constr with strict behaviour wrt. to overloaded constructors -- side effect: function package correctly identifies 0::int as a non-constructor;
renamed old version to info_of_constr_permissive, reflecting its semantics


# ec1196d6 09-Jun-2011 wenzelm <none@none>

discontinued Name.variant to emphasize that this is old-style / indirect;


# 5ea01c57 08-Dec-2010 haftmann <none@none>

tuned


# b764b363 28-Sep-2010 haftmann <none@none>

dropped old primrec package


# 9d7024b5 09-Jun-2010 haftmann <none@none>

moved inductive_codegen to place where product type is available; tuned structure name


# 4f52a6da 11-Feb-2010 wenzelm <none@none>

modernized translations;
formal markup of @{syntax_const} and @{const_syntax};
minor tuning;


# 1a637a6c 30-Nov-2009 haftmann <none@none>

modernized structures and tuned headers of datatype package modules; joined former datatype.ML and datatype_rep_proofs.ML

--HG--
rename : src/HOL/Tools/Datatype/datatype.ML => src/HOL/Tools/Datatype/datatype_data.ML
extra : rebase_source : 552900fbf6783258465fa5000202d52cf1f99a1f


# 6e46e921 27-Nov-2009 berghofe <none@none>

Streamlined setup for monotonicity rules (no longer requires classical rules).


# 78548c07 27-Nov-2009 haftmann <none@none>

renamed former datatype.ML to datatype_data.ML; datatype.ML provides uniform view on datatype.ML and datatype_rep_proofs.ML

--HG--
rename : src/HOL/Tools/Datatype/datatype.ML => src/HOL/Tools/Datatype/datatype_data.ML
extra : rebase_source : 1966817fe0f19fbb990981dff02b8c829770c173


# f124eabb 25-Nov-2009 haftmann <none@none>

bootstrap datatype_rep_proofs in Datatype.thy (avoids unchecked dynamic name references)

--HG--
extra : rebase_source : f0d460622d846c9dca7630d50d097b93aa8008eb


# c61fb632 22-Sep-2009 haftmann <none@none>

stripped legacy ML bindings


# 92ba9c59 18-Sep-2009 haftmann <none@none>

inter and union are mere abbreviations for inf and sup


# 02f1fc44 16-Sep-2009 haftmann <none@none>

Inter and Union are mere abbreviations for Inf and Sup


# fb17b041 06-Jul-2009 haftmann <none@none>

moved Inductive.myinv to Fun.inv; tuned


# d0b33b8e 23-Jun-2009 haftmann <none@none>

tuned interfaces of datatype module


# d18d6a07 22-Jun-2009 haftmann <none@none>

uniformly capitialized names for subdirectories

--HG--
rename : src/HOL/Tools/datatype_package/datatype.ML => src/HOL/Tools/Datatype/datatype.ML
rename : src/HOL/Tools/datatype_package/datatype_abs_proofs.ML => src/HOL/Tools/Datatype/datatype_abs_proofs.ML
rename : src/HOL/Tools/datatype_package/datatype_aux.ML => src/HOL/Tools/Datatype/datatype_aux.ML
rename : src/HOL/Tools/datatype_package/datatype_case.ML => src/HOL/Tools/Datatype/datatype_case.ML
rename : src/HOL/Tools/datatype_package/datatype_codegen.ML => src/HOL/Tools/Datatype/datatype_codegen.ML
rename : src/HOL/Tools/datatype_package/datatype_prop.ML => src/HOL/Tools/Datatype/datatype_prop.ML
rename : src/HOL/Tools/datatype_package/datatype_realizer.ML => src/HOL/Tools/Datatype/datatype_realizer.ML
rename : src/HOL/Tools/datatype_package/datatype_rep_proofs.ML => src/HOL/Tools/Datatype/datatype_rep_proofs.ML
rename : src/HOL/Tools/function_package/auto_term.ML => src/HOL/Tools/Function/auto_term.ML
rename : src/HOL/Tools/function_package/context_tree.ML => src/HOL/Tools/Function/context_tree.ML
rename : src/HOL/Tools/function_package/decompose.ML => src/HOL/Tools/Function/decompose.ML
rename : src/HOL/Tools/function_package/descent.ML => src/HOL/Tools/Function/descent.ML
rename : src/HOL/Tools/function_package/fundef.ML => src/HOL/Tools/Function/fundef.ML
rename : src/HOL/Tools/function_package/fundef_common.ML => src/HOL/Tools/Function/fundef_common.ML
rename : src/HOL/Tools/function_package/fundef_core.ML => src/HOL/Tools/Function/fundef_core.ML
rename : src/HOL/Tools/function_package/fundef_datatype.ML => src/HOL/Tools/Function/fundef_datatype.ML
rename : src/HOL/Tools/function_package/fundef_lib.ML => src/HOL/Tools/Function/fundef_lib.ML
rename : src/HOL/Tools/function_package/induction_scheme.ML => src/HOL/Tools/Function/induction_scheme.ML
rename : src/HOL/Tools/function_package/inductive_wrap.ML => src/HOL/Tools/Function/inductive_wrap.ML
rename : src/HOL/Tools/function_package/lexicographic_order.ML => src/HOL/Tools/Function/lexicographic_order.ML
rename : src/HOL/Tools/function_package/measure_functions.ML => src/HOL/Tools/Function/measure_functions.ML
rename : src/HOL/Tools/function_package/mutual.ML => src/HOL/Tools/Function/mutual.ML
rename : src/HOL/Tools/function_package/pattern_split.ML => src/HOL/Tools/Function/pattern_split.ML
rename : src/HOL/Tools/function_package/scnp_reconstruct.ML => src/HOL/Tools/Function/scnp_reconstruct.ML
rename : src/HOL/Tools/function_package/scnp_solve.ML => src/HOL/Tools/Function/scnp_solve.ML
rename : src/HOL/Tools/function_package/size.ML => src/HOL/Tools/Function/size.ML
rename : src/HOL/Tools/function_package/sum_tree.ML => src/HOL/Tools/Function/sum_tree.ML
rename : src/HOL/Tools/function_package/termination.ML => src/HOL/Tools/Function/termination.ML
rename : src/Tools/code/code_haskell.ML => src/Tools/Code/code_haskell.ML
rename : src/Tools/code/code_ml.ML => src/Tools/Code/code_ml.ML
rename : src/Tools/code/code_preproc.ML => src/Tools/Code/code_preproc.ML
rename : src/Tools/code/code_printer.ML => src/Tools/Code/code_printer.ML
rename : src/Tools/code/code_target.ML => src/Tools/Code/code_target.ML
rename : src/Tools/code/code_thingol.ML => src/Tools/Code/code_thingol.ML


# 91b337ca 19-Jun-2009 haftmann <none@none>

discontinued ancient tradition to suffix certain ML module names with "_package"

--HG--
rename : src/HOL/Import/import_package.ML => src/HOL/Import/import.ML
rename : src/HOL/Nominal/nominal_package.ML => src/HOL/Nominal/nominal.ML
rename : src/HOL/Tools/specification_package.ML => src/HOL/Tools/choice_specification.ML
rename : src/HOL/Tools/datatype_package/datatype_package.ML => src/HOL/Tools/datatype_package/datatype.ML
rename : src/HOL/Tools/function_package/fundef_package.ML => src/HOL/Tools/function_package/fundef.ML
rename : src/HOL/Tools/inductive_package.ML => src/HOL/Tools/inductive.ML
rename : src/HOL/Tools/inductive_set_package.ML => src/HOL/Tools/inductive_set.ML
rename : src/HOL/Tools/old_primrec_package.ML => src/HOL/Tools/old_primrec.ML
rename : src/HOL/Tools/primrec_package.ML => src/HOL/Tools/primrec.ML
rename : src/HOL/Tools/recdef_package.ML => src/HOL/Tools/recdef.ML
rename : src/HOL/Tools/record_package.ML => src/HOL/Tools/record.ML
rename : src/HOL/Tools/typecopy_package.ML => src/HOL/Tools/typecopy.ML
rename : src/HOL/Tools/typedef_package.ML => src/HOL/Tools/typedef.ML


# 733ca04e 10-Jun-2009 haftmann <none@none>

separate directory for datatype package

--HG--
rename : src/HOL/Tools/datatype_abs_proofs.ML => src/HOL/Tools/datatype_package/datatype_abs_proofs.ML
rename : src/HOL/Tools/datatype_case.ML => src/HOL/Tools/datatype_package/datatype_case.ML
rename : src/HOL/Tools/datatype_codegen.ML => src/HOL/Tools/datatype_package/datatype_codegen.ML
rename : src/HOL/Tools/datatype_package.ML => src/HOL/Tools/datatype_package/datatype_package.ML
rename : src/HOL/Tools/datatype_prop.ML => src/HOL/Tools/datatype_package/datatype_prop.ML
rename : src/HOL/Tools/datatype_realizer.ML => src/HOL/Tools/datatype_package/datatype_realizer.ML
rename : src/HOL/Tools/datatype_rep_proofs.ML => src/HOL/Tools/datatype_package/datatype_rep_proofs.ML


# b15812f4 31-Dec-2008 wenzelm <none@none>

eliminated OldTerm.add_term_free_names;


# 1be33ad4 31-Dec-2008 wenzelm <none@none>

moved old add_type_XXX, add_term_XXX etc. to structure OldTerm;


# 57704666 07-May-2008 berghofe <none@none>

Instantiated some rules to avoid problems with HO unification.


# fa294173 30-Jan-2008 haftmann <none@none>

Theorem Inductive.lfp_ordinal_induct generalized to complete lattices


# 2784bfca 06-Dec-2007 haftmann <none@none>

added new primrec package


# 55f28d65 05-Dec-2007 haftmann <none@none>

simplified infrastructure for code generator operational equality


# afc0b201 30-Nov-2007 haftmann <none@none>

adjustions to due to instance target


# d030298f 08-Oct-2007 haftmann <none@none>

integrated FixedPoint into Inductive


# d8fc88d9 04-Oct-2007 haftmann <none@none>

tuned datatype_codegen setup


# 3d4620f3 26-Sep-2007 wenzelm <none@none>

removed dead code;


# 2db87539 24-Sep-2007 haftmann <none@none>

datatype interpretators for size and datatype_realizer


# ec4fd782 17-Sep-2007 haftmann <none@none>

introduced generic concepts for theory interpretators


# 4c158f35 17-Sep-2007 haftmann <none@none>

separated code for inductive sequences from inductive_codegen.ML


# d72a89f7 20-Aug-2007 nipkow <none@none>

Final mods for list comprehension


# 4b066fc7 11-Jul-2007 berghofe <none@none>

Added new package for inductive sets.


# 7499758c 10-Jul-2007 haftmann <none@none>

clarified import


# ba3d6dcb 03-Jul-2007 nipkow <none@none>

Fixed problem with patterns in lambdas


# 0bdefc78 02-Jul-2007 nipkow <none@none>

Added pattern maatching for lambda abstraction


# 282fc2bd 14-Jun-2007 wenzelm <none@none>

tuned proofs: avoid implicit prems;


# a140f07e 08-May-2007 haftmann <none@none>

moved recfun_codegen.ML to Code_Generator.thy


# b62fe892 06-May-2007 wenzelm <none@none>

simplified DataFun interfaces;


# 0dd1a8c4 24-Apr-2007 berghofe <none@none>

Added datatype_case.


# b4a3a21c 31-Jan-2007 haftmann <none@none>

dropped lemma duplicates in HOL.thy


# ddf2cb8a 13-Oct-2006 berghofe <none@none>

Added new package for inductive definitions, moved old package
to old_inductive_package.ML


# 25382fa5 19-Sep-2006 haftmann <none@none>

added auxiliary lemma for code generation 2


# f6398a4b 09-May-2006 haftmann <none@none>

added DatatypeHooks


# d01a7f2d 21-Dec-2005 wenzelm <none@none>

updated auxiliary facts for induct method;


# 0e708e3f 03-Aug-2005 avigad <none@none>

import FixedPoint instead of Gfp


# a7060872 17-Jun-2005 haftmann <none@none>

migrated theory headers to new format


# 0fe1d442 18-Aug-2004 nipkow <none@none>

import -> imports


# e61c8d7d 16-Aug-2004 nipkow <none@none>

New theory header syntax.


# 33b1b845 21-Jun-2004 kleing <none@none>

Merged in license change from Isabelle2004


# b6672a21 13-Nov-2002 berghofe <none@none>

Added InductiveRealizer package.


# 5c5d649f 07-Aug-2002 berghofe <none@none>

Added file Tools/datatype_realizer.ML


# 981c682a 21-Feb-2002 wenzelm <none@none>

include theory Record (tuned dependencies);


# ad4a33e0 10-Dec-2001 berghofe <none@none>

Moved code generator setup from Recdef to Inductive.


# 9868f857 02-Nov-2001 wenzelm <none@none>

tuned;


# 498028e8 30-Oct-2001 wenzelm <none@none>

use induct_rulify2;


# 6bc1a325 18-Oct-2001 wenzelm <none@none>

moved InductMethod.setup to theory HOL;


# 37eefee2 04-Oct-2001 wenzelm <none@none>

generic induct_method.ML;
tuned;


# 5d3cf535 22-Jul-2001 wenzelm <none@none>

tuned;


# 896d5a0b 20-Jul-2001 wenzelm <none@none>

private "myinv" (uses "The" instead of "Eps");


# a9bb4379 22-May-2001 berghofe <none@none>

Inductive definitions are now introduced earlier in the theory hierarchy.


# 571b3b07 30-Jan-2001 oheimb <none@none>

added if_def2


# c9fb4c35 22-Dec-2000 wenzelm <none@none>

added inductive_conj;


# bd26cb72 10-Nov-2000 wenzelm <none@none>

simplified atomize;
added inductive_rulify2 (to accomodate malformed induction rules);


# 393f6238 06-Nov-2000 wenzelm <none@none>

inductive_atomize, inductive_rulify;


# a556a2d9 23-Oct-2000 wenzelm <none@none>

declare trancl rules;


# bc286955 12-Oct-2000 nipkow <none@none>

*** empty log message ***


# 4f0e73d0 15-Mar-2000 berghofe <none@none>

Added setup for primrec theory data.


# 619a14e5 04-Mar-2000 wenzelm <none@none>

require NatDef;


# a95a0c59 27-Feb-2000 wenzelm <none@none>

early setup of induct_method;


# c58ba8ef 05-Oct-1999 berghofe <none@none>

Monotonicity rules for inductive definitions can now be added to a theory via
attribute "mono".


# 350aa60c 04-Oct-1999 wenzelm <none@none>

load / setup datatype package;


# 21fe8688 25-Aug-1999 wenzelm <none@none>

proper bootstrap of HOL theory and packages;


# 45fd50e3 16-Apr-1999 wenzelm <none@none>

'HOL/inductive' theory data;


# 8d8fa5e5 01-Jul-1998 wenzelm <none@none>

tuned Inductive.thy;


# a907175c 30-Jun-1998 berghofe <none@none>

Adapted to new inductive definition package.


# eb25dd2b 15-Jul-1996 paulson <none@none>

New dummy .thy files to document dependencies


# 665e0a36 25-Jul-1995 lcp <none@none>

Includes Sum.thy as a parent for mutual recursion


# 46f10ec6 02-Mar-1995 clasohm <none@none>

new version of HOL with curried function application