Prespecification in data refinement (Q578901)

From MaRDI portal
scientific article
Language Label Description Also known as
English
Prespecification in data refinement
scientific article

    Statements

    Prespecification in data refinement (English)
    0 references
    0 references
    0 references
    0 references
    1987
    0 references
    In data refinement, a concrete data type replaces an abstract data type used in the design of an algorithm or system. We present two methods for calculating the weakest specification of each operation on a concrete data type from the specification of the corresponding abstract operation, together with a single simulation relation, which specifies the correspondence between the two types. The methods are proved sound and (jointly) complete for a nondeterministic procedural programming language slightly more powerful than \textit{E. W. Dijkstra}'s [A discipline of programming (Englewood Cliffs 1976; Zbl 0368.68005)]. Operations (in general, nondeterministic) are represented by relations, and significant use is made of prespecification and postspecification [\textit{C. A. R. Hoare} and \textit{J. He}, Ann. Soc. Math. Polon., Ser. IV, Fundam. Inf. 9, 51-84 (1986; Zbl 0603.68009)].
    0 references
    data refinement
    0 references
    concrete data type
    0 references
    abstract data type
    0 references
    weakest specification
    0 references
    nondeterministic procedural programming language
    0 references
    prespecification
    0 references
    postspecification
    0 references

    Identifiers