aboutsummaryrefslogtreecommitdiffhomepage
path: root/tactics
diff options
context:
space:
mode:
authorGravatar mohring <mohring@85f007b7-540e-0410-9357-904b9bb8a0f7>2002-03-26 16:29:59 +0000
committerGravatar mohring <mohring@85f007b7-540e-0410-9357-904b9bb8a0f7>2002-03-26 16:29:59 +0000
commit3dd52dacc7846b85a11f83c398945c00bb65bad2 (patch)
tree4f5f004e7f617b1bfe8aab8f9eebb0508954da26 /tactics
parent3bd24bddb74d7a351cbfc8cba7a5e3735f478832 (diff)
Prise en compte des dependances dans la tactique Case
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2567 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'tactics')
-rw-r--r--tactics/tactics.ml4
1 files changed, 3 insertions, 1 deletions
diff --git a/tactics/tactics.ml b/tactics/tactics.ml
index a30025848..f8b628270 100644
--- a/tactics/tactics.ml
+++ b/tactics/tactics.ml
@@ -1638,7 +1638,9 @@ let general_case_analysis (c,lbindc) gl =
let (mind,_) = pf_reduce_to_quantified_ind gl (pf_type_of gl c) in
let sigma = project gl in
let sort = elimination_sort_of_goal gl in
- let elim = Indrec.make_case_gen env sigma mind sort in
+ let case = if occur_term c (pf_concl gl) then Indrec.make_case_dep
+ else Indrec.make_case_gen in
+ let elim = case env sigma mind sort in
general_elim (c,lbindc) (elim,[]) gl
let simplest_case c = general_case_analysis (c,[])