We present the deductive verification of safety and liveness properties of a sliding-window protocol using the PVS theorem prover. The protocol is modeled in an operational style which is close to an actual program. It has parametric window sizes for both sender and receiver, and unbounded, lossy communication channels carrying unbounded data. The proofs are done using invariant-strengthening techniques, encoded as PVS automated strategies based on heuristics and decision procedures. In the rapidly growing field of formal verification, deductive techniques [13] and tools [4, 8, 14] are general and powerful ways to verify properties of hardware and software systems. However, many practitioners and researchers hesitate to use deductive methods, which are perceived to be difficult, time-consuming and requiring advanced theoretical knowledge. This is in contrast with algorithmic techniques [2, 5, 9] which are completely automatic once a suitable abstraction of the system has been found and entered into, e.g., a model-checking tool. The goal of this paper is to advocate the use of deductive techniques. Specifically, we show that although deductive verification is not fully automatic, it can be performed in a systematic way, using specific approaches, strategies, and automatic procedures on decidable subproblems that reduce the need for human intervention. This intervention remains necessary, but only as a general guideline to organize the verification process, i.e, to decompose the verification problem into manautomated manner. ageable subproblems. Then, the subproblems can be solved in a highly As a case study we use an infinite-state sliding-window protocol for which we verify safety and liveness properties using the PVS theorem
Rusu REF used the theorem prover PVS to verify both safety and liveness properties for a SWP with unbounded sequence numbers.
Verifying a Sliding Window Protocol using PVS
FORTE
Computer Science