Module: Mathlib.CategoryTheory.Limits.Shapes.Equalizers

Goal state before:
pp: case id.left
⊢ WalkingParallelPairHom.casesOn (motive := fun a a_1 t ↦
      zero = a →
        one = a_1 →
          WalkingParallelPairHom.id zero ≫ left ≍ t →
            (op
                (match zero with
                | zero => one
                | one => zero) ⟶
              op
                (match one with
                | zero => one
                | one => zero)))
      (WalkingParallelPairHom.id zero ≫ left)
      (fun h ↦
        Eq.ndrec (motive := fun {X} ↦
          (f : X ⟶ one) →
            one = one →
              f ≍ left →
                (op
                    (match X with
                    | zero => one
                    | one => zero) ⟶
                  op
                    (match one with
                    | zero => one
                    | one => zero)))
          (fun f h ↦
            Eq.ndrec (motive := fun {Y} ↦
              (f : zero ⟶ Y) →
                f ≍ left →
                  (op
                      (match zero with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match Y with
                      | zero => one
                      | one => zero)))
              (fun f h ↦ Quiver.Hom.op left) ⋯ f)
          ⋯ (WalkingParallelPairHom.id zero ≫ left))
      (fun h ↦
        Eq.ndrec (motive := fun {X} ↦
          (f : X ⟶ one) →
            one = one →
              f ≍ right →
                (op
                    (match X with
                    | zero => one
                    | one => zero) ⟶
                  op
                    (match one with
                    | zero => one
                    | one => zero)))
          (fun f h ↦
            Eq.ndrec (motive := fun {Y} ↦
              (f : zero ⟶ Y) →
                f ≍ right →
                  (op
                      (match zero with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match Y with
                      | zero => one
                      | one => zero)))
              (fun f h ↦ Quiver.Hom.op right) ⋯ f)
          ⋯ (WalkingParallelPairHom.id zero ≫ left))
      (fun X h ↦
        Eq.ndrec (motive := fun X ↦
          one = X →
            WalkingParallelPairHom.id zero ≫ left ≍ WalkingParallelPairHom.id X →
              (op
                  (match zero with
                  | zero => one
                  | one => zero) ⟶
                op
                  (match one with
                  | zero => one
                  | one => zero)))
          (fun h ↦
            Eq.ndrec (motive := fun {Y} ↦
              (f : zero ⟶ Y) →
                f ≍ WalkingParallelPairHom.id zero →
                  (op
                      (match zero with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match Y with
                      | zero => one
                      | one => zero)))
              (fun f h ↦
                Quiver.Hom.op
                  (WalkingParallelPairHom.id
                    (match zero with
                    | zero => one
                    | one => zero)))
              ⋯ (WalkingParallelPairHom.id zero ≫ left))
          h)
      ⋯ ⋯ ⋯ =
    WalkingParallelPairHom.casesOn (motive := fun a a_1 t ↦
        zero = a →
          zero = a_1 →
            WalkingParallelPairHom.id zero ≍ t →
              (op
                  (match zero with
                  | zero => one
                  | one => zero) ⟶
                op
                  (match zero with
                  | zero => one
                  | one => zero)))
        (WalkingParallelPairHom.id zero)
        (fun h ↦
          Eq.ndrec (motive := fun {X} ↦
            (f : X ⟶ zero) →
              zero = one →
                f ≍ left →
                  (op
                      (match X with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match zero with
                      | zero => one
                      | one => zero)))
            (fun f h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ left →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦ Quiver.Hom.op left) ⋯ f)
            ⋯ (WalkingParallelPairHom.id zero))
        (fun h ↦
          Eq.ndrec (motive := fun {X} ↦
            (f : X ⟶ zero) →
              zero = one →
                f ≍ right →
                  (op
                      (match X with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match zero with
                      | zero => one
                      | one => zero)))
            (fun f h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ right →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦ Quiver.Hom.op right) ⋯ f)
            ⋯ (WalkingParallelPairHom.id zero))
        (fun X h ↦
          Eq.ndrec (motive := fun X ↦
            zero = X →
              WalkingParallelPairHom.id zero ≍ WalkingParallelPairHom.id X →
                (op
                    (match zero with
                    | zero => one
                    | one => zero) ⟶
                  op
                    (match zero with
                    | zero => one
                    | one => zero)))
            (fun h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ WalkingParallelPairHom.id zero →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦
                  Quiver.Hom.op
                    (WalkingParallelPairHom.id
                      (match zero with
                      | zero => one
                      | one => zero)))
                ⋯ (WalkingParallelPairHom.id zero))
            h)
        ⋯ ⋯ ⋯ ≫
      WalkingParallelPairHom.casesOn (motive := fun a a_1 t ↦
        zero = a →
          one = a_1 →
            left ≍ t →
              (op
                  (match zero with
                  | zero => one
                  | one => zero) ⟶
                op
                  (match one with
                  | zero => one
                  | one => zero)))
        left
        (fun h ↦
          Eq.ndrec (motive := fun {X} ↦
            (f : X ⟶ one) →
              one = one →
                f ≍ left →
                  (op
                      (match X with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match one with
                      | zero => one
                      | one => zero)))
            (fun f h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ left →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦ Quiver.Hom.op left) ⋯ f)
            ⋯ left)
        (fun h ↦
          Eq.ndrec (motive := fun {X} ↦
            (f : X ⟶ one) →
              one = one →
                f ≍ right →
                  (op
                      (match X with
                      | zero => one
                      | one => zero) ⟶
                    op
                      (match one with
                      | zero => one
                      | one => zero)))
            (fun f h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ right →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦ Quiver.Hom.op right) ⋯ f)
            ⋯ left)
        (fun X h ↦
          Eq.ndrec (motive := fun X ↦
            one = X →
              left ≍ WalkingParallelPairHom.id X →
                (op
                    (match zero with
                    | zero => one
                    | one => zero) ⟶
                  op
                    (match one with
                    | zero => one
                    | one => zero)))
            (fun h ↦
              Eq.ndrec (motive := fun {Y} ↦
                (f : zero ⟶ Y) →
                  f ≍ WalkingParallelPairHom.id zero →
                    (op
                        (match zero with
                        | zero => one
                        | one => zero) ⟶
                      op
                        (match Y with
                        | zero => one
                        | one => zero)))
                (fun f h ↦
                  Quiver.Hom.op
                    (WalkingParallelPairHom.id
                      (match zero with
                      | zero => one
                      | one => zero)))
                ⋯ left)
            h)
        ⋯ ⋯ ⋯

Tactic:
rfl

Goal state after: