Unfortunately needed patch due to incompatibility with SML -- oo is infix and hence can not appear on the left handside of patterns
--- a/src/HOL/Tools/Presburger/generated_cooper.ML Tue Jun 12 20:49:50 2007 +0200
+++ b/src/HOL/Tools/Presburger/generated_cooper.ML Tue Jun 12 20:49:56 2007 +0200
@@ -1,6 +1,6 @@
structure GeneratedCooper =
struct
-
+nonfix oo;
fun nat i = if i < 0 then 0 else i;
val one_def0 : int = (0 + 1);