--%>

Use Finite-State Space Abstractions

Use Finite-State Space Abstractions: In order to successfully apply explicit-state model checking, defects must be detectable in a sufficiently small state space. This can be achieved either by means of heuristics that constrain the way the state space is searched, or by means of abstractions closing the state space. While the model checker can automatically apply certain abstractions, others should be used explicitly in the target program.

The most important state space reductions of the last category use specialized types to reflect value constraints. For example avoid using “int” and “long” types where the whole range of values is not needed. If a variable v can only take values -1, 0, or 1, then we can declare it as an enumerated type with only those three values. This helps the model checker limit the range of values that it needs to check for.

   Related Questions in Programming Languages

  • Q : State Finalization Finalization :

    Finalization: Instantly before an object is garbage collected, its finalize method is called. This offers it the opportunity to free any resources it may be holding on to.

  • Q : Define the term Marking interface

    Define the term Marking interface: It is an interface with no methods.

  • Q : Explain the way to close an XHTML

    Explain the way to close an XHTML element.

  • Q : What is validating parser What is

    What is validating parser? Answer: A parser makes sure that an XML document is valid additionally to being well formed.

  • Q : Explain VeriSoft VeriSoft (Godefroid,

    VeriSoft (Godefroid, 2005) is a model checker for C and C++; other languages can be used, but components in other languages are treated as black boxes. VeriSoft has been used to find defects in very large telecommunications programs (Chandra, Godefroi

  • Q : Explain Window manager Window manager :

    Window manager: This is a window manager which provides a computer user with a virtual desktop having one or more windows and working regions in which individual programs might be run. Window managers permit the contents of a user's desktop to be arra

  • Q : What is Automation Testing life cycle

    What is Automation Testing life cycle?

  • Q : Describe Overriding for restriction

    Overriding for restriction: It is a form of method overriding in which the sub-class version of a method calls the super-class version first of all and then employs or manipulates the outcome or consequences of that call in some manner.

  • Q : What is Process Process : It is an

    Process: It is an individual thread-of-control to which an execution time slice is assigned by the operating system.

  • Q : Importance of client-side libraries

    Explain the importance of the client-side libraries?