case mpr =>
  intro (And.intro (_ : -q ≤ p) (_ : p ≤ q))
  show abs p ≤ q
  have : abs p ≃ p ∨ abs p ≃ -p := abs_cases
  match this with
  | Or.inl (_ : abs p ≃ p) =>
    calc
      _ ≃ abs p := eqv_refl
      _ ≃ p     := ‹abs p ≃ p›
      _ ≤ q     := ‹p ≤ q›
  | Or.inr (_ : abs p ≃ -p) =>
    calc
      _ ≃ abs p   := eqv_refl
      _ ≃ (-p)    := ‹abs p ≃ -p›
      _ ≤ (-(-q)) := le_subst_neg ‹-q ≤ p›
      _ ≃ q       := neg_involutive
ℕ ℤ ℚ : Type
inst✝¹² : Natural ℕ
inst✝¹¹ : Integer ℤ
inst✝¹⁰ : Core ℚ
inst✝⁹ : Addition ℚ
inst✝⁸ : Negation ℚ
inst✝⁷ : Subtraction ℚ
inst✝⁶ : Multiplication ℚ
inst✝⁵ : Reciprocation ℚ
inst✝⁴ : Division ℚ
inst✝³ : Sign ℚ
inst✝² : Order ℚ
inst✝¹ : MinMax ℚ
inst✝ : Metric ℚ
p q : ℚ
⊢ -q ≤ p ∧ p ≤ q → abs p ≤ q
no goals