aboutsummaryrefslogtreecommitdiffhomepage
path: root/interp
diff options
context:
space:
mode:
authorGravatar msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7>2006-12-23 18:11:18 +0000
committerGravatar msozeau <msozeau@85f007b7-540e-0410-9357-904b9bb8a0f7>2006-12-23 18:11:18 +0000
commit03eaad01a90813c8656b0306888644106939f537 (patch)
tree45304597a0a7c0dad50366adb4b90e932610ad67 /interp
parent1f578ef558355e48db8ae15e6ccad1a2f5d089f9 (diff)
Addition of a "Combined Scheme" vernacular command for building the conjunction of mutual inductions principles.
e.g: Combined Scheme mutind from tree_ind, forest_ind gives a conclusion (forall t : tree, P t) /\ (forall f : forest, P0 f). git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@9461 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'interp')
-rw-r--r--interp/coqlib.ml2
-rw-r--r--interp/coqlib.mli1
2 files changed, 3 insertions, 0 deletions
diff --git a/interp/coqlib.ml b/interp/coqlib.ml
index cfde10202..5952d3503 100644
--- a/interp/coqlib.ml
+++ b/interp/coqlib.ml
@@ -236,6 +236,7 @@ let coq_I = lazy_init_constant ["Logic"] "I"
(* Connectives *)
let coq_not = lazy_init_constant ["Logic"] "not"
let coq_and = lazy_init_constant ["Logic"] "and"
+let coq_conj = lazy_init_constant ["Logic"] "conj"
let coq_or = lazy_init_constant ["Logic"] "or"
let coq_ex = lazy_init_constant ["Logic"] "ex"
@@ -246,6 +247,7 @@ let build_coq_I () = Lazy.force coq_I
let build_coq_False () = Lazy.force coq_False
let build_coq_not () = Lazy.force coq_not
let build_coq_and () = Lazy.force coq_and
+let build_coq_conj () = Lazy.force coq_conj
let build_coq_or () = Lazy.force coq_or
let build_coq_ex () = Lazy.force coq_ex
diff --git a/interp/coqlib.mli b/interp/coqlib.mli
index 098dad1d5..0a37eefbd 100644
--- a/interp/coqlib.mli
+++ b/interp/coqlib.mli
@@ -129,6 +129,7 @@ val build_coq_not : constr delayed
(* Conjunction *)
val build_coq_and : constr delayed
+val build_coq_conj : constr delayed
(* Disjunction *)
val build_coq_or : constr delayed