instance : IsEquivalence (whiskeringLeftFunctor L W E) := by
  refine'
    IsEquivalence.ofIso _
      (IsEquivalence.ofEquivalence
        ((Equivalence.congrLeft (equivalenceFromModel L W).symm).trans
          (Construction.whiskeringLeftEquivalence W E)))
  exact
    NatIso.ofComponents
      (fun F =>
        eqToIso
          (by
            ext
            change (W.Q ⋙ Localization.Construction.lift L (inverts L W)) ⋙ F = L ⋙ F
            rw [Construction.fac]))
      fun τ => by
        ext
        dsimp [Construction.whiskeringLeftEquivalence, equivalenceFromModel, whiskerLeft]
        erw [NatTrans.comp_app, NatTrans.comp_app, eqToHom_app, eqToHom_app, eqToHom_refl,
          eqToHom_refl, comp_id, id_comp]
        · rfl
        

Proof state:
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ X✝)).obj =
    ((whiskeringLeftFunctor L W E).obj X✝).obj
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ Y✝)).obj =
    ((whiskeringLeftFunctor L W E).obj Y✝).obj
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ X✝)).obj =
    ((whiskeringLeftFunctor L W E).obj X✝).obj
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ X✝)).obj =
    ((whiskeringLeftFunctor L W E).obj X✝).obj
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ Y✝)).obj =
    ((whiskeringLeftFunctor L W E).obj Y✝).obj
case h.h.h
C : Type u_1
D : Type u_2
inst✝³ : Category.{?u.22534, u_1} C
inst✝² : Category.{?u.22538, u_2} D
L : C ⥤ D
W : MorphismProperty C
E : Type u_3
inst✝¹ : Category.{?u.22587, u_3} E
inst✝ : Functor.IsLocalization L W
X✝ Y✝ : D ⥤ E
τ : X✝ ⟶ Y✝
x✝ : C
⊢ ((Construction.WhiskeringLeftEquivalence.functor W E).obj
        (Construction.lift L (_ : MorphismProperty.IsInvertedBy W L) ⋙ Y✝)).obj =
    ((whiskeringLeftFunctor L W E).obj Y✝).obj

Next tactic:
all_goals
          change (W.Q ⋙ Localization.Construction.lift L (inverts L W)) ⋙ _ = L ⋙ _
          rw [Construction.fac]