Frage

Gibt es eine einfache Modell Checker-Tool. Ich plane, ein Model-Checker-Tool zu implementieren, die den Code für einige der vordefinierten Eigenschaften analysieren.

War es hilfreich?

Lösung

Ein wichtiges Instrument ist SPIN , mit der Promela Sprache. Wenn Sie LaTeX verwenden, gibt es auch TLA + .

Dies wird Ihren Code nicht analysieren, sondern lassen Sie ein Modell für Ihre assumtions und Zustand Transitionen auszudrücken, und wird dann für ungültige Zustände analysieren. Mit anderen Worten, sie werden Probleme in Ihrem Modell erkennen, nicht die Implementierung des Modells.

Ich habe eine Demo von Goanna gesehen, aber ich don‘ t wissen, ob es überhaupt verfügbar ist (kommerziell oder nicht); Dies hat den Vorteil, tatsächlich den Quellcode zu analysieren.

Einfach mal auf Ihrer Frage, und die Kommentare in Ihrer Frage wieder, es klingt wie Sie wirklich zuerst einen Teil der Literatur lesen sollten. Vielleicht The Spin Model Checker oder Festlegen der Systeme (zum Herunterladen von Leslie Lamport Webseite ). Sie müssen Ihr Problem umrahmen, so dass Sie nicht versuchen, das Halteproblem zu lösen.

Andere Tipps

CBMC ist ein einfach-ish Werkzeug, das ich davon bewusst bin, tatsächlich arbeitet auf Code. Modell im allgemeinen Überprüfung ist ein stark erforschten Feld, sondern als Leute haben bereits kommentiert, diese Breite macht es schwierig, sofern etwas mit der Info vorschlagen. Es gibt Tausende von SAT Solvern, formale Werkzeuge für HDL / Zustandsmaschine Überprüfung und viele kommerzielle statischen Quelle Analysatoren.

In jedem Fall ist CBMC ein gutes Werkzeug, aber nehmen Sie nicht mein Wort für sie; Ed Clarke, das wichtigste Mitglied der Fakultät hinter dieser Arbeit, gewann den Turing Award in diesem Jahr; -)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top