have hsum : w.trunc.sum < w.sum :=
  Finset.sum_lt_sum (fun j _ ↦ (lec_iff _ _).mp (trunc_lec w) j)
                    ⟨j, Finset.mem_univ j, lt_of_le_of_lt (trunc_le_E w j) hj⟩
case hE'.refine_1
n d : ℕ
inst✝ : NeZero d
w : Weight n d
hE : E (trunc w) = E w
k : Fin (Nat.succ n)
hk : w k = 0
w' : Weight n d := Function.update (trunc w) k 1
j : Fin (Nat.succ n)
hj : E w < w j
hsum' : Weight.sum w' = Weight.sum (trunc w) + 1
⊢ (Weight.sum (trunc w) + 1) * d / (n + 1) ≤ Weight.sum w * d / (n + 1)
case hE'.refine_1
n d : ℕ
inst✝ : NeZero d
w : Weight n d
hE : E (trunc w) = E w
k : Fin (Nat.succ n)
hk : w k = 0
w' : Weight n d := Function.update (trunc w) k 1
j : Fin (Nat.succ n)
hj : E w < w j
hsum' : Weight.sum w' = Weight.sum (trunc w) + 1
hsum : Weight.sum (trunc w) < Weight.sum w
⊢ (Weight.sum (trunc w) + 1) * d / (n + 1) ≤ Weight.sum w * d / (n + 1)