diff options
| author | Pierre-Marie Pédrot | 2018-04-10 18:24:45 +0200 |
|---|---|---|
| committer | Pierre-Marie Pédrot | 2018-04-10 19:15:42 +0200 |
| commit | 7913b03ba5072efeb9f6ef009ce27cec8ff19cac (patch) | |
| tree | bd6b9cdf466c6a4c7973b2209d0c292e05bd854d /tactics | |
| parent | 834530272b9006e28a4b7ba35b1f8f861f51e7ce (diff) | |
Replace uses of Termops.dependent by more specific functions.
This is more efficient in general, because Termops.dependent doesn't take
advantage of the knowledge of its pattern argument.
Diffstat (limited to 'tactics')
| -rw-r--r-- | tactics/equality.ml | 4 | ||||
| -rw-r--r-- | tactics/inv.ml | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/tactics/equality.ml b/tactics/equality.ml index 98f627f211..75b76695cc 100644 --- a/tactics/equality.ml +++ b/tactics/equality.ml @@ -1800,9 +1800,9 @@ let subst_all ?(flags=default_subst_tactic_flags) () = (* J.F.: added to prevent failure on goal containing x=x as an hyp *) if EConstr.eq_constr sigma x y then Proofview.tclUNIT () else match EConstr.kind sigma x, EConstr.kind sigma y with - | Var x', _ when not (dependent sigma x y) && not (is_evaluable env (EvalVarRef x')) -> + | Var x', _ when not (Termops.local_occur_var sigma x' y) && not (is_evaluable env (EvalVarRef x')) -> subst_one flags.rewrite_dependent_proof x' (hyp,y,true) - | _, Var y' when not (dependent sigma y x) && not (is_evaluable env (EvalVarRef y')) -> + | _, Var y' when not (Termops.local_occur_var sigma y' x) && not (is_evaluable env (EvalVarRef y')) -> subst_one flags.rewrite_dependent_proof y' (hyp,x,false) | _ -> Proofview.tclUNIT () diff --git a/tactics/inv.ml b/tactics/inv.ml index d76c9a6977..590098bdc0 100644 --- a/tactics/inv.ml +++ b/tactics/inv.ml @@ -470,7 +470,7 @@ let raw_inversion inv_kind id status names = make_inv_predicate env evdref indf realargs id status concl in let sigma = !evdref in let (cut_concl,case_tac) = - if status != NoDep && (dependent sigma c concl) then + if status != NoDep && (local_occur_var sigma id concl) then Reductionops.beta_applist sigma (elim_predicate, realargs@[c]), case_then_using else |
