replaced Proof.get_goal state by Proof.flat_goal state, which provides the standard view on goals for (semi)automated tools;
authorwenzelm
Fri, 02 Oct 2009 22:02:11 +0200
changeset 32859 204f749f35a9
parent 32858 51fda1c8fa2d
child 32860 a4ab5d0cccd1
replaced Proof.get_goal state by Proof.flat_goal state, which provides the standard view on goals for (semi)automated tools;
src/Pure/Isar/isar_cmd.ML
src/Pure/Tools/find_theorems.ML
src/Tools/quickcheck.ML
--- a/src/Pure/Isar/isar_cmd.ML	Fri Oct 02 21:42:31 2009 +0200
+++ b/src/Pure/Isar/isar_cmd.ML	Fri Oct 02 22:02:11 2009 +0200
@@ -450,14 +450,15 @@
   Pretty.string_of (Display.pretty_thms (Proof.context_of state) (Proof.get_thmss state args));
 
 fun string_of_prfs full state arg =
-  Pretty.string_of (case arg of
+  Pretty.string_of
+    (case arg of
       NONE =>
         let
-          val (ctxt, (_, thm)) = Proof.get_goal state;
+          val (ctxt, thm) = Proof.flat_goal state;
           val thy = ProofContext.theory_of ctxt;
           val prf = Thm.proof_of thm;
           val prop = Thm.full_prop_of thm;
-          val prf' = Proofterm.rewrite_proof_notypes ([], []) prf
+          val prf' = Proofterm.rewrite_proof_notypes ([], []) prf;
         in
           ProofSyntax.pretty_proof ctxt
             (if full then Reconstruct.reconstruct_proof thy prop prf' else prf')
--- a/src/Pure/Tools/find_theorems.ML	Fri Oct 02 21:42:31 2009 +0200
+++ b/src/Pure/Tools/find_theorems.ML	Fri Oct 02 22:02:11 2009 +0200
@@ -434,7 +434,7 @@
     let
       val proof_state = Toplevel.enter_proof_body state;
       val ctxt = Proof.context_of proof_state;
-      val opt_goal = try Proof.get_goal proof_state |> Option.map (#2 o #2);
+      val opt_goal = try Proof.flat_goal proof_state |> Option.map #2;
     in print_theorems ctxt opt_goal opt_lim rem_dups spec end);
 
 local
--- a/src/Tools/quickcheck.ML	Fri Oct 02 21:42:31 2009 +0200
+++ b/src/Tools/quickcheck.ML	Fri Oct 02 22:02:11 2009 +0200
@@ -143,7 +143,7 @@
     val thy = Proof.theory_of state;
     fun strip (Const ("all", _) $ Abs (_, _, t)) = strip t
       | strip t = t;
-    val (_, (_, st)) = Proof.get_goal state;
+    val (_, st) = Proof.flat_goal state;
     val (gi, frees) = Logic.goal_params (prop_of st) i;
     val gi' = Logic.list_implies (assms, subst_bounds (frees, strip gi))
       |> monomorphic_term thy insts default_T