diff options
author | ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2013-08-25 22:33:56 +0000 |
---|---|---|
committer | ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7> | 2013-08-25 22:33:56 +0000 |
commit | 646c6765e5e3307f8898c4f63c405d91c2e6f47b (patch) | |
tree | 1055377213a63b0bbbba1ca55fddf96b22f3c218 /proofs | |
parent | 89b1cff6e2e4f8095f3407c19d6692f2c0477e12 (diff) |
Replacing lists by sets in clear tactic.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16734 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'proofs')
-rw-r--r-- | proofs/goal.mli | 2 | ||||
-rw-r--r-- | proofs/logic.ml | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/proofs/goal.mli b/proofs/goal.mli index 345f46abf..267d26493 100644 --- a/proofs/goal.mli +++ b/proofs/goal.mli @@ -103,7 +103,7 @@ val refine : refinable -> subgoals sensitive (*** Cleaning goals ***) (* Implements the [clear] tactic *) -val clear : Names.Id.t list -> subgoals sensitive +val clear : Names.Id.Set.t -> subgoals sensitive (* Implements the [clearbody] tactic *) val clear_body : Names.Id.t list -> subgoals sensitive diff --git a/proofs/logic.ml b/proofs/logic.ml index 68031e2b5..84bbd9751 100644 --- a/proofs/logic.ml +++ b/proofs/logic.ml @@ -529,7 +529,7 @@ let prim_refiner r sigma goal = let sign,cl,sigma = if replace then let nexthyp = get_hyp_after id (named_context_of_val sign) in - let sign,cl,sigma = clear_hyps sigma [id] sign cl in + let sign,cl,sigma = clear_hyps sigma (Id.Set.singleton id) sign cl in move_hyp true false ([],(id,None,t),named_context_of_val sign) nexthyp, cl,sigma @@ -654,6 +654,7 @@ let prim_refiner r sigma goal = (* And now the structural rules *) | Thin ids -> + let ids = List.fold_left (fun accu x -> Id.Set.add x accu) Id.Set.empty ids in let (hyps,concl,nsigma) = clear_hyps sigma ids sign cl in let (gl,ev,sigma) = Goal.V82.mk_goal nsigma hyps concl (Goal.V82.extra nsigma goal) |