@Test public void testContradiction() throws SolverException, InterruptedException { // forall x . x = x+1 is UNSAT BooleanFormula f = qfm.forall(_x, ifm.equal(_x, ifm.add(_x, ifm.makeNumber(1)))); assertThat(solver.isUnsat(f)).isTrue(); BooleanFormula g = qfm.exists(_x, ifm.equal(_x, ifm.add(_x, ifm.makeNumber(1)))); assertThat(solver.isUnsat(g)).isTrue(); }
@Test public void testSimple() throws SolverException, InterruptedException { // forall x . x+2 = x+1+1 is SAT BooleanFormula f = qfm.forall( _x, ifm.equal( ifm.add(_x, ifm.makeNumber(2)), ifm.add(ifm.add(_x, ifm.makeNumber(1)), ifm.makeNumber(1)))); assertThat(solver.isUnsat(f)).isFalse(); }