Definitions
⊢ ∀V a b. Δ V a b ⇔ a = b ∧ a ∈ V
⊢ ∀h A a b. Gr h A a b ⇔ a ∈ A ∧ b = h a
⊢ ∀f A R x y.
RIMAGE f A R x y ⇔
∃x0 y0. x = f x0 ∧ y = f y0 ∧ R x0 y0 ∧ x0 ∈ A ∧ y0 ∈ A
⊢ ∀f A R x y. RINV_IMAGE f A R x y ⇔ x ∈ A ∧ y ∈ A ∧ R (f x) (f y)
⊢ ∀A B C f g.
SPO A B C f g =
(partition (SPOr A f g) (B ⊔ C),
restr (λb. equiv_class (SPOr A f g) (B ⊔ C) (INL b)) B,
restr (λc. equiv_class (SPOr A f g) (B ⊔ C) (INR c)) C)
⊢ (∀A f g x. SPO_pimg A f g (INL x) = PREIMAGE f {x} ∩ A) ∧
∀A f g y. SPO_pimg A f g (INR y) = PREIMAGE g {y} ∩ A
⊢ ∀A f g.
SPOr A f g =
(λx y. (∃a. a ∈ A ∧ x = INL (f a) ∧ y = INR (g a)) ∨ x = y)^=
⊢ ∀n. cardgt (:α) n ⇔ FINITE 𝕌(:α) ⇒ n < CARD 𝕌(:α)
⊢ ∀R A a. eps R A a = if a ∈ A then {b | R a b ∧ b ∈ A} else ARB
⊢ ∀A f x y. kernel A f x y ⇔ x ∈ A ∧ y ∈ A ∧ f x = f y
⊢ ∀f s. restr f s = (λx. if x ∈ s then f x else ARB)
⊢ ∀f A B. shom f A B ⇔ (∀a. a ∈ A ⇒ f a ∈ B) ∧ ∀a. a ∉ A ⇒ f a = ARB
⊢ ∀A f g b d. span A f g b d ⇔ ∃a. a ∈ A ∧ b = f a ∧ d = g a
Theorems
⊢ Δ (IMAGE f A) = RIMAGE f A (Δ A)
⊢ Gr (restr f A) A = Gr f A
⊢ (a,b) ∈ UNCURRY R ⇔ R a b
⊢ RIMAGE f A R = Gr f A ∘ᵣ R ∘ᵣ (Gr f A)ᵀ
⊢ RINV_IMAGE f A R = (Gr f A)ᵀ ∘ᵣ R ∘ᵣ Gr f A
⊢ restr (j1 ∘ f) A = restr (j2 ∘ g) A ⇒
(∀b1 b2. SPOr A f g (INL b1) (INL b2) ⇒ j1 b1 = j1 b2) ∧
(∀b c. SPOr A f g (INL b) (INR c) ⇒ j1 b = j2 c) ∧
(∀b' c'. SPOr A f g (INR c') (INL b') ⇒ j1 b' = j2 c') ∧
∀c1 c2. SPOr A f g (INR c1) (INR c2) ⇒ j2 c1 = j2 c2
⊢ Spushout A B C' f g (P,i1,i2) (:δ) ⇔
shom f A B ∧ shom g A C' ∧ shom i1 B P ∧ shom i2 C' P ∧
restr (i1 ∘ f) A = restr (i2 ∘ g) A ∧
∀Q j1 j2.
shom j1 B Q ∧ shom j2 C' Q ∧ restr (j1 ∘ f) A = restr (j2 ∘ g) A ⇒
∃!u. shom u P Q ∧ restr (u ∘ i1) B = j1 ∧ restr (u ∘ i2) C' = j2
⊢ ∀P'.
(∀A B C f g P i1 i2. P' A B C f g (P,i1,i2) (:δ)) ⇒
∀v v1 v2 v3 v4 v5 v6 v7 v8. P' v v1 v2 v3 v4 (v5,v6,v7) v8
⊢ shom f A B ∧ shom g A C ⇒ Spushout A B C f g (SPO A B C f g) (:δ)
⊢ Spushout A B C f g (P,p1,p2) (:δ) ⇒ Spushout A C B g f (P,p2,p1) (:δ)
⊢ Spushout A B C f g (P,i1,i2) (:δ) ∧ INJ h 𝕌(:ε) 𝕌(:δ) ⇒
Spushout A B C f g (P,i1,i2) (:ε)
⊢ Spushout A B C f g (P,i1,i2) (:ε) ∧ Spushout A B C f g (Q,j1,j2) (:δ) ∧
cardgt (:δ) 1 ∧ cardgt (:ε) 1 ⇒
∃H. BIJ H P Q ∧ restr (H ∘ i1) B = j1 ∧ restr (H ∘ i2) C = j2
⊢ cardgt (:α) 1 ⇔ ∃bf. INJ bf 𝟚 𝕌(:α)
⊢ a ∈ A ⇒ eps R A a ∈ partition R A
⊢ kernel A f = (Gr f A)ᵀ ∘ᵣ Gr f A
⊢ f ∘ (λx. x) = f ∧ (λx. x) ∘ f = f
⊢ x ∈ A ⇒ restr f A x = f x
⊢ restr f A x = g x ⇔ x ∈ A ∧ f x = g x ∨ x ∉ A ∧ g x = ARB
⊢ restr (f ∘ restr g A) A = restr (f ∘ g) A
⊢ shom f A ∅ ⇔ A = ∅ ∧ f = K ARB
⊢ ∀A B. B ≠ ∅ ⇒ ∃h. shom h A B
⊢ transitive (SPOr A f g)
⊢ shom f A B ∧ shom g A C ∧ A ≠ ∅ ⇒
Spushout A B C f g ({()},restr (K ()) B,restr (K ()) C) (:unit)