--%>

Explain LURCH

LURCH (Menzies et al. 2004) uses random search to explore a state machine’s state space. Because the search is random, it gives no guarantee that the state space has been exhaustively explored, so LURCH cannot be used for verification. However, any errors it finds are real errors, so it can be used for debugging. It can find assertion violations, deadlock, and cycle-based errors (no-progress cycles, and violations of temporal logic properties specified as acceptance cycles); finding cycle-based errors requires a state hash table. LURCH’s input format is concurrent finite-state machines, where transitions may be specified by C code.

In a case study of running model checkers to find seeded errors in a flight guidance system model, NuSMV (a model checker not described in this report) had a mean runtime of 2 hours where LURCH had a mean runtime of 3 minutes, yet LURCH found 40 of the 44 seeded errors that NuSMV found. In other demonstration problems, LURCH found all the errors that SPIN found when SPIN could terminate with the given resources. LURCH is claimed to scale to larger problems, and tends to use a stable amount of resources.

   Related Questions in Programming Languages

  • Q : Define Primitive type Primitive type :

    Primitive type: Java's eight standard non-class types are the primitive types as: Boolean, byte, char, float, int, double, long and short.

  • Q : Reads a line of text and tests whether

    palindrome.asm -- reads a line of text and tests whether it is a palindrome. ## Register usage: ## $t1 - A. ## $t2 - B. ## $t3 - the character *A. ## $t4 - the character *B. ## $v0 - syscall parameter / return values. ## $a0 - s

  • Q : Examples of applications which can

    Give some examples of applications which can benefit from using XML?

  • Q : What is Cursor Cursor : This is a

    Cursor: This is a visual representation of the existing position of the mouse on the user's virtual desktop. Cursor shapes are frequently set to symbolize the current state of a program – utilizing an hour glass shape to point out that the user

  • Q : Use of new operator What is the use of

    What is the use of new operator?

  • Q : Problem on COBOL source code errors

    There are many errors in the following COBOL source code. Identify the errors and rewrite the program so that it contains no errors:IDENTIFICATION DIVISION   (Full stop required)PROGRAM ID. ERRORS-EXAMPLE.DATA DIVISION    (Fu

  • Q : Define the term Base case Define the

    Define the term Base case: It is a non-recursive route via a recursive method.

  • Q : Explain Abstraction Abstraction : It is

    Abstraction: It is a simplified symbolization of something which is potentially quite complex. It is frequently not essential to know the precise details of how something works, is symbolized or is implemented, since we can still make use of it in its

  • Q : What are the examples of microkernel

    What are the examples of microkernel?

  • Q : Define Accessor method Accessor method

    Accessor method: A technique specifically designed to offer access to a private attribute of a class. By convention, we name accessors with a get prefix followed by the name of the attribute being accessed. For example, the accessor for an attribute n