Structured algebraic specifications: A kernel language (Q1080652): Difference between revisions

From MaRDI portal
Importer (talk | contribs)
Created a new Item
 
Added link to MaRDI item.
links / mardi / namelinks / mardi / name
 

Revision as of 00:47, 31 January 2024

scientific article
Language Label Description Also known as
English
Structured algebraic specifications: A kernel language
scientific article

    Statements

    Structured algebraic specifications: A kernel language (English)
    0 references
    0 references
    1986
    0 references
    A language called ASL for describing structured algebraic specifications is presented. ASL is a declarative higher-order language. It contains constructs for building (possibly infinite) signatures, sets of terms, and sets of formulas as well as constructs embodying primitive operations on algebraic specifications. In particular, ASL includes a very general 'observability' operation which can be used to behaviourally abstract from a specification. The expressive power of these operations allows the choice of a simple notion of implementation which is transitive and monotonic. Syntax and two different denotational semantics, a 'presentation semantics' and a 'model class semantics', are given. The presentation semantics is used for showing the existence of a complete (semiformal) proof system for specifications, whereas the model class semantics is fully abstract with respect to specification expressions. Both semantics are related by a homomorphism. Moreover, computability questions are studied. It is shown that any recursively enumerable signature and any class of algebras which is 'pseudo-axiomatizable' in a recursively enumerable way are definable in ASL; also, every computable transformation of specifications can be expressed in ASL.
    0 references
    ASL
    0 references
    declarative higher-order language
    0 references
    implementation
    0 references
    denotational semantics
    0 references
    presentation semantics
    0 references
    model class semantics
    0 references
    computability questions
    0 references

    Identifiers