dsimp [KVChain.foldl, List.foldl]
α : Type u
inst✝¹ : LinearLT α
inst✝ : DecidableRel LT.lt
deg : α → Nat
a : α
n : valType
xs : KVChain LT.lt fun x => valType
haxs : KVChain.boundLeft a xs
⊢ KVChain.foldl (fun d a n => d + deg a * n.val) 0 (KVChain.cons a n xs haxs) =
    deg a * n.val + KVChain.foldl (fun d a n => d + deg a * n.val) 0 xs
α : Type u
inst✝¹ : LinearLT α
inst✝ : DecidableRel LT.lt
deg : α → Nat
a : α
n : valType
xs : KVChain LT.lt fun x => valType
haxs : KVChain.boundLeft a xs
⊢ List.foldl (fun c x => c + deg x.fst * x.snd.val) (0 + deg a * n.val) xs.toList =
    deg a * n.val + List.foldl (fun c x => c + deg x.fst * x.snd.val) 0 xs.toList