Let's limit our argument for positive numbers: a+-wa * b+-wb = [(a-wa)*(b-wb), (a+wa)*(b+wb)] [a*b - a*wb - b*wb + wa*wb, a*b + a*wb + b*wa + wa*wb] if we assume wa*wb is insignificantly small, we get: a*b+-(a*wb+b*wa) tolerances are the following: ta = wa/a tb = wb/b tab = (a*wb+b*wa)/(a*b) = (a*b*tb + a*b*ta)/(a*b) = ta+tb