removed obsolete delta stuff;
authorwenzelm
Wed, 13 Jul 2005 16:07:27 +0200
changeset 16806 916387f7afd2
parent 16805 fadf80952202
child 16807 730cace0ae48
removed obsolete delta stuff;
src/Provers/classical.ML
src/Pure/simplifier.ML
--- a/src/Provers/classical.ML	Wed Jul 13 16:07:26 2005 +0200
+++ b/src/Provers/classical.ML	Wed Jul 13 16:07:27 2005 +0200
@@ -14,13 +14,6 @@
 the conclusion.
 *)
 
-
-(*added: get_delta_claset, put_delta_claset.
-        changed: safe_{dest,elim,intro}_local and haz_{dest,elim,intro}_local
-   06/01/05
-*)
-
-
 (*higher precedence than := facilitates use of references*)
 infix 4 addSIs addSEs addSDs addIs addEs addDs delrules
   addSWrapper delSWrapper addWrapper delWrapper
@@ -171,10 +164,6 @@
   val cla_method: (claset -> tactic) -> Method.src -> Proof.context -> Proof.method
   val cla_method': (claset -> int -> tactic) -> Method.src -> Proof.context -> Proof.method
   val setup: (theory -> theory) list
-
-  val get_delta_claset: ProofContext.context -> claset
-  val put_delta_claset: claset -> ProofContext.context -> ProofContext.context
-
 end;
 
 
@@ -899,41 +888,6 @@
 fun local_claset_of ctxt =
   context_cs ctxt (get_local_claset ctxt) (get_context_cs ctxt);
 
-(* added for delta_claset: 06/01/05 *)
-(* CB: changed "delta clasets" to context data,
-       moved counter to here, it is no longer a ref *)
-
-structure DeltaClasetArgs =
-struct
-  val name = "Provers/delta_claset";
-  type T = claset * int;
-  fun init _ = (empty_cs, 0)
-  fun print ctxt cs = ();
-end;
-
-structure DeltaClasetData = ProofDataFun(DeltaClasetArgs);
-val get_delta_claset = #1 o DeltaClasetData.get;
-fun put_delta_claset cs = DeltaClasetData.map (fn (_, i) => (cs, i));
-fun delta_increment ctxt =
-  let val ctxt' = DeltaClasetData.map (fn (ss, i) => (ss, i+1)) ctxt
-  in (ctxt', #2 (DeltaClasetData.get ctxt'))
-  end;
-
-local
-fun rename_thm' (ctxt,thm) =
-  let val (new_ctxt, new_id) = delta_increment ctxt
-      val new_name = "anon_cla_" ^ (string_of_int new_id)
-  in
-    (new_ctxt, Thm.name_thm(new_name,thm))
-end;
-
-in
-
-(* rename thm if call_atp is true *)
-fun rename_thm (ctxt,thm) = if (!Proof.call_atp) then rename_thm' (ctxt,thm) else (ctxt, thm);
-
-end
-
 
 (* attributes *)
 
@@ -953,70 +907,12 @@
 val haz_intro_global = change_global_cs (op addIs);
 val rule_del_global = change_global_cs (op delrules) o ContextRules.rule_del_global;
 
-
-(* when dest/elim/intro rules are added to local_claset, they are also added to delta_claset in ProofContext.context *)
-fun safe_dest_local (ctxt,th) =
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th)  else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addSDs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addSDs) (ctxt'',th)
-    end;
-
-fun safe_elim_local (ctxt, th)=
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th) else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addSEs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addSEs) (ctxt'',th)
-    end;
-
-fun safe_intro_local (ctxt, th) =
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th) else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addSIs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addSIs) (ctxt'',th)
-    end;
-
-fun haz_dest_local (ctxt, th)=
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th)else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addDs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addDs) (ctxt'',th)
-    end;
-
-fun haz_elim_local (ctxt,th) =
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th)  else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addEs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addEs) (ctxt'',th)
-    end;
-
-fun haz_intro_local (ctxt,th) =
-    let val thm_name = Thm.name_of_thm th
-        val (ctxt', th') = if (thm_name = "") then rename_thm (ctxt,th)  else (ctxt, th)
-        val delta_cs = get_delta_claset ctxt'
-        val new_dcs = delta_cs addIs [th']
-        val ctxt'' = put_delta_claset new_dcs ctxt'
-    in
-        change_local_cs (op addIs) (ctxt'',th)
-    end;
-
-
-(* when a rule is removed from local_claset, it is not removed from delta_claset in ProofContext.context.  But this is unlikely to happen. *)
+val safe_dest_local = change_local_cs (op addSDs);
+val safe_elim_local = change_local_cs (op addSEs);
+val safe_intro_local = change_local_cs (op addSIs);
+val haz_dest_local = change_local_cs (op addDs);
+val haz_elim_local = change_local_cs (op addEs);
+val haz_intro_local = change_local_cs (op addIs);
 val rule_del_local = change_local_cs (op delrules) o ContextRules.rule_del_local;
 
 
@@ -1158,8 +1054,7 @@
 
 (** theory setup **)
 
-val setup = [GlobalClaset.init, LocalClaset.init, DeltaClasetData.init,
-  setup_attrs, setup_methods];
+val setup = [GlobalClaset.init, LocalClaset.init, setup_attrs, setup_methods];
 
 
 
@@ -1175,4 +1070,3 @@
 
 
 end;
-
--- a/src/Pure/simplifier.ML	Wed Jul 13 16:07:26 2005 +0200
+++ b/src/Pure/simplifier.ML	Wed Jul 13 16:07:27 2005 +0200
@@ -6,12 +6,6 @@
 meta_simplifier.ML for the actual meta-level rewriting engine).
 *)
 
-(* added: put_delta_simpset, get_delta_simpset
-   changed: simp_add_local
-   07/01/05
-*)
-
-
 signature BASIC_SIMPLIFIER =
 sig
   include BASIC_META_SIMPLIFIER
@@ -98,9 +92,6 @@
   val method_setup: (Args.T list -> (Method.modifier * Args.T list)) list
     -> (theory -> theory) list
   val easy_setup: thm -> thm list -> (theory -> theory) list
-
-  val get_delta_simpset: ProofContext.context -> Thm.thm list
-  val put_delta_simpset: Thm.thm list -> ProofContext.context -> ProofContext.context
 end;
 
 structure Simplifier: SIMPLIFIER =
@@ -134,7 +125,7 @@
   mk_context_simproc name o map (Thm.cterm_of thy o Logic.varify);
 
 fun context_simproc thy name =
-  context_simproc_i thy name o map (Sign.simple_read_term thy TypeInfer.logicT);
+  context_simproc_i thy name o map (Sign.read_term thy);
 
 
 (* datatype context_ss *)
@@ -303,44 +294,6 @@
   context_ss ctxt (get_local_simpset ctxt) (get_context_ss ctxt);
 
 
-(* Jia: added DeltaSimpsetArgs and DeltaSimpset for delta_simpset
-	also added methods to retrieve them. *)
-(* CB: changed "delta simpsets" to context data,
-       moved counter to here, it is no longer a ref *)
-
-structure DeltaSimpsetArgs =
-struct
-  val name = "Pure/delta_simpset";
-  type T = Thm.thm list * int;  (*the type is thm list * int*)
-  fun init _ = ([], 0);
-  fun print ctxt thms = ();
-end;
-
-structure DeltaSimpsetData = ProofDataFun(DeltaSimpsetArgs);
-val _ = Context.add_setup [DeltaSimpsetData.init];
-
-val get_delta_simpset = #1 o DeltaSimpsetData.get;
-fun put_delta_simpset ss = DeltaSimpsetData.map (fn (_, i) => (ss, i));
-fun delta_increment ctxt =
-  let val ctxt' = DeltaSimpsetData.map (fn (ss, i) => (ss, i+1)) ctxt
-  in (ctxt', #2 (DeltaSimpsetData.get ctxt'))
-  end;
-
-(* Jia: added to rename a local thm if necessary *) 
-local 
-fun rename_thm' (ctxt,thm) =
-  let val (new_ctxt, new_id) = delta_increment ctxt
-      val new_name = "anon_simp_" ^ (string_of_int new_id)
-  in
-    (new_ctxt, Thm.name_thm(new_name,thm))
-end;
-
-in
-
-fun rename_thm (ctxt,thm) = if (!Proof.call_atp) then rename_thm' (ctxt,thm) else (ctxt, thm);
-
-end
-
 (* attributes *)
 
 fun change_global_ss f (thy, th) =
@@ -353,23 +306,7 @@
 
 val simp_add_global = change_global_ss (op addsimps);
 val simp_del_global = change_global_ss (op delsimps);
-
-
-
-
-
-(* Jia: note: when simplifier rules are added to local_simpset, they are also added to delta_simpset in ProofContext.context, but not removed if simp_del_local is called *)
-fun simp_add_local (ctxt,th) = 
-    let val delta_ss = get_delta_simpset ctxt
-	val thm_name = Thm.name_of_thm th
-        val (ctxt', th') =
-          if (thm_name = "") then rename_thm (ctxt,th)  else (ctxt, th)
-	val new_dss = th'::delta_ss
-	val ctxt'' = put_delta_simpset new_dss ctxt' 
-    in
-	change_local_ss (op addsimps) (ctxt'',th)
-    end;
-
+val simp_add_local = change_local_ss (op addsimps);
 val simp_del_local = change_local_ss (op delsimps);
 
 val cong_add_global = change_global_ss (op addcongs);
@@ -378,6 +315,8 @@
 val cong_del_local = change_local_ss (op delcongs);
 
 
+(* tactics *)
+
 val simp_tac = generic_simp_tac false (false, false, false);
 val asm_simp_tac = generic_simp_tac false (false, true, false);
 val full_simp_tac = generic_simp_tac false (true, false, false);
@@ -385,8 +324,6 @@
 val asm_full_simp_tac = generic_simp_tac false (true, true, true);
 val safe_asm_full_simp_tac = generic_simp_tac true (true, true, true);
 
-
-
 (*the abstraction over the proof state delays the dereferencing*)
 fun          Simp_tac i st =          simp_tac (simpset ()) i st;
 fun      Asm_simp_tac i st =      asm_simp_tac (simpset ()) i st;
@@ -394,6 +331,9 @@
 fun   Asm_lr_simp_tac i st =   asm_lr_simp_tac (simpset ()) i st;
 fun Asm_full_simp_tac i st = asm_full_simp_tac (simpset ()) i st;
 
+
+(* conversions *)
+
 val          simplify = simp_thm (false, false, false);
 val      asm_simplify = simp_thm (false, true, false);
 val     full_simplify = simp_thm (true, false, false);