private void solveConstraints(){
  IWorklist ptaList=worklist;
  while (ptaList.has_job()) {
    IVarAbstraction pn=ptaList.next();
    pn.do_before_propagation();
    pn.propagate(this,ptaList);
    pn.do_after_propagation();
  }
}

private void solveConstraints ( ) { IWorklist ptaList = worklist ; while ( ptaList . has_job ( ) ) { IVarAbstraction pn = ptaList . next ( ) ; pn . do_before_propagation ( ) ; pn . propagate ( this , ptaList ) ; pn . do_after_propagation ( ) ; } }
we iteratively update the call graph and the constraints list until our demand is satisfied
