have : sgn p ≃ 1 ∨ sgn p ≃ -1 :=
  Integer.sqrt1_cases.mp ‹Integer.Sqrt1 (sgn p)›
ℕ ℤ ℚ : Type
inst✝¹⁰ : Natural ℕ
inst✝⁹ : Integer ℤ
inst✝⁸ : Core ℚ
inst✝⁷ : Addition ℚ
inst✝⁶ : Multiplication ℚ
inst✝⁵ : Negation ℚ
inst✝⁴ : Sign ℚ
inst✝³ : Subtraction ℚ
inst✝² : Reciprocation ℚ
inst✝¹ : Division ℚ
inst✝ : Order ℚ
p q : ℚ
x✝ : sgn (p * from_integer (sgn q) - p * from_integer (sgn p)) ≃ 1
this✝² : sgn (sgn q - sgn p) * sgn p ≃ sgn (p * from_integer (sgn q) - p * from_integer (sgn p))
this✝¹ : sgn (sgn q - sgn p) * sgn p ≃ 1
sqrt1_and_eqv : Integer.Sqrt1 (sgn p) ∧ sgn (sgn q - sgn p) ≃ sgn p
this✝ : Integer.Sqrt1 (sgn p)
this : sgn (sgn q - sgn p) ≃ sgn p
⊢ False
ℕ ℤ ℚ : Type
inst✝¹⁰ : Natural ℕ
inst✝⁹ : Integer ℤ
inst✝⁸ : Core ℚ
inst✝⁷ : Addition ℚ
inst✝⁶ : Multiplication ℚ
inst✝⁵ : Negation ℚ
inst✝⁴ : Sign ℚ
inst✝³ : Subtraction ℚ
inst✝² : Reciprocation ℚ
inst✝¹ : Division ℚ
inst✝ : Order ℚ
p q : ℚ
x✝ : sgn (p * from_integer (sgn q) - p * from_integer (sgn p)) ≃ 1
this✝³ : sgn (sgn q - sgn p) * sgn p ≃ sgn (p * from_integer (sgn q) - p * from_integer (sgn p))
this✝² : sgn (sgn q - sgn p) * sgn p ≃ 1
sqrt1_and_eqv : Integer.Sqrt1 (sgn p) ∧ sgn (sgn q - sgn p) ≃ sgn p
this✝¹ : Integer.Sqrt1 (sgn p)
this✝ : sgn (sgn q - sgn p) ≃ sgn p
this : sgn p ≃ 1 ∨ sgn p ≃ -1
⊢ False