summaryrefslogtreecommitdiff
path: root/test-suite/success/Mod_strengthen.v
diff options
context:
space:
mode:
Diffstat (limited to 'test-suite/success/Mod_strengthen.v')
-rw-r--r--test-suite/success/Mod_strengthen.v64
1 files changed, 64 insertions, 0 deletions
diff --git a/test-suite/success/Mod_strengthen.v b/test-suite/success/Mod_strengthen.v
new file mode 100644
index 00000000..a472e698
--- /dev/null
+++ b/test-suite/success/Mod_strengthen.v
@@ -0,0 +1,64 @@
+Module Type Sub.
+ Axiom Refl1 : (x:nat)(x=x).
+ Axiom Refl2 : (x:nat)(x=x).
+ Axiom Refl3 : (x:nat)(x=x).
+ Inductive T : Set := A : T.
+End Sub.
+
+Module Type Main.
+ Declare Module M:Sub.
+End Main.
+
+
+Module A <: Main.
+ Module M <: Sub.
+ Lemma Refl1 : (x:nat) x=x.
+ Intros;Reflexivity.
+ Qed.
+ Axiom Refl2 : (x:nat) x=x.
+ Lemma Refl3 : (x:nat) x=x.
+ Intros;Reflexivity.
+ Defined.
+ Inductive T : Set := A : T.
+ End M.
+End A.
+
+
+
+(* first test *)
+
+Module F[S:Sub].
+ Module M:=S.
+End F.
+
+Module B <: Main with Module M:=A.M := F A.M.
+
+
+
+(* second test *)
+
+Lemma r1 : (A.M.Refl1 == B.M.Refl1).
+Proof.
+ Reflexivity.
+Qed.
+
+Lemma r2 : (A.M.Refl2 == B.M.Refl2).
+Proof.
+ Reflexivity.
+Qed.
+
+Lemma r3 : (A.M.Refl3 == B.M.Refl3).
+Proof.
+ Reflexivity.
+Qed.
+
+Lemma t : (A.M.T == B.M.T).
+Proof.
+ Reflexivity.
+Qed.
+
+Lemma a : (A.M.A == B.M.A).
+Proof.
+ Reflexivity.
+Qed.
+