From 6274447373e7dc69234da3415f8d9c4d4b67ced2 Mon Sep 17 00:00:00 2001 From: barras Date: Mon, 4 Mar 2002 13:29:45 +0000 Subject: Nouveau Rewrite-in plus economique git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@2507 85f007b7-540e-0410-9357-904b9bb8a0f7 --- kernel/inductive.mli | 3 --- kernel/term.ml | 21 +++++++++------------ kernel/term.mli | 3 --- 3 files changed, 9 insertions(+), 18 deletions(-) (limited to 'kernel') diff --git a/kernel/inductive.mli b/kernel/inductive.mli index 719205331c..79900a84ef 100644 --- a/kernel/inductive.mli +++ b/kernel/inductive.mli @@ -43,9 +43,6 @@ val type_of_constructor : env -> constructor -> types (* Return constructor types in normal form *) val arities_of_constructors : env -> inductive -> types array - -exception Arity of (constr * constr * Type_errors.arity_error) option - (* [type_case_branches env (I,args) (p:A) c] computes useful types about the following Cases expression:
Cases (c :: (I args)) of b1..bn end
diff --git a/kernel/term.ml b/kernel/term.ml
index 16524ea469..62f21de5fc 100644
--- a/kernel/term.ml
+++ b/kernel/term.ml
@@ -644,15 +644,14 @@ let map_rel_declaration = map_named_declaration
(* Occurring *)
(*********************)
-exception FreeVar
-exception Occur
+exception LocalOccur
(* (closedn n M) raises FreeVar if a variable of height greater than n
occurs in M, returns () otherwise *)
let closedn =
let rec closed_rec n c = match kind_of_term c with
- | Rel m -> if m>n then raise FreeVar
+ | Rel m -> if m>n then raise LocalOccur
| _ -> iter_constr_with_binders succ closed_rec n c
in
closed_rec
@@ -660,26 +659,26 @@ let closedn =
(* [closed0 M] is true iff [M] is a (deBruijn) closed term *)
let closed0 term =
- try closedn 0 term; true with FreeVar -> false
+ try closedn 0 term; true with LocalOccur -> false
(* (noccurn n M) returns true iff (Rel n) does NOT occur in term M *)
let noccurn n term =
let rec occur_rec n c = match kind_of_term c with
- | Rel m -> if m = n then raise Occur
+ | Rel m -> if m = n then raise LocalOccur
| _ -> iter_constr_with_binders succ occur_rec n c
in
- try occur_rec n term; true with Occur -> false
+ try occur_rec n term; true with LocalOccur -> false
(* (noccur_between n m M) returns true iff (Rel p) does NOT occur in term M
for n <= p < n+m *)
let noccur_between n m term =
let rec occur_rec n c = match kind_of_term c with
- | Rel(p) -> if n<=p && p