aboutsummaryrefslogtreecommitdiff
path: root/tactics/elimschemes.ml
diff options
context:
space:
mode:
authorGaëtan Gilbert2017-10-31 17:04:02 +0100
committerGaëtan Gilbert2019-03-14 13:27:38 +0100
commit23f84f37c674a07e925925b7e0d50d7ee8414093 (patch)
tree7e470de5769c994d8df37c44fed12cf299d5b194 /tactics/elimschemes.ml
parent75508769762372043387c67a9abe94e8f940e80a (diff)
Add relevance marks on binders.
Kernel should be mostly correct, higher levels do random stuff at times.
Diffstat (limited to 'tactics/elimschemes.ml')
-rw-r--r--tactics/elimschemes.ml13
1 files changed, 13 insertions, 0 deletions
diff --git a/tactics/elimschemes.ml b/tactics/elimschemes.ml
index 3b69d9922d..1fae4c3d9d 100644
--- a/tactics/elimschemes.ml
+++ b/tactics/elimschemes.ml
@@ -88,14 +88,27 @@ let ind_scheme_kind_from_type =
declare_individual_scheme_object "_ind_nodep"
(optimize_non_type_induction_scheme rec_scheme_kind_from_type false InProp)
+let sind_scheme_kind_from_type =
+ declare_individual_scheme_object "_sind_nodep"
+ (fun _ x -> build_induction_scheme_in_type false InSProp x, Safe_typing.empty_private_constants)
+
let ind_dep_scheme_kind_from_type =
declare_individual_scheme_object "_ind" ~aux:"_ind_from_type"
(optimize_non_type_induction_scheme rec_dep_scheme_kind_from_type true InProp)
+let sind_dep_scheme_kind_from_type =
+ declare_individual_scheme_object "_sind" ~aux:"_sind_from_type"
+ (fun _ x -> build_induction_scheme_in_type true InSProp x, Safe_typing.empty_private_constants)
+
let ind_scheme_kind_from_prop =
declare_individual_scheme_object "_ind" ~aux:"_ind_from_prop"
(optimize_non_type_induction_scheme rec_scheme_kind_from_prop false InProp)
+let sind_scheme_kind_from_prop =
+ declare_individual_scheme_object "_sind" ~aux:"_sind_from_prop"
+ (fun _ x -> build_induction_scheme_in_type false InSProp x, Safe_typing.empty_private_constants)
+
+
(* Case analysis *)
let build_case_analysis_scheme_in_type dep sort ind =