aboutsummaryrefslogtreecommitdiff
path: root/proofs/proof.ml
diff options
context:
space:
mode:
authorJim Fehrle2018-08-08 18:45:47 -0700
committerJim Fehrle2018-09-17 10:33:27 -0700
commita828bcedb8ad60c5b1f4cf71f92f24f2c1197ecb (patch)
tree372fd5a8c6f880db4f246ea5b6f498a7393bc737 /proofs/proof.ml
parentf1482433ff225831d9937753f946cff2577b9309 (diff)
Ensure_prev_proof returns a proof that has underlying differences from
the specified version (i.e., skip over versions with proofview-only differences).
Diffstat (limited to 'proofs/proof.ml')
-rw-r--r--proofs/proof.ml9
1 files changed, 9 insertions, 0 deletions
diff --git a/proofs/proof.ml b/proofs/proof.ml
index 0d355890c5..8bbd82bb0a 100644
--- a/proofs/proof.ml
+++ b/proofs/proof.ml
@@ -488,3 +488,12 @@ module V82 = struct
{ pr with proofview ; shelf }
end
+
+let all_goals p =
+ let add gs set =
+ List.fold_left (fun s g -> Goal.Set.add g s) set gs in
+ let (goals,stack,shelf,given_up,_) = proof p in
+ let set = add goals Goal.Set.empty in
+ let set = List.fold_left (fun s gs -> let (g1, g2) = gs in add g1 (add g2 set)) set stack in
+ let set = add shelf set in
+ add given_up set