In Java habe ich eine Gruppe von Objekten, die miteinander verbunden sind. Nehmen wir an, dass sie zusammen Modell sind und nennen wir es so.Zuordnung von Java-Objekten zu Prolog-Darstellung
Ich möchte dieses Modell gegen einige Spezifikation (definiert als eine Reihe von Bedingungen) validieren. Der Zustand kann so etwas wie diese:
forall child in parent.children
child.name startswith "A"
Es Bündel von solchen Bedingungen sein kann und alle von ihnen müssen erfüllt sein, um zu sagen, dass ein Modell die Spezifikation entspricht. Alle Bedingungen sind einige Prädikate, die aus Variablen und logischen Ausdrücken bestehen, und ich möchte behandeln, ist eine Instanz von SAT-Problem.
Ich interessiere mich nicht für die Komplexität dieser Lösung, ich möchte nur Prolog verwenden, um eine richtige Substitution von Variablen zu finden (wenn es existiert, bedeutet das, dass ein Modell der Spezifikation entspricht).
Ich bin auf der Suche nach einem Weg, wie ich Prolog Wissensbasis leicht erstellen könnte, die aus Aussagen bestehen wird, die die Objekte darstellen, die mein Modell erstellen.
Haben Sie etwas Wertvolles zu empfehlen? Oder vielleicht können Sie einen anderen Ansatz zur Lösung dieses Problems vorschlagen?
Nicht sicher, ob das hilft, aber haben Sie einen Blick in die Modellprüfung geworfen (wie https://en.wikipedia.org/wiki/List_of_model_checking_tools) – GhostCat
Wenn Sie in Ihre Frage ein minimal ausgearbeitetes Beispiel aufnehmen könnten, wäre das Machen Sie es viel einfacher, eine Antwort zu versuchen. –
Was für eine coole Idee! –