Results 1  10
of
15
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.
Process Algebra in PVS
 Proc. of the International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS '99), volume 1579 of Lecture Notes in Computer Science
, 1999
"... The aim of this work is to investigate mechanical support for process algebra, both for concrete applications and theoretical properties. Two approaches are presented using the verification system PVS. One approach declares process terms as an uninterpreted type and specifies equality on terms by ..."
Abstract

Cited by 9 (0 self)
 Add to MetaCart
The aim of this work is to investigate mechanical support for process algebra, both for concrete applications and theoretical properties. Two approaches are presented using the verification system PVS. One approach declares process terms as an uninterpreted type and specifies equality on terms by axioms. This is convenient for concrete applications where the rewrite mechanisms of PVS can be exploited. For the verification of theoretical results, often induction principles are needed. They are provided by the second approach where process terms are defined as an abstract datatype with a separate equivalence relation. 1 Introduction We investigate the possibilities of obtainingmechanical support for equational reasoning in process algebra. In particular, we consider ACPstyle process algebras [2, 3]. In this framework, processes are represented by terms constructed from atoms (denoting atomic actions) and operators such as choice (nondeterminism), sequential composition, and para...
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
Transforming SOS Specifications to Linear Processes
 Eindhoven University of Technology
, 2011
"... Abstract. This paper describes an approach to transform a Structural Operational Semantics given as a set of deduction rules to a Linear Process Specification. The transformation is provided for deduction rules in De Simone format and extended to incorporate predicates. The Linear Process Specificat ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
Abstract. This paper describes an approach to transform a Structural Operational Semantics given as a set of deduction rules to a Linear Process Specification. The transformation is provided for deduction rules in De Simone format and extended to incorporate predicates. The Linear Process Specifications are specified in syntax of the language mCRL2, that, with help of the underlying (higherorder) rewriter/toolset, can be used for simulation, labelled transition system generation and verification of behavioural properties. We illustrate the technique by showing the effect of the transformation from the Structural Operational Semantics specification of a simple process algebra to aLinear Process Specification. 1
The Bakery Protocol: A Comparative CaseStudy in Formal Verification
 CSN’95 (Computer Science in the Netherlands
, 1995
"... Groote and the second author verified (a version of) the Bakery Protocol in ¯CRL. Their processalgebraic verification is rather complex compared to the protocol. Now the question is: How do other verification techniques perform on this protocol? In this paper, we present a new correctness proof by ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Groote and the second author verified (a version of) the Bakery Protocol in ¯CRL. Their processalgebraic verification is rather complex compared to the protocol. Now the question is: How do other verification techniques perform on this protocol? In this paper, we present a new correctness proof by using I/Oautomata theory and discuss the relative merits of both approaches. 1 Introduction In this paper, we verify a particular version of the Bakery Protocol 1 for an arbitrary large capacity max by means of I/O automata theory. The parameter max ranges over (positive) integers and denotes the number of standing places in the bakery shop. The correctness proof is developed and checked with the aid of the Larch Prover [GH93] which is a theorem prover based on firstorder logic. Our verification method is semiautomatic in the sense that the intelligent proof steps are provided by the user. This is to be contrasted with fullyautomatic (finitestate) tools like CWB [CPS93], Auto [SV89]...
A formal axiomatization for alphabet reasoning with parametrized processes Henri Korver Alex Sellink
, 1997
"... In the processalgebraic verification of systems with three or more components put in parallel, alphabet axioms are considered to be useful. These are rules that exploit the information about the alphabets of the processes involved. The alphabet of a process is the set of actions it can perform. ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
In the processalgebraic verification of systems with three or more components put in parallel, alphabet axioms are considered to be useful. These are rules that exploit the information about the alphabets of the processes involved. The alphabet of a process is the set of actions it can perform. In this paper, we extend CRL (a formal proof system for ACP + data) with such axioms. The alphabet axioms that are added to the proof theory are completely formal and therefore highly suited for computerchecked verification. This is new compared to previous papers where the formulation of alphabet axioms relies for a considerable extend on informal data parameters and implicit (infinite) set theory. 1 Introduction During the proof checking of Milner's Scheduler (see [KS93]), we found out that there was a need for an explicit treatment of the socalled alphabet axioms in a context of data, i.e. a setting where actions and processes are parametrized with data values (possibly ranging ...
Dogfooding the Structural Operational Semantics of mCRL2
"... The mCRL2 language is a formal specification language that is used to specify and model the behavior of distributed systems and protocols. With the accompanying toolset, it is possible to simulate, visualize, analyze and verify behavioral properties of mCRL2 models automatically. The semantics of th ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
The mCRL2 language is a formal specification language that is used to specify and model the behavior of distributed systems and protocols. With the accompanying toolset, it is possible to simulate, visualize, analyze and verify behavioral properties of mCRL2 models automatically. The semantics of the mCRL2 language is defined formally using Structural Operational Semantics (SOS) but implemented manually in the underlying toolset using C++. Like with most formal languages, the underlying toolset was created with the formal semantics in mind but there is no way to actually guarantee that the implementation matches the intended semantics. To validate that the implemented behavior for the mCRL2 language corresponds to its formal semantics, we describe the SOS deduction rules of the mCRL2 language, and perform the transformation from the mCRL2’s SOS deduction rules to a Linear Process Specification. As our transformation directly takes the SOS deduction rules and transforms them into mCRL2 data equations, we are basically feeding the mCRL2 toolset its own formal language definition.
Checking Verifications of Protocols and Distributed Systems By Computer
, 1998
"... We provide a treatise about checking proofs of distributed systems by computer using general purpose proof checkers. In particular, we present two approaches to verifying and checking the verification of the Sequential Line Interface Protocol (SLIP), one using rewriting techniques and one using the ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We provide a treatise about checking proofs of distributed systems by computer using general purpose proof checkers. In particular, we present two approaches to verifying and checking the verification of the Sequential Line Interface Protocol (SLIP), one using rewriting techniques and one using the socalled cones and foci theorem. Both verifications are carried out in the setting of process algebra. Finally, we present an overview of literature containing checked proofs. Note: The research of the second author is supported by Human Capital Mobility (HCM). 1 Proof checkers Anyone trying to use a proof checker, e.g. Isabelle [67, 68], HOL [29], Coq [20], PVS [78], BoyerMoore [14] or many others that exist today has experienced the same frustration. It is very difficult to prove even the simplest theorem. In the first place it is difficult to get acquainted to the logical language of the system. Most systems employ higher order logics that are extremely versatile and expressive. Howev...
The Syntax and Semantics of timed muCRL
 CWI, P.O. Box 94079, 1090 GB
, 1997
"... We define a specification language called `timed CRL'. This language is designed to describe communicating processes employing data and time. Timed CRL is the successor of CRL [17]. It differs in two main aspects. It is possible to make explicit reference to time using a new `at' operator; p,t is th ..."
Abstract
 Add to MetaCart
We define a specification language called `timed CRL'. This language is designed to describe communicating processes employing data and time. Timed CRL is the successor of CRL [17]. It differs in two main aspects. It is possible to make explicit reference to time using a new `at' operator; p,t is the process p where the first action must take place at time t. Furthermore, a distinction has been made between constructors and functions in the datatypes. Care has been taken that every CRL specification is also a correct timed CRL specification with exactly the same meaning. 1991 Mathematics Subject Classification: 68M99, 68N99 1991 Computing Reviews Classification System: D.2.1, D.3.1, D.3.3 Keywords and Phrases: Specification Language, Abstract Data Types, Process Algebra, Operational Semantics, Real Time 1 Introduction The language CRL (micro Common Representation Language) has been defined to describe interacting processes that rely on data [17]. The major design objectives for CRL...