reverted 3e1d230f1c00 -- pervasiveness is useful, cf. Coinductive_Nat in the AFP
authorblanchet
Wed, 06 Nov 2013 23:05:44 +0100
changeset 54285 578371ba74cc
parent 54284 0b53378080d9
child 54286 22616f65d4ea
reverted 3e1d230f1c00 -- pervasiveness is useful, cf. Coinductive_Nat in the AFP
src/HOL/BNF/Tools/bnf_def.ML
src/HOL/BNF/Tools/bnf_fp_def_sugar.ML
src/HOL/BNF/Tools/ctr_sugar.ML
--- a/src/HOL/BNF/Tools/bnf_def.ML	Wed Nov 06 22:50:12 2013 +0100
+++ b/src/HOL/BNF/Tools/bnf_def.ML	Wed Nov 06 23:05:44 2013 +0100
@@ -1313,7 +1313,7 @@
   end;
 
 fun register_bnf key (bnf, lthy) =
-  (bnf, Local_Theory.declaration {syntax = false, pervasive = false}
+  (bnf, Local_Theory.declaration {syntax = false, pervasive = true}
     (fn phi => Data.map (Symtab.default (key, morph_bnf phi bnf))) lthy);
 
 fun bnf_def const_policy fact_policy qualify tacs wit_tac Ds map_b rel_b set_bs =
--- a/src/HOL/BNF/Tools/bnf_fp_def_sugar.ML	Wed Nov 06 22:50:12 2013 +0100
+++ b/src/HOL/BNF/Tools/bnf_fp_def_sugar.ML	Wed Nov 06 23:05:44 2013 +0100
@@ -179,7 +179,7 @@
 (* TODO: register "sum" and "prod" as datatypes to enable N2M reduction for them *)
 
 fun register_fp_sugar key fp_sugar =
-  Local_Theory.declaration {syntax = false, pervasive = false}
+  Local_Theory.declaration {syntax = false, pervasive = true}
     (fn phi => Data.map (Symtab.default (key, morph_fp_sugar phi fp_sugar)));
 
 fun register_fp_sugars fp pre_bnfs nested_bnfs nesting_bnfs (fp_res as {Ts, ...}) ctr_defss
--- a/src/HOL/BNF/Tools/ctr_sugar.ML	Wed Nov 06 22:50:12 2013 +0100
+++ b/src/HOL/BNF/Tools/ctr_sugar.ML	Wed Nov 06 23:05:44 2013 +0100
@@ -139,7 +139,7 @@
   Symtab.fold (cons o transfer_ctr_sugar ctxt o snd) (Data.get (Context.Proof ctxt)) [];
 
 fun register_ctr_sugar key ctr_sugar =
-  Local_Theory.declaration {syntax = false, pervasive = false}
+  Local_Theory.declaration {syntax = false, pervasive = true}
     (fn phi => Data.map (Symtab.default (key, morph_ctr_sugar phi ctr_sugar)));
 
 val rep_compat_prefix = "new";
@@ -918,7 +918,7 @@
         (ctr_sugar,
          lthy
          |> not rep_compat ?
-            (Local_Theory.declaration {syntax = false, pervasive = false}
+            (Local_Theory.declaration {syntax = false, pervasive = true}
                (fn phi => Case_Translation.register
                   (Morphism.term phi casex) (map (Morphism.term phi) ctrs)))
          |> Local_Theory.notes (anonymous_notes @ notes) |> snd