diff options
| author | herbelin | 2001-11-20 23:04:25 +0000 |
|---|---|---|
| committer | herbelin | 2001-11-20 23:04:25 +0000 |
| commit | 109414970c8ce6a7f7fdb9d9819ef39a8095cf2e (patch) | |
| tree | 489824920c82ffbef3803699e0e12aeada51598d /kernel/sign.ml | |
| parent | d9e83b3701f9c90542810feb212aea3a6aa0f141 (diff) | |
Ajout mkArity
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2218 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'kernel/sign.ml')
| -rw-r--r-- | kernel/sign.ml | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/sign.ml b/kernel/sign.ml index 05038840d7..83474f1227 100644 --- a/kernel/sign.ml +++ b/kernel/sign.ml @@ -104,8 +104,9 @@ let it_mkLambda_or_LetIn = List.fold_left (fun c d -> mkLambda_or_LetIn d c) type arity = rel_context * sorts -(* Transforms a product term (x1:T1)..(xn:Tn)T into the pair - ([(xn,Tn);...;(x1,T1)],T), where T is not a product *) +(* Decompose an arity (i.e. a product of the form (x1:T1)..(xn:Tn)s + with s a sort) into the pair ([(xn,Tn);...;(x1,T1)],s) *) + let destArity = let rec prodec_rec l c = match kind_of_term c with @@ -117,6 +118,8 @@ let destArity = in prodec_rec [] +let mkArity (sign,s) = it_mkProd_or_LetIn (mkSort s) sign + let rec isArity c = match kind_of_term c with | Prod (_,_,c) -> isArity c |
