(* *)
(**************************************************************************)
-set "baseuri" "cic:/matita/test/".
+
include "logic/equality.ma".
lemma r2 : R → R2.
intro;
apply mk_R2;
- [ apply (C r)
- | apply (eq_rect ? ? (λx.x → x → x));
- [3: symmetry;
- [2: apply (with_ r)
- | skip
- ]
- | skip
- | apply (mult (r2_ r))
- ]
- ].
+ [ exact (C r)
+ | rewrite > (with_ r); exact (mult (r2_ r))]
+qed.
+coercion cic:/matita/tests/multiple_inheritance/r2.con.
+
+(* convertibility test *)
+lemma conv_test : ∀r:R.C r -> K r.
+ intros.
+ change with (C (r1 r)).
+ change with (K (r2 r)).
+ change with (C (r1 r)).
+ assumption.
qed.
-coercion cic:/matita/test/r2.con.
(* Let's play with it *)
definition f ≝ λr:R.λx:r.plus ? (mult ? x x) x.
lemma test: ∀r:R. ∀x:r. f ? x = x.
intros;
unfold f;
- auto paramodulation.
-qed.
\ No newline at end of file
+ autobatch paramodulation.
+qed.
+
+
+