Added templates and some code done
This commit is contained in:
38
0Trinitarianism/Quest4.agda
Normal file
38
0Trinitarianism/Quest4.agda
Normal file
@@ -0,0 +1,38 @@
|
||||
module 0Trinitarianism.Quest4 where
|
||||
|
||||
open import 0Trinitarianism.Preambles.P4
|
||||
|
||||
data Id {A : Type} : (x y : A) → Type where
|
||||
rfl : {x : A} → Id x x
|
||||
|
||||
private
|
||||
variable
|
||||
A : Type
|
||||
x y z w : A
|
||||
|
||||
sym : Id x y → Id y x
|
||||
sym rfl = rfl
|
||||
|
||||
trans : Id x y → Id y z → Id x z
|
||||
trans rfl rfl = rfl
|
||||
|
||||
_*_ : Id x y → Id y z → Id x z
|
||||
_*_ = trans
|
||||
|
||||
rfl* : (p : Id x y) → Id (rfl * p) p
|
||||
rfl* rfl = rfl
|
||||
|
||||
*rfl : (p : Id x y) → Id (p * rfl) p
|
||||
*rfl rfl = rfl
|
||||
|
||||
*sym : (p : Id x y) → Id (sym p * p) rfl
|
||||
*sym rfl = rfl
|
||||
|
||||
sym* : (p : Id x y) → Id (p * sym p) rfl
|
||||
sym* rfl = rfl
|
||||
|
||||
assoc : (p : Id x y) (q : Id y z) (r : Id z w) → Id ((p * q) * r) (p * (q * r))
|
||||
assoc rfl rfl rfl = rfl
|
||||
|
||||
outOfId : (M : (y : A) → Id x y → Type) → M x rfl → {y : A} → (p : Id x y) → M y p
|
||||
outOfId M x rfl = x
|
||||
Reference in New Issue
Block a user