aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/coercion.ml
diff options
context:
space:
mode:
authorGravatar ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-04-29 16:02:05 +0000
committerGravatar ppedrot <ppedrot@85f007b7-540e-0410-9357-904b9bb8a0f7>2013-04-29 16:02:05 +0000
commit4490dfcb94057dd6518963a904565e3a4a354bac (patch)
treec35cdb94182d5c6e9197ee131d9fe2ebf5a7d139 /pretyping/coercion.ml
parenta188216d8570144524c031703860b63f0a53b56e (diff)
Splitting Term into five unrelated interfaces:
1. sorts.ml: A small file utility for sorts; 2. constr.ml: Really low-level terms, essentially kind_of_constr, smart constructor and basic operators; 3. vars.ml: Everything related to term variables, that is, occurences and substitution; 4. context.ml: Rel/Named context and all that; 5. term.ml: derived utility operations on terms; also includes constr.ml up to some renaming, and acts as a compatibility layer, to be deprecated. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@16462 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/coercion.ml')
-rw-r--r--pretyping/coercion.ml9
1 files changed, 5 insertions, 4 deletions
diff --git a/pretyping/coercion.ml b/pretyping/coercion.ml
index 7d2ad487c..e97e45580 100644
--- a/pretyping/coercion.ml
+++ b/pretyping/coercion.ml
@@ -18,6 +18,7 @@ open Errors
open Util
open Names
open Term
+open Vars
open Reductionops
open Environ
open Typeops
@@ -80,7 +81,7 @@ let disc_subset x =
Ind i ->
let len = Array.length l in
let sigty = delayed_force sig_typ in
- if Int.equal len 2 && eq_ind i (Term.destInd sigty)
+ if Int.equal len 2 && eq_ind i (destInd sigty)
then
let (a, b) = pair_of_array l in
Some (a, b)
@@ -190,7 +191,7 @@ and coerce loc env isevars (x : Term.constr) (y : Term.constr)
(fun f ->
mkLambda (name', a',
app_opt env' isevars c2
- (mkApp (Term.lift 1 f, [| coec1 |])))))
+ (mkApp (lift 1 f, [| coec1 |])))))
| App (c, l), App (c', l') ->
(match kind_of_term c, kind_of_term c' with
@@ -200,9 +201,9 @@ and coerce loc env isevars (x : Term.constr) (y : Term.constr)
let prod = delayed_force prod_typ in
(* Sigma types *)
if Int.equal len (Array.length l') && Int.equal len 2 && eq_ind i i'
- && (eq_ind i (Term.destInd sigT) || eq_ind i (Term.destInd prod))
+ && (eq_ind i (destInd sigT) || eq_ind i (destInd prod))
then
- if eq_ind i (Term.destInd sigT)
+ if eq_ind i (destInd sigT)
then
begin
let (a, pb), (a', pb') =