diff options
author | 2007-09-25 13:13:41 +0000 | |
---|---|---|
committer | 2007-09-25 13:13:41 +0000 | |
commit | d0ca084ce6e466c68e3c6288cd7da67411154d6e (patch) | |
tree | 82ff8341137c34e29acdd47c16a6a301a45b0940 /theories/Numbers/Natural/Abstract/NAxioms.v | |
parent | 0a484fe153ec9d11315fc58c221df488b1620117 (diff) |
An update on theories/Numbers.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@10142 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'theories/Numbers/Natural/Abstract/NAxioms.v')
-rw-r--r-- | theories/Numbers/Natural/Abstract/NAxioms.v | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/theories/Numbers/Natural/Abstract/NAxioms.v b/theories/Numbers/Natural/Abstract/NAxioms.v new file mode 100644 index 000000000..a30c81682 --- /dev/null +++ b/theories/Numbers/Natural/Abstract/NAxioms.v @@ -0,0 +1,39 @@ +Require Export NumPrelude. +Require Export NZAxioms. + +Set Implicit Arguments. + +Module Type NAxiomsSig. +Declare Module Export NZOrdAxiomsMod : NZOrdAxiomsSig. +Open Local Scope NatIntScope. + +Notation N := NZ (only parsing). +Notation E := NZE (only parsing). + +Parameter Inline recursion : forall A : Set, A -> (N -> A -> A) -> N -> A. +Implicit Arguments recursion [A]. + +Axiom pred_0 : P 0 == 0. + +Axiom recursion_wd : forall (A : Set) (EA : relation A), + forall a a' : A, EA a a' -> + forall f f' : N -> A -> A, eq_fun2 E EA EA f f' -> + forall x x' : N, x == x' -> + EA (recursion a f x) (recursion a' f' x'). + +Axiom recursion_0 : + forall (A : Set) (a : A) (f : N -> A -> A), recursion a f 0 = a. + +Axiom recursion_succ : + forall (A : Set) (EA : relation A) (a : A) (f : N -> A -> A), + EA a a -> fun2_wd E EA EA f -> + forall n : N, EA (recursion a f (S n)) (f n (recursion a f n)). + +End NAxiomsSig. + + +(* + Local Variables: + tags-file-name: "~/coq/trunk/theories/Numbers/TAGS" + End: +*) |