Fairness
Advances in Petri nets 1986, part II on Petri nets: applications and relationships to other models of concurrency
Understanding and verifying distributed algorithms using stratified decomposition
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Systematic software development using VDM (2nd ed.)
Systematic software development using VDM (2nd ed.)
The temporal logic of reactive and concurrent systems
The temporal logic of reactive and concurrent systems
Defining conditional independence using collapses
Theoretical Computer Science - Selected papers of the International BCS-FACS Workshop on Semantics for Concurrency, Leicester, UK, July 1990
Mechanically verifying concurrent programs
Mechanically verifying concurrent programs
Proving partial order properties
Theoretical Computer Science
Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of PVS
IEEE Transactions on Software Engineering
Distributed snapshots: determining global states of distributed systems
ACM Transactions on Computer Systems (TOCS)
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Refinement with global equivalence proofs in temporal logic
POMIV '96 Proceedings of the DIMACS workshop on Partial order methods in verification
POMIV '96 Proceedings of the DIMACS workshop on Partial order methods in verification
Subtypes for Specifications: Predicate Subtyping in PVS
IEEE Transactions on Software Engineering
Verifying a Garbage Collection Algorithm
Proceedings of the 11th International Conference on Theorem Proving in Higher Order Logics
Partial-Order Methods for Temporal Verification
CONCUR '93 Proceedings of the 4th International Conference on Concurrency Theory
Verifying a self-stabilizing mutual exclusion algorithm
PROCOMET '98 Proceedings of the IFIP TC2/WG2.2,2.3 International Conference on Programming Concepts and Methods
Verification of distributed programs using representative interleaving sequences
Distributed Computing
Proof-guided underapproximation-widening for multi-process systems
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Cones and foci: A mechanical framework for protocol verification
Formal Methods in System Design
Verifying scenario-based aspect specifications
FM'05 Proceedings of the 2005 international conference on Formal Methods
Hi-index | 0.00 |
A mechanized verification environment made up of theories over the deductive mechanized theorem prover PVS is presented, which allows taking advantage of the “convenient computations” method. This method reduces the conceptual difficulty of proving a given property for all the possible computations of a system by separating two different concerns: (1) proving that special convenient computations satisfy the property, and (2) proving that every computation is related to a convenient one by a relation which preserves the property. The approach is especially appropriate for applications in which the first concern is trivial once the second has been shown, e.g., where the specification itself is that every computation reduces to a convenient one. Two examples are the serializability of transactions in distributed databases, and sequential consistency of distributed shared memories. To reduce the repetition of effort, a clear separation is made between “infrastructural” theories to be supplied as a proof environment PVS library to users, and the specification and proof of particular examples. The provided infrastructure formally defines the method in its most general way. It also defines a computation model and a reduction relation—the equivalence of computations that differ only in the order of finitely many independent operations. One way to prove that this relation holds between every computation and some convenient one involves the definition of a measure function from computations into a well-founded set. Two possible default measures, which can be applied in many cases, are also defined in the infrastructure, along with useful lemmas that assist in their usage. We show how the proof environment can be used, by a step-by-step explanation of an application example.