Пример #1
0
void symex_target_equationt::convert_assignments(
  decision_proceduret &decision_procedure) const
{
  for(const auto & it : SSA_steps)
  {
    if(it.is_assignment() && !it.ignore)
      decision_procedure.set_to_true(it.cond_expr);
  }
}
Пример #2
0
void symex_target_equationt::convert_assignments(
  decision_proceduret &decision_procedure) const
{
  for(SSA_stepst::const_iterator it=SSA_steps.begin();
      it!=SSA_steps.end(); it++)
  {
    if(it->is_assignment() && !it->ignore)
      decision_procedure.set_to_true(it->cond_expr);
  }
}
Пример #3
0
void predicatet::set_to_true(decision_proceduret &dest) const
{
  // pass equalities to solver
    
  for(unsigned v=0; v<state_vars.size(); v++)
  {
    unsigned eq=uuf.find(v);
    if(eq!=v) dest.set_to_true(equal_exprt(state_vars[v], state_vars[eq]));
  }
}
Пример #4
0
void symex_target_equationt::convert_constraints(
  decision_proceduret &decision_procedure) const
{
  for(const auto & it : SSA_steps)
  {
    if(it.is_constraint())
    {
      if(it.ignore)
        continue;

      decision_procedure.set_to_true(it.cond_expr);
    }
  }
}