equal
deleted
inserted
replaced
93 |
93 |
94 fun neg (Rat (p, q)) = Rat (Integer.neg p, q); |
94 fun neg (Rat (p, q)) = Rat (Integer.neg p, q); |
95 |
95 |
96 fun inv (Rat (p, q)) = case Integer.sign p |
96 fun inv (Rat (p, q)) = case Integer.sign p |
97 of LESS => Rat (Integer.neg q, Integer.neg p) |
97 of LESS => Rat (Integer.neg q, Integer.neg p) |
98 | EQAUL => raise DIVZERO |
98 | EQUAL => raise DIVZERO |
99 | GREATER => Rat (q, p); |
99 | GREATER => Rat (q, p); |
100 |
100 |
101 fun rounddown (Rat (p, q)) = Rat (Integer.div p q, 1); |
101 fun rounddown (Rat (p, q)) = Rat (Integer.div p q, 1); |
102 |
102 |
103 fun roundup (Rat (p, q)) = case Integer.divmod p q |
103 fun roundup (Rat (p, q)) = case Integer.divmod p q |