diff options
author | 2013-04-29 16:02:05 +0000 | |
---|---|---|
committer | 2013-04-29 16:02:05 +0000 | |
commit | 4490dfcb94057dd6518963a904565e3a4a354bac (patch) | |
tree | c35cdb94182d5c6e9197ee131d9fe2ebf5a7d139 /pretyping/coercion.ml | |
parent | a188216d8570144524c031703860b63f0a53b56e (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.ml | 9 |
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') = |