In the stepwise refinement of discrete event systems, the formal specification step plays an important role because it makes the mathematical verification of each refinement step possible. In this paper, we firstly propose a method for the specification of discrete event systems based on the simple idea that discrete event systems can be modelled as many-sorted algebras (a number of sets together with a number of functions on those sets) as well as abstract data types in software engineering except that the state-transition functions included in such systems may be partial functions. The proposed method extends the method of algebraic specification of abstract data types so that it can also be used to specify the partial state-transition functions. Then, we study the problem how to verify one system refines another based on the following ideas: Let
A, A' be two specifications of discrete event systems, and
M(A), M(A') be those systems deduced from
A, A' respectively. If we can obtain a syntactically verifiable condition (
C) for
A, A' which guarantees
M(A') be a refinement of
M(A), then, we can verify that
M(A') refines
M(A) by simply verify that the condition (
C) is satisfied by
A, A' syntactically.
We also present such a condition (
C) and point out that it is syntactically verifiable for specifications of which equations can be treated as rewrite rules satisfying finite and unique termination.
抄録全体を表示