41c1010043
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
24 lines
487 B
Text
24 lines
487 B
Text
Import cast
|
|
|
|
Variables A A' B B' : Type
|
|
Variable x : A
|
|
Eval cast (Refl A) x
|
|
Eval x = (cast (Refl A) x)
|
|
Variable b : B
|
|
Definition f (x : A) : B := b
|
|
Axiom H : (A -> B) = (A' -> B)
|
|
Variable a' : A'
|
|
Eval (cast H f) a'
|
|
Axiom H2 : (A -> B) = (A' -> B')
|
|
Definition g (x : B') : Nat := 0
|
|
Eval g ((cast H2 f) a')
|
|
Check g ((cast H2 f) a')
|
|
|
|
Eval (cast H2 f) a'
|
|
|
|
Variables A1 A2 A3 : Type
|
|
Axiom Ha : A1 = A2
|
|
Axiom Hb : A2 = A3
|
|
Variable a : A1
|
|
Eval (cast Hb (cast Ha a))
|
|
Check (cast Hb (cast Ha a))
|