estimated too conservatively. For example, if you calculate “X – X” for a interval [4,6], The answer is [-2,2]. Thinking semantically, it has to be [0,0]. As a more subtle example, “X(10-X)” would be [16,36], but semantically it's actually [24,25]!! // [4,6]-[4,6] = [-2,2] IA ia(4.0, 6.0); IA ans0 = ia - ia; // [4,6]*(10-[4,6]) // = [4,6]*[4,6] // = [16,36] IA ans1 = ia * (10.0 - ia);