{-# OPTIONS --without-K --rewriting #-}
open import HoTT
module cw.cohomology.GridMap {i j k}
{A : Type i} {B : Type j} {C : Type k}
(f : A → B) (g : B → C) where
B/A = Cofiber f
C/A = Cofiber (g ∘ f)
C/B = Cofiber g
B/A-to-C/A-span-map : SpanMap (cofiber-span f) (cofiber-span (g ∘ f))
B/A-to-C/A-span-map = span-map (idf _) g (idf _)
(comm-sqr λ _ → idp) (comm-sqr λ _ → idp)
module B/AToC/A = PushoutFmap B/A-to-C/A-span-map
B/A-to-C/A : B/A → C/A
B/A-to-C/A = B/AToC/A.f
C/A-to-C/B-span-map : SpanMap (cofiber-span (g ∘ f)) (cofiber-span g)
C/A-to-C/B-span-map = span-map (idf _) (idf _) f
(comm-sqr λ _ → idp) (comm-sqr λ _ → idp)
module C/AToC/B = PushoutFmap C/A-to-C/B-span-map
C/A-to-C/B : C/A → C/B
C/A-to-C/B = C/AToC/B.f