$b Furthermore, the sign of the result behaves as follows: $b$v5$l5 SIGN(A/B) = SIGN(A)/SIGN(B) => SIGN(TRUNC(A/B)) = SIGN(A)/SIGN(B) or 0 => SIGN(TRUNC(A/B)*B) = (SIGN(A)/SIGN(B))*SIGN(B) or 0 => SIGN(TRUNC(A/B)*B) = SIGN(A) or 0 {as B#0} |A/B| = |A| / |B|, |TRUNC(X)| <= |X| => |TRUNC(A/B)| <= |A/B| => |TRUNC(A/B)*B| <= |A/B| * |B| => |TRUNC(A/B)*B| <= |(A/B)*B| => |TRUNC(A/B)*B| <= |A| |A| <= |TRUNC(A/B)*B| SIGN(A) = SIGN(TRUNC(A/B)*B) => SIGN(REM(A,B)) = SIGN(A-TRUNC(A/B)*B)