Protocol Verification by Aggregation of Distributed Transactions

We present a new approach for using a theorem-prover to verify the correctness of protocols and distributed algorithms. The method compares a state graph of the implementation with a specification which is a state graph representing the desired abstract behavior. The steps in the specification correspond to atomic transactions, which are not atomic in the implementation.

[1]  Martín Abadi,et al.  The Existence of Refinement Mappings , 1988, LICS.

[2]  Grzegorz Rozenberg,et al.  Stepwise Refinement of Distributed Systems Models, Formalisms, Correctness , 1989, Lecture Notes in Computer Science.

[3]  Natarajan Shankar,et al.  Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of PVS , 1995, IEEE Trans. Software Eng..

[4]  A. Udaya Shankar,et al.  Protocol Verification via Projections , 1984, IEEE Transactions on Software Engineering.

[5]  Leslie Lamport,et al.  An Assertional Correctness Proof of a Distributed Algorithm , 1982, Sci. Comput. Program..

[6]  David L. Dill,et al.  State reduction using reversible rules , 1996, DAC '96.

[7]  A. Gupta,et al.  The Stanford FLASH multiprocessor , 1994, Proceedings of 21 International Symposium on Computer Architecture.

[8]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[9]  Alan J. Hu,et al.  Checking for Language Inclusion Using Simulation Preorders , 1991, CAV.

[10]  Alan J. Hu,et al.  Protocol verification as a hardware design aid , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[11]  Nancy A. Lynch,et al.  I/o automata: a model for discrete event systems , 1988 .

[12]  Amir Pnueli,et al.  Specifying and proving serializability in temporal logic , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[13]  Leslie Lamport,et al.  Specifying Concurrent Program Modules , 1983, TOPL.

[14]  David L. Dill,et al.  Verification of FLASH cache coherence protocol by aggregation of distributed transactions , 1996, SPAA '96.

[15]  Robert P. Kurshan,et al.  Computer-Aided Verification of Coordinating Processes: The Automata-Theoretic Approach , 2014 .

[16]  Ernest Samuel Cohen Modular progress proofs of asynchronous programs , 1993 .

[17]  David L. Dill,et al.  Automatic verification of Pipelined Microprocessor Control , 1994, CAV.