case mpr =>
  intro (_ : a ≃ 1 ∨ a ≃ -1)
  show Sqrt1 a
  match ‹a ≃ 1 ∨ a ≃ -1› with
  | Or.inl (_ : a ≃ 1) =>
    have : Sqrt1 (1 : ℤ) := sqrt1_one
    have : Sqrt1 a := AA.substFn (Rel.symm ‹a ≃ 1›) ‹Sqrt1 (1 : ℤ)›
    exact this
  | Or.inr (_ : a ≃ -1) =>
    have : Sqrt1 (-1 : ℤ) := sqrt1_neg_one
    have : Sqrt1 a := AA.substFn (Rel.symm ‹a ≃ -1›) ‹Sqrt1 (-1 : ℤ)›
    exact this
ℕ : Type
inst✝⁵ : Natural ℕ
ℤ : Type
inst✝⁴ : Core ℤ
inst✝³ : Addition ℤ
inst✝² : Multiplication ℤ
inst✝¹ : Negation ℤ
inst✝ : Sign ℤ
a : ℤ
⊢ a ≃ 1 ∨ a ≃ -1 → Sqrt1 a
no goals