BoolVar a = VariableFactory.bool("a", solver).not();
BoolVar b = VariableFactory.bool("b", solver);
BoolVar c = VariableFactory.bool("c", solver);
BoolVar d = VariableFactory.bool("d", solver);
LogOp root = LogOp.and(LogOp.and(LogOp.and(a, b), c), d);
LogicTreeToolBox.merge(LogOp.Operator.AND, root);
Assert.assertEquals(root.toString(), "(d and c and not(a) and b)");
}