a few simple optimizations, like checking for locally available coefficients before recomputing them