Gibt es eine Möglichkeit, Annahmen in Z3 (ich benutze die Z3Py-Bibliothek) so auszudrücken, dass die Engine ihre Gültigkeit nicht überprüft, sondern sie als zugrundeliegende Theorien nimmt, genau wie im Theorembeweis?Annahmen in Z3 oder Z3Py
Zum Beispiel sagen wir, dass ich zwei unäre Funktionen mit einem Argument vom Typ Real habe. Ich möchte der Z3-Engine mitteilen, dass für alle Eingabewerte f1 (t) gleich f2 (t) ist.
in Z3Py codiert, die in etwa wie folgt aussehen:
t = Real ("t")
assumption1 = ForAll (t, f1 (t) = f2 (t)).
Das Problem mit dem vorgestellten Code ist, dass mein Assertion-Set ziemlich groß ist und ich Quantoren verwende (ich versuche die Erfüllbarkeit eines Echtzeitsystems zu beweisen). Wenn ich die obige Behauptung zu der Menge der anderen Assertionen hinzufüge, wird die Überprüfungsprozedur nicht beendet.