have ulp_dvd : ulp n b ∣ ulp n (a - b) := by
  apply ulp_dvd_ulp
  apply le_tsub_of_add_le_left
  rewrite [← Nat.two_mul]
  exact hba
round : ℕ → ℕ
n a b : ℕ
npos : 0 < n
hfaithful₀ : faithful₀ n round
hfaithful₁ : faithful₁ n round
hfa : trunc n a = a
hfb : trunc n b = b
hba : 2 * b ≤ a
lt_round : a - b < round (a - b)
⊢ trunc n (next n (trunc n (a - b)) - (a - b)) = next n (trunc n (a - b)) - (a - b)
round : ℕ → ℕ
n a b : ℕ
npos : 0 < n
hfaithful₀ : faithful₀ n round
hfaithful₁ : faithful₁ n round
hfa : trunc n a = a
hfb : trunc n b = b
hba : 2 * b ≤ a
lt_round : a - b < round (a - b)
ulp_dvd : ulp n b ∣ ulp n (a - b)
⊢ trunc n (next n (trunc n (a - b)) - (a - b)) = next n (trunc n (a - b)) - (a - b)