Results 1  10
of
14
Formal Verification of a Leader Election Protocol in Process Algebra
 Theoretical Computer Science
, 1995
"... In 1982 Dolev, Klawe & Rodeh presented an O(n log n) unidirectional distributed algorithm for the circular extremafinding (or leaderelection) problem. At the same time Peterson came up with a nearly identical solution. In this paper, we bring the correctness of this algorithm to a completely forma ..."
Abstract

Cited by 21 (6 self)
 Add to MetaCart
In 1982 Dolev, Klawe & Rodeh presented an O(n log n) unidirectional distributed algorithm for the circular extremafinding (or leaderelection) problem. At the same time Peterson came up with a nearly identical solution. In this paper, we bring the correctness of this algorithm to a completely formal level. This relatively small protocol, which can be described on half a page, requires a rather involved proof for guaranteeing that it behaves well in all possible circumstances. To our knowledge, this is one of the more advanced casestudies in formal verification based on process algebra. Keywords Formal Methods, Process algebra, Protocol verification. 1 Introduction Experience teaches that distributed protocols are hard to define correctly. This is not only due to the inherent complexity of distributed systems, but it is also caused by the lack of adequate techniques to prove the correctness of such protocols. This means that there are no good ways of validating designs for distribut...
A Bounded Retransmission Protocol for Large Data Packets. A Case Study in Computer Checked Algebraic Verification
"... This note describes a protocol for the transmission of data packets that are too large to be transferred in their entirety. Therefore, the protocol splits the data packets and broadcasts it in parts. It is assumed that in case of failure of transmission through data channels, only a limited number o ..."
Abstract

Cited by 20 (8 self)
 Add to MetaCart
This note describes a protocol for the transmission of data packets that are too large to be transferred in their entirety. Therefore, the protocol splits the data packets and broadcasts it in parts. It is assumed that in case of failure of transmission through data channels, only a limited number of retries are allowed (bounded retransmission). If repeated failure occurs, the protocol stops trying and the sending and receiving protocol users are informed accordingly. The protocol and its external behaviour are speci ed in CRL. The correspondence between these is shown using the axioms of CRL. The whole proof of this correspondence has been computer checked using the proof checker Coq. This provides an example showing that proof checking of realistic protocols is feasible within the setting of process algebras.
A computerchecked verification of Milner's scheduler
 Proceedings of the 2 nd International Symposium on Theoretical Aspects of Computer Software, TACS '94
, 1994
"... We present an equational verification of Milner's scheduler, which we checked by computer. To our knowledge this is the first time that the scheduler is proofchecked for a general number n of scheduled processes. 1991 Mathematics Subject Classification: 68Q60, 68T15. 1991 CR Categories: F.3.1. K ..."
Abstract

Cited by 18 (5 self)
 Add to MetaCart
We present an equational verification of Milner's scheduler, which we checked by computer. To our knowledge this is the first time that the scheduler is proofchecked for a general number n of scheduled processes. 1991 Mathematics Subject Classification: 68Q60, 68T15. 1991 CR Categories: F.3.1. Keywords & Phrases: Coq, micro CRL, Milner's Scheduler, proof checking, type theory. Other versions: This report is a more detailed version of [16], brought out at the University of Utrecht. An extended abstract will appear in the LNCS Proceedings of TACS'94 (International Symposium on Theoretical Aspects of Computer Software, Japan, April 1994). Support: The work of the first author took place in the context of EC Basic Research Action 7166 concur 2. The work of the second author is supported by the Netherlands Computer Science Research Foundation (SION) with financial support of the Netherlands Organisation for Scientific Research (NWO). 1
Formalizing Process Algebraic Verifications in the Calculus of Constructions
"... This paper reports on the first steps towards the formal verification of correctness proofs of reallife protocols in process algebra. We show that proofs can be verified, and partly constructed, by a general purpose proof checker. The process algebra we use is µCRL, ACP augmented with data, wh ..."
Abstract

Cited by 18 (7 self)
 Add to MetaCart
This paper reports on the first steps towards the formal verification of correctness proofs of reallife protocols in process algebra. We show that proofs can be verified, and partly constructed, by a general purpose proof checker. The process algebra we use is µCRL, ACP augmented with data, which is small enough to make the verification feasible, and at the same time expressive enough for the specification of reallife protocols. The proof checker we use is Coq, which is based on the Calculus of Constructions, an extension of simply typed lambda calculus. The focus is on the translation of the proof theory of µCRL and µCRLspecifications to Coq. As a case study, we verified the Alternating Bit Protocol.
A Formal Verification of the Alternating Bit Protocol in the Calculus of Constructions
 Utrecht University
, 1993
"... We report on a formal verification of the Alternating Bit Protocol (ABP) in the Calculus of Constructions. We outline a semiformal correctness proof of the ABP with sufficient detail to be formalised. Thereafter we show by examples how the formalised proof has been verified by the automated proof c ..."
Abstract

Cited by 13 (3 self)
 Add to MetaCart
We report on a formal verification of the Alternating Bit Protocol (ABP) in the Calculus of Constructions. We outline a semiformal correctness proof of the ABP with sufficient detail to be formalised. Thereafter we show by examples how the formalised proof has been verified by the automated proof checker Coq. This is part of an ongoing project aiming at the mechanisation of reasoning in (extensions of) process algebra, which we think important for the fruitful application of process algebra to concurrent systems. Key Words & Phrases: protocol verification, process algebra, typed lambda calculi. 1985 Mathematics Subject Classification: 68B10. 1987 CR Categories: D.2.4, D.4.5, F.3.1. 1 Introduction We report on a formal verification of the Alternating Bit Protocol [4] in the Calculus of Constructions, as part of an ongoing project aiming at the mechanisation of reasoning in (extensions of) process algebra. Formal verification distinguishes itself from verification in the usual sense...
Termination Proofs for Higherorder Rewrite Systems
 IN 1ST INTERNATIONAL WORKSHOP ON HIGHERORDER ALGEBRA, LOGIC AND TERM REWRITING
, 1994
"... This paper deals with termination proofs for HigherOrder Rewrite Systems (HRSs), introduced in [12]. This formalism combines the computational aspects of term rewriting and simply typed lambda calculus. The result is a proof technique for the termination of a HRS, similar to the proof technique "Te ..."
Abstract

Cited by 13 (0 self)
 Add to MetaCart
This paper deals with termination proofs for HigherOrder Rewrite Systems (HRSs), introduced in [12]. This formalism combines the computational aspects of term rewriting and simply typed lambda calculus. The result is a proof technique for the termination of a HRS, similar to the proof technique "Termination by interpretation in a wellfounded monotone algebra", described in [8, 19]. The resulting technique is as follows: Choose a higherorder algebra with operations for each function symbol in the HRS, equipped with some wellfounded partial ordering. The operations must be strictly monotonic in this ordering. This choice generates a model for the HRS. If the choice can be made in such a way that for each rule the interpretation of the left hand side is greater than the interpretation of the right hand side, then the HRS is terminating. At the end of the paper some applications of this technique are given, which show that this technique is natural and can easily be applied.
CoInductive Types in Coq: An Experiment with the Alternating Bit Protocol
, 1995
"... We describe an experience concerning the implementation and use of coinductive types in the proof editor Coq. Coinductive types are recursive types which, opposite to inductive ones, may be inhabited by infinite objects. In order to illustrate their use in Coq, we describe an axiomatisation of ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
We describe an experience concerning the implementation and use of coinductive types in the proof editor Coq. Coinductive types are recursive types which, opposite to inductive ones, may be inhabited by infinite objects. In order to illustrate their use in Coq, we describe an axiomatisation of a calculus of broadcasting systems where recursive processes are represented using infinite objects. This calculus is used for developing a verification proof of the alternating bit protocol. Keywords: Program Verification, Type Theory, CoInductive Types, Communicating Processes R'esum'e Dans cet article nous d'ecrivons une exp'erience concernant l'implantation et l'utilisation de types coinductifs dans l'environnement de preuves Coq. Les types coinductifs sont des types recursifs qui, `a la diff'erence des types inductifs, peuvent etre habit'es par des objets infinis. Pour illustrer leur utilisation dans Coq nous d'ecrivons comment axiomatiser un calcul de processus qui communiq...
On automating process algebra proofs
 Proceedings of the 11th International Symposium on Computer and Information Sciences, ISCIS XI
, 1996
"... In [10] Groote and Springintveld incorporated several modeloriented techniques { such asinvariants, matching criteria, state mappings { in the processalgebraic framework of CRL for structuring and simplifying protocol veri cations. In this paper, we formalise these extensions in Coq, which is a pr ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
In [10] Groote and Springintveld incorporated several modeloriented techniques { such asinvariants, matching criteria, state mappings { in the processalgebraic framework of CRL for structuring and simplifying protocol veri cations. In this paper, we formalise these extensions in Coq, which is a proof development tool based on type theory. In the updated framework, the length of proof constructions is reduced significantly. Moreover, the new approach allows for more automation (proof generation) than was possible in the past. The results are illustrated by an example in which we prove two queue representations equal. 1
A Correctness Proof of the Bakery Protocol in µCRL
 ALGEBRA OF COMMUNICATING PROCESSES, WORKSHOPS IN COMPUTING
, 1994
"... A specification of a bakery protocol is given in µCRL. We provide a simple correctness criterion for the protocol. Then the protocol is proven correct using a proof system that has been developed for µCRL. The proof primarily consists of algebraic manipulations based on specifications of abstract d ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
A specification of a bakery protocol is given in µCRL. We provide a simple correctness criterion for the protocol. Then the protocol is proven correct using a proof system that has been developed for µCRL. The proof primarily consists of algebraic manipulations based on specifications of abstract data types and elementary rules and axioms from process algebra.
Algebraic Proof Assistants in HOL
 1 OS5 ) .I. P~~JK Cltertr. 89. 5767577 1 . Pri
, 1995
"... We explore several ways to formalize the algebraic laws of CSPlike languages in HOL. The intent of the paper is to show how HOL can be tailored to acting as a proof assistant. The emphasis is therefore on the consequences of various choices to be made during the formalization for writing tactics. W ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
We explore several ways to formalize the algebraic laws of CSPlike languages in HOL. The intent of the paper is to show how HOL can be tailored to acting as a proof assistant. The emphasis is therefore on the consequences of various choices to be made during the formalization for writing tactics. We end up with a proof assistant that allows a user to make steps of the granularity of an algebraic law. It is not the purpose of this paper to show in HOL that the algebraic laws of some CSPlike language are sound; the purpose is to show how HOL can be used to apply the algebraic laws and act as a rewrite system. 0 Introduction We report on our attempts to tailor the automated proof checker HOL [GM93] to the verification of proofs in CSPlike process algebras. Although it is technically feasible to prove the correctness of processes operating in parallel, this is often a long and tedious, and therefore extremely errorprone task. Reliable tools that can assist in proving concurrent progra...