--%>

Property Specifications of Java Pathfinder

Property Specifications: The most straightforward way to specify and check simple safety properties in JPF is to use Java assertions inside the application under analysis. This allows the specification of properties that only depend on the application data values (e.g., parameter value intervals). Violations are caught by JPF. The drawbacks of this method are that it requires access to the application sources, and that it can significantly increase the state space if the property requires evaluation state itself (e.g., for properties implemented as automatons).

The other way to specify properties is by using gov.nasa.jpf.Property or gov.nasa.jpf.GenericProperty instances to encapsulate property checks.

50_property spec.jpg

The user typically creates an instance of such a class and provides an implementation for its check() method which does the main work for checking the property. The check()method is evaluated after each transition. If it returns false and termination has been requested, the search process ends, and all violated properties are printed (which potentially includes error traces).

JPF comes with generic Property classes for the following properties:

  • No Deadlocks
  • No Assertion Violation
  • No Uncaught Exceptions (i.e., not handled inside the application)

   Related Questions in Programming Languages

  • Q : Explain Semantic error Semantic error:

    Semantic error: It is an error in the meaning of program. A statement might contain no syntax errors, however might still break the rules of Java language. For example, when ivar is an int variable, the shown statement is syntactically correct

  • Q : Define Inconsistent state Inconsistent

    Inconsistent state: A state which an object must not be in. A class requires to be carefully designed in order to make sure that none of its examples can get into a conflicting state. An illustration of an inconsistent state may be a football team wit

  • Q : State the term DOM and how does this

    State the term DOM and how does this relate to XML?

  • Q : Database management information system

    How much would it cost to create a simple database management information system by utilizing MySQL and PHP?The proposal of the system should include the following: Background narrative of setting and background of problem m

  • Q : Define Thread Thread : It is a

    Thread: It is a lightweight procedure which is managed by the Java Virtual Machine (abbreviated as JVM). Support for threads is given by the Thread class in java.lang package.

  • Q : Define the term Peripheral devices

    Define the term Peripheral devices: It is the devices attached to a computer, like disk drives, printers, mice, and so forth.

  • Q : Detecting sequence in signal line

    Explain how to detect a sequence of ‘1101’ arriving serially from the signal line?

  • Q : Explain Package declaration Package

    Package declaration: It is a declaration employed to name a package. This should be the first item in the source file, preceding any import statements. For example,     pa

  • Q : Explain Polling Polling : It is the

    Polling: It is the process of repeatedly testing until a situation becomes true. Polling can be incompetent when the time between tests is little compared with the time it will take for the condition to become true or right. A polling thread must slee

  • Q : State the term dispatcher State the

    State the term dispatcher.