I can't do the math to prove it properly, but FWIW I've found a proof by counter-example that A = lerp(A, B, dt) is not correct! It's a very good approximation, and in practice probably works OK, but consider this:
In this case the remaining distance m after one frame is (1 - dt). The remaining distance after N frames is (1 - dt)^n.
At N frames per second, dt is 1 / N. Therefore over one second at N frames per second, the remaining distance is (1 - (1/n))^n.
You can prove this isn't exactly correct just by substituting n = 30 and n = 60 for 30 FPS and 60 FPS:
(1 - (1/30)) ^ 30 ~= 0.36166
(1 - (1/60)) ^ 60 ~= 0.36479 (different!)
So there you go. It's a tiny difference and would probably never be at all noticable. But I think this proves the correct form is lerp(a, b, 1 - f ^ dt). Maybe this deserves a blog post...