match b_cases with
| Or.inl (_ : b ≃ 1) =>
  have : a ≃ b := Rel.trans ‹a ≃ 1› (Rel.symm ‹b ≃ 1›)
  exact absurd ‹a ≃ b› ‹a ≄ b›
| Or.inr (_ : b ≃ -1) =>
  calc
    a * b ≃ _ := AA.substL ‹a ≃ 1›
    1 * b ≃ _ := AA.identL
    b     ≃ _ := ‹b ≃ -1›
    (-1)  ≃ _ := Rel.refl
ℕ : Type
inst✝⁷ : Natural ℕ
ℤ : Type
inst✝⁶ : Core ℤ
inst✝⁵ : Addition ℤ
inst✝⁴ : Multiplication ℤ
inst✝³ : Negation ℤ
inst✝² : Sign ℤ
a b : ℤ
inst✝¹ : Sqrt1 a
inst✝ : Sqrt1 b
x✝ : a ≄ b
a_cases : a ≃ 1 ∨ a ≃ -1
b_cases : b ≃ 1 ∨ b ≃ -1
h✝ : a ≃ 1
⊢ a * b ≃ -1
no goals