diff --git a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPDirectSolver.java b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPDirectSolver.java
index 285d151bc1b967de2f0be29465badb134baf195b..12f6d952ed95324a366dc10eb307af41b336ca34 100644
--- a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPDirectSolver.java
+++ b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPDirectSolver.java
@@ -207,8 +207,14 @@ public class ILPDirectSolver extends AbstractILPSolver {
 
     GLPK.glp_scale_prob(prob, GLPKConstants.GLP_SF_AUTO);
 
-    // TODO binarize may be needed
-//    parm.setBinarize(GLPKConstants.GLP_ON);
+    // the ILP is binary already
+//    param.setBinarize(GLPKConstants.GLP_ON);
+
+    // all cuts on
+    param.setClq_cuts(GLPKConstants.GLP_ON);
+    param.setMir_cuts(GLPKConstants.GLP_ON);
+    param.setGmi_cuts(GLPKConstants.GLP_ON);
+    param.setCov_cuts(GLPKConstants.GLP_ON);
 
     // -- Msg_lev --
     // No output (0)	No output.
diff --git a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPExternalSolver.java b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPExternalSolver.java
index ca67709531e8667f06a23ba26f474bfde8359a0b..f6f8ab36a35dad7cb5235b994015f528b22535e9 100644
--- a/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPExternalSolver.java
+++ b/jastadd-mquat-solver-ilp/src/main/java/de/tudresden/inf/st/mquat/solving/ilp/ILPExternalSolver.java
@@ -104,6 +104,7 @@ public class ILPExternalSolver extends AbstractILPSolver {
     String command = "glpsol --lp " + lp.toAbsolutePath() +
 //        " -w " + solution.toAbsolutePath() +
         " --tmlim " + remainingTimeForSolvingInMillis/1000 +
+        " --cuts" +
         " -o " + solutionReadable.toAbsolutePath();
     logger.debug("Call: '{}'", command);
     try {