我有这个例子
o : Type
Hom : o -> o -> Type
Id : (a : o) -> Hom a a
Comp : Hom a b -> Hom b c -> Hom a c
IdRight : (f : Hom a b) -> Comp f (Id b) = f
IdLeft : (f : Hom a b) -> Comp (Id a) f = f
Assoc : (f : Hom a b) ->
(g : Hom b c) ->
(h : Hom c d) ->
Comp f (Comp g h) = Comp (Comp f g) h
EqId : (f : Hom a b) ->
(g : Hom b a) ->
(h : Hom b a) ->
Comp f g = Id a ->
Comp h f = Id b ->
g = h
EqId = ?EqIdProof
我尝试按此顺序使用策略来证明
1. intro a, b, f, g, h, fg, hf
2. rewrite IdLeft g
3. rewrite hf
4. rewrite Assoc h f g
所以四步实际上什么都不做。它也与sym
. 我做错了什么?伊德里斯本身是否可能存在错误?