@Before public void setUp() throws Exception { requireArrays(); requireQuantifiers(); this.mgrv = new FormulaManagerView(factory, config, TestLogManager.getInstance()); this.solver = new Solver(mgrv, factory, config, TestLogManager.getInstance()); this.afm = mgrv.getArrayFormulaManager(); this.bfm = mgrv.getBooleanFormulaManager(); this.ifm = mgrv.getIntegerFormulaManager(); this.qfm = mgrv.getQuantifiedFormulaManager(); _x = ifm.makeVariable("x"); _b = afm.makeArray("b", FormulaType.IntegerType, FormulaType.IntegerType); _b_at_x_eq_1 = ifm.equal(afm.select(_b, _x), ifm.makeNumber(1)); _b_at_x_eq_0 = ifm.equal(afm.select(_b, _x), ifm.makeNumber(0)); _forall_x_bx_1 = qfm.forall(_x, _b_at_x_eq_1); _forall_x_bx_0 = qfm.forall(_x, _b_at_x_eq_0); }
@Override public BooleanFormula getInvariantFor( CFANode pNode, FormulaManagerView pFmgr, PathFormulaManager pfmgr) { return pFmgr.getBooleanFormulaManager().makeBoolean(true); }