x=dd(x1,x2), y=dd(y1,y2), z=dd(z1,z2) [add] z1,z2 = twosum(x1,y1) z2 = z2 + x2 + y2 z1,z2 = twosum(z1,z2) [sub] z1,z2 = twosum(x1,-y1) z2 = z2 + x2 - y2 z1,z2 = twosum(z1,z2) [mul] z1,z2 = twoproduct(x1,y1) z2 = z2 + x1*y2 + x2*y1 * x2*y2 z1,z2 = twosum(z1,z2) [div] z1 = x1/y1 t1,t2 = twoproduct(-z1,y1) z2 = ((((t1 + x1) - z1*y2) + x2) + t2) / (y1+y2) z1,z2 = twosum(z1,z2) [sqrt] z1 = sqrt(x1) t1,t2 = twoproduct(-z1,z1) z2 = ((t1 + x1) + x2 + t2) / (sqrt(x1 + x2) + z1) z1,z2 = twosum(z1,z2)