I don't get why you can't do this at each step.
I gave up because I was too lazy to think how to do the "precompute the maximum +/- error bounds" jiggawatts mentions in https://news.ycombinator.com/item?id=34021826
I don't get why you can't do this at each step.