diff src/AxiomsImpred.v @ 173:7fd470d8a788

System F
author Adam Chlipala <adamc@hcoop.net>
date Sun, 09 Nov 2008 15:15:41 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/AxiomsImpred.v	Sun Nov 09 15:15:41 2008 -0500
@@ -0,0 +1,26 @@
+(* Copyright (c) 2008, Adam Chlipala
+ * 
+ * This work is licensed under a
+ * Creative Commons Attribution-Noncommercial-No Derivative Works 3.0
+ * Unported License.
+ * The license text is available at:
+ *   http://creativecommons.org/licenses/by-nc-nd/3.0/
+ *)
+
+(* Additional axioms not in the Coq standard library, including those that need impredicativity *)
+
+Set Implicit Arguments.
+
+Require Import Axioms.
+Export Axioms.
+
+Theorem ext_eq_forall_Set : forall (A : Type)
+  (f g : A -> Set),
+  (forall x, f x = g x)
+  -> @eq Set (forall x, f x) (forall x, g x).
+  intros.
+  rewrite (ext_eq _ _ _ H); trivial.
+Qed.
+
+Ltac ext_eq := (apply ext_eq || apply ext_eq_Set
+  || apply ext_eq_forall || apply ext_eq_forall_Set); intro.