OFFLINE FORMAL VERIFICATION OF EXECUTABLE MODELS
First Claim
1. A method for verifying an executable system against an assertion in a specification, the method comprising the steps of:
- generating a propositional formula representing an assertion in the specification using Boolean propositions, each Boolean proposition being associated with an atomic assertion in the assertion;
generating a trace representing a sequence of configurations of the system with respect to the assertion, wherein the trace includes trace configuration data representing a configuration of the system in response to a particular trace;
converting the trace configuration data into truth assignments for a set of propositional symbols;
generating a trace of the system using the truth assignments for the propositional symbols; and
verifying the assertion using the trace of truth assignments for the propositional symbols and the propositional formula.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method for automatic formal verification of an executable system includes an assertion monitor configured to verify a system against an assertion in the specification. The assertion monitor includes a parser configured to generate a propositional formula representing an assertion in the specification using Boolean propositions, a filter configured to generate a trace of truth assignments for the propositional symbols and a trace verifier configured to verify the assertion using the trace of truth assignments for the propositional symbols and the propositional formula.
-
Citations
17 Claims
-
1. A method for verifying an executable system against an assertion in a specification, the method comprising the steps of:
-
generating a propositional formula representing an assertion in the specification using Boolean propositions, each Boolean proposition being associated with an atomic assertion in the assertion; generating a trace representing a sequence of configurations of the system with respect to the assertion, wherein the trace includes trace configuration data representing a configuration of the system in response to a particular trace; converting the trace configuration data into truth assignments for a set of propositional symbols; generating a trace of the system using the truth assignments for the propositional symbols; and verifying the assertion using the trace of truth assignments for the propositional symbols and the propositional formula. - View Dependent Claims (2, 3, 4, 5, 6, 11)
-
-
7. A computer-readable medium tangibly embodying computer-executable instructions for:
-
generating a propositional formula representing an assertion in the specification using Boolean propositions, each Boolean proposition associated with an atomic assertion in the assertion; generating a trace representing a sequence of configurations of the system with respect to the assertion, wherein the trace includes trace configuration data representing a configuration of the system in response to a particular trace; converting the trace configuration data into truth assignments for a set of propositional symbols; generating a trace of the system using the truth assignments for the propositional symbols; and verifying the assertion using the trace of truth assignments for the propositional symbols and the propositional formula. - View Dependent Claims (8, 9, 10)
-
-
12. An assertion monitor configured to verify an executable system against an assertion in a specification, the assertion monitor comprising:
-
a parser configured to generate a propositional formula representing an assertion in the specification using Boolean propositions; a filter configured to generate a trace of truth assignments for the propositional symbols; and a trace verifier configured to verify the assertion using the trace of truth assignments for the propositional symbols and the propositional formula. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification