Prespecification in data refinement (Q578901): Difference between revisions

From MaRDI portal
Import240304020342 (talk | contribs)
Set profile property.
Set OpenAlex properties.
Property / full work available at URL
 
Property / full work available at URL: https://doi.org/10.1016/0020-0190(87)90224-9 / rank
 
Normal rank
Property / OpenAlex ID
 
Property / OpenAlex ID: W2152198540 / rank
 
Normal rank

Revision as of 21:04, 19 March 2024

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