summaryrefslogtreecommitdiff
path: root/plugins/ring/LegacyRing.v
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/ring/LegacyRing.v')
-rw-r--r--plugins/ring/LegacyRing.v37
1 files changed, 37 insertions, 0 deletions
diff --git a/plugins/ring/LegacyRing.v b/plugins/ring/LegacyRing.v
new file mode 100644
index 00000000..4ae85baf
--- /dev/null
+++ b/plugins/ring/LegacyRing.v
@@ -0,0 +1,37 @@
+(************************************************************************)
+(* v * The Coq Proof Assistant / The Coq Development Team *)
+(* <O___,, * CNRS-Ecole Polytechnique-INRIA Futurs-Universite Paris Sud *)
+(* \VV/ **************************************************************)
+(* // * This file is distributed under the terms of the *)
+(* * GNU Lesser General Public License Version 2.1 *)
+(************************************************************************)
+
+(* $Id$ *)
+
+Require Export Bool.
+Require Export LegacyRing_theory.
+Require Export Quote.
+Require Export Ring_normalize.
+Require Export Ring_abstract.
+Declare ML Module "ring_plugin".
+
+(* As an example, we provide an instantation for bool. *)
+(* Other instatiations are given in ArithRing and ZArithRing in the
+ same directory *)
+
+Definition BoolTheory :
+ Ring_Theory xorb andb true false (fun b:bool => b) eqb.
+split; simpl in |- *.
+destruct n; destruct m; reflexivity.
+destruct n; destruct m; destruct p; reflexivity.
+destruct n; destruct m; reflexivity.
+destruct n; destruct m; destruct p; reflexivity.
+destruct n; reflexivity.
+destruct n; reflexivity.
+destruct n; reflexivity.
+destruct n; destruct m; destruct p; reflexivity.
+destruct x; destruct y; reflexivity || simpl in |- *; tauto.
+Defined.
+
+Add Legacy Ring bool xorb andb true false (fun b:bool => b) eqb BoolTheory
+ [ true false ].