Problemy z wykorzystaniem Z3 dla MAX-SAT
Jestem zainteresowany MAX-SAT i miałem nadzieję, że Z3 będzie miał to jako wbudowaną funkcję. Czy planujesz to zrobić w najbliższej przyszłości?
Wobec braku powyższych próbowałem użyć przykładowej aplikacji maxsat z linii poleceń. Niestety, gdy wykonuję exec.sh "filename.z3", zawsze otrzymuję następującą odpowiedź: "sprawdzanie, czy twarde ograniczenia są zadowalające ... wynik: 0". Co ja robię źle? Zapewniam, że ta odpowiedź wydaje się być całkowicie niezależna od rzeczywistej zawartości pliku.
Wreszcie komentarze w przykładzie maxsat nie określają wyraźnie, jak oznaczać ograniczenia jako twarde lub miękkie. Twardym ograniczeniem ma być formuła poprzedzona: formułą i miękkim ograniczeniem formuła poprzedzona przez: założenie. Tak więc, aby zaznaczyć „(assert (> x 0))” jako miękkie, gdzie dokładnie umieszczamy „: założenie”? (Przeczytałem zapytanie o twarde i miękkie ograniczenia, ale pytanie / odpowiedź wydawało się być bardziej w kontekście znalezienia niezadowalających rdzeni, w przeciwieństwie do „maksymalnych spełniających rdzenie” niezadowalających formuł.)