4 research outputs found

    Automated Logical Verification based on Trace Abstractions

    Get PDF
    We propose a new and practical framework for integrating the behavioralreasoning about distributed systems with model-checking methods.Our proof methods are based on trace abstractions, which relate thebehaviors of the program and the specification. We show that for finite-statesystems such symbolic abstractions can be specified conveniently inMonadic Second-Order Logic (M2L). Model-checking is then made possibleby the reduction of non-determinism implied by the trace abstraction.Our method has been applied to a recent verification problem by Broyand Lamport. We have transcribed their behavioral description of a distributedprogram into temporal logic and verified it against another distributedsystem without constructing the global program state space. Thereasoning is expressed entirely within M2L and is carried out by a decisionprocedure. Thus M2L is a practical vehicle for handling complex temporallogic specifications, where formulas decided by a push of a button are aslong as 10-15 pages

    A Case Study in Automated Verification Based on Trace Abstractions

    Get PDF
    In [14], we proposed a framework for the automatic verification of reactivesystems. Our main tool is a decision procedure, Mona, for MonadicSecond-order Logic (M2L) on finite strings. Mona translates a formula inM2L into a finite-state automaton. We show in [14] how traces, i.e. finiteexecutions, and their abstractions can be described behaviorally. Thesestate-less descriptions can be formulated in terms of customized temporallogic operators or idioms.In the present paper, we give a self-contained, introductory account ofour method applied to the RPC-memory specification problem of the 1994Dagstuhl Seminar on Specification and Refinement of Reactive Systems.The purely behavioral descriptions that we formulate from the informalspecifications are formulas that may span 10 pages or more.Such descriptions are a couple of magnitudes larger than usual temporallogic formulas found in the literature on verification. To securelywrite these formulas, we introduce Fido [16] as a reactive system descriptionlanguage. Fido is designed as a high-level symbolic language forexpressing regular properties about recursive data structures.All of our descriptions have been verified automatically by Mona fromM2L formulas generated by Fido.Our work shows that complex behaviors of reactive systems can beformulated and reasoned about without explicit state-based programming.With Fido, we can state temporal properties succinctly while enjoyingautomated analysis and verification

    Automated Logical Verification based on Trace Abstractions

    No full text
    corecore