Lean4
/-- Intersection of two pre-`1`-hypercovers. -/
@[simps toPreZeroHypercover I₁ Y p₁ p₂]
noncomputable def inter (E F : PreOneHypercover S) [∀ i j, HasPullback (E.f i) (F.f j)]
[∀ (i j : E.I₀) (k : E.I₁ i j) (a b : F.I₀) (l : F.I₁ a b), HasPullback (E.p₁ k ≫ E.f i) (F.p₁ l ≫ F.f a)] :
PreOneHypercover S where
__ := E.toPreZeroHypercover.inter F.toPreZeroHypercover
I₁ i j := E.I₁ i.1 j.1 × F.I₁ i.2 j.2
Y i j k := pullback (E.p₁ k.1 ≫ E.f _) (F.p₁ k.2 ≫ F.f _)
p₁ i j k := pullback.map _ _ _ _ (E.p₁ _) (F.p₁ _) (𝟙 S) (by simp) (by simp)
p₂ i j k := pullback.map _ _ _ _ (E.p₂ _) (F.p₂ _) (𝟙 S) (by simp [E.w]) (by simp [F.w])
w := by simp [E.w]