Jak korzystać z klauzul podziału z3 niesatysfakcjonujących rdzeni i spróbuj ponownie znaleźć niesatysfakcjonujący rdzeń
Czy chcesz powiedzieć, jak podzielić klauzule niesatysfakcjonujących rdzeni? A oto pytanie 2 dotyczące stwierdzenia, że rdzenie są niesatysfakcjonujące. Spróbuję ponownie szukać. Czy chcesz powiedzieć, jak to zrobić?
Dziękuję Ci bardzo.
Jak podzielić klauzule jak poniżej
`and` (`or` (`<=_int` 1002 x1) (`<=_int` 1000 x1)) (`and` (`or` (`<=_int` 0 (`+_int` x2 (`*_int` -1003 x1))) (`<=_int` 0 (`+_int` x2 (`*_int` -1230 x1)))) (`and` (`or` (`<=_int` 0 (`+_int` x3 (`*_int` -1999 x2)))
Odnośnie do pytania 2
cout<<s.check(3,assumptions)<<endl;
expr_vector core = s.unsat_core();
................
expr assumptions2[2] = {p1,p3};
cout<<"check next"<<s.check(2,assumptions2)<<endl;
expr_vector core1 = s.unsat_core();
for(unsigned int k=0;k<core1.size();++k){
cout<<"New core size "<<k<<endl;
cout<<"New unsat core "<<core1[k]<<endl;
}
wywołując ponownie niesatysfakcjonującą funkcję rdzeniową, nie może ponownie podać niesatysfakcjonujących rdzeni. Dziękuję Ci bardzo.