Theorem: Homotopy.nullHomotopy'_hom
File: Mathlib/Algebra/Homology/Homotopy.lean

Proof steps:
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
⊢ Homotopy (nullHomotopicMap' h) 0
state_after: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
⊢ ∀ (i j : ι), ¬c.Rel j i → (dite (c.Rel j i) (h i j) fun x => 0) = 0
tactic: apply nullHomotopy fun i j => dite (c.Rel j i) (h i j) fun _ => 0
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
⊢ ∀ (i j : ι), ¬c.Rel j i → (dite (c.Rel j i) (h i j) fun x => 0) = 0
state_after: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
⊢ (dite (c.Rel j i) (h i j) fun x => 0) = 0
tactic: intro i j hij
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
⊢ (dite (c.Rel j i) (h i j) fun x => 0) = 0
state_after: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
⊢ ∀ (h_1 : c.Rel j i), h i j h_1 = 0
tactic: rw [dite_eq_right_iff]
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
⊢ ∀ (h_1 : c.Rel j i), h i j h_1 = 0
state_after: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
hij' : c.Rel j i
⊢ h i j hij' = 0
tactic: intro hij'
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
hij' : c.Rel j i
⊢ h i j hij' = 0
state_after: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
hij' : c.Rel j i
⊢ False
tactic: exfalso
state_before: ι : Type u_1
V : Type u
inst✝¹ : Category.{v, u} V
inst✝ : Preadditive V
c : ComplexShape ι
C D E : HomologicalComplex V c
f g : C ⟶ D
h✝ k : D ⟶ E
i✝ : ι
h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)
i j : ι
hij : ¬c.Rel j i
hij' : c.Rel j i
⊢ False
state_after: no goals
tactic: exact hij hij'