Package org.jakstab.solver

Examples of org.jakstab.solver.Solver.pop()


            solver.addAssertion(f);
            if (!solver.isSatisfiable()) {
              post.setValue(v, SignElement.POSITIVE);
              logger.debug("Restricting state from " + s + " through " + assumption + " to " + post);
            } else {
              solver.pop();
              solver.push();
              f = ExpressionFactory.createNot(ExpressionFactory.createEqual(v, ExpressionFactory.createNumber(0, v.getBitWidth())));
              solver.addAssertion(f);
              if (!solver.isSatisfiable()) {
                post.setValue(v, SignElement.ZERO);
View Full Code Here


              solver.addAssertion(f);
              if (!solver.isSatisfiable()) {
                post.setValue(v, SignElement.ZERO);
                logger.debug("Restricting state from " + s + " through " + assumption + " to " + post);
              } else {
                solver.pop();
                solver.push();
                f = ExpressionFactory.createLessOrEqual(ExpressionFactory.createNumber(0, v.getBitWidth()), v);
                solver.addAssertion(f);
                if (!solver.isSatisfiable()) {
                  post.setValue(v, SignElement.NEGATIVE);
View Full Code Here

                  post.setValue(v, SignElement.NEGATIVE);
                  logger.debug("Restricting state from " + s + " through " + assumption + " to " + post);
                }
              }
            }
            solver.pop();
          }
        }
        return Collections.singleton((AbstractState)post);
       
        /*
 
View Full Code Here

          if (solver.isUnsatisfiable()) {
            postPreds.andWith(bddFactory.ithVar(predIdx));
          } else {
            // Now check whether the negative of the predicate holds
            solver.pop();
            solver.push();
            solver.addAssertion(p);
            if (solver.isUnsatisfiable()) {
              postPreds.andWith(bddFactory.nithVar(predIdx));
            }
View Full Code Here

              postPreds.andWith(bddFactory.nithVar(predIdx));
            }
          }
          // nothing for don't know, the predicate is already cleared from the BDD

          solver.pop();
        }

        return Collections.singleton((AbstractState)new PredicateAbstractionState(postPreds));
      }
     
View Full Code Here

          if (solver.isUnsatisfiable()) {
            setVariableDontCare(postPreds, predIdx);
            postPreds.andWith(bddFactory.ithVar(predIdx));
          } else {
            // Now check whether the negative of the predicate holds
            solver.pop();
            solver.push();
            solver.addAssertion(p);
            if (solver.isUnsatisfiable()) {
              setVariableDontCare(postPreds, predIdx);
              postPreds.andWith(bddFactory.nithVar(predIdx));
View Full Code Here

            if (solver.isUnsatisfiable()) {
              setVariableDontCare(postPreds, predIdx);
              postPreds.andWith(bddFactory.nithVar(predIdx));
            }
          }
          solver.pop();
        }
       
        return Collections.singleton((AbstractState)new PredicateAbstractionState(postPreds));
      }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.