aboutsummaryrefslogtreecommitdiff
path: root/plugins/setoid_ring/Algebra_syntax.v
diff options
context:
space:
mode:
authorpottier2011-02-22 12:39:35 +0000
committerpottier2011-02-22 12:39:35 +0000
commit81dd7a1db170d7d10d8a378cfd0719c2ded3f7df (patch)
tree17a3f1dc38243f0eb19c4433c0bf993d00f70053 /plugins/setoid_ring/Algebra_syntax.v
parent5d9d019b1978f1a3ebb8429fcf23d8da9bf52212 (diff)
anneaux commutatifs ou non, reification sans ml
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@13848 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'plugins/setoid_ring/Algebra_syntax.v')
-rw-r--r--plugins/setoid_ring/Algebra_syntax.v18
1 files changed, 18 insertions, 0 deletions
diff --git a/plugins/setoid_ring/Algebra_syntax.v b/plugins/setoid_ring/Algebra_syntax.v
new file mode 100644
index 0000000000..79f5393dde
--- /dev/null
+++ b/plugins/setoid_ring/Algebra_syntax.v
@@ -0,0 +1,18 @@
+Class Zero (A : Type) := {zero : A}.
+Notation "0" := zero.
+Class One (A : Type) := {one : A}.
+Notation "1" := one.
+Class Addition (A : Type) := {addition : A -> A -> A}.
+Notation "x + y" := (addition x y).
+Class Multiplication {A B : Type} := {multiplication : A -> B -> B}.
+Notation "x * y" := (multiplication x y).
+Class Subtraction (A : Type) := {subtraction : A -> A -> A}.
+Notation "x - y" := (subtraction x y).
+Class Opposite (A : Type) := {opposite : A -> A}.
+Notation "- x" := (opposite x).
+Class Equality {A : Type}:= {equality : A -> A -> Prop}.
+Notation "x == y" := (equality x y) (at level 70, no associativity).
+Class Bracket (A B: Type):= {bracket : A -> B}.
+Notation "[ x ]" := (bracket x).
+Class Power {A B: Type} := {power : A -> B -> A}.
+Notation "x ^ y" := (power x y). \ No newline at end of file