fact: Fixpoint nat_rect (f:nat->Type)(exp1:f 0) (exp2:forall p:nat, f p -> f (S p))(n:nat){struct n} : f n := match n as x return f x with | O => exp1 | S p => exp2 p (nat_rect f exp1 exp2 p) end.
imports: ZArith List Arith Zwf Relations Inverse_Image