Algebraic Specifications in Software Engineering
Algebraic Specifications in Software Engineering
The age of a relational structure
Discrete Mathematics
Institutions: abstract model theory for specification and programming
Journal of the ACM (JACM)
An implementation-oriented semantics for module composition
Foundations of component-based systems
Theoretical Computer Science
The System Designer's Guide to VHDL-AMS
The System Designer's Guide to VHDL-AMS
A Stubborn Attack On State Explosion
CAV '90 Proceedings of the 2nd International Workshop on Computer Aided Verification
Inconsistency Management and View Updates
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
Rosetta is a specification language for designing hardware and software systems with a view to being able to consider multiple system perspectives concurrently (such as functional correctness, performance constraints, and physical constraints). It also provides the capability to integrate components from heterogeneous domains, such as software and reconfigurable systems and digital and analog hardware.This paper explores a semantic framework for Rosetta in terms of category theory. We outline how a specification can be equated with a theory, and the different components which satisfy a specification can be equated with the algebras which satisfy this theory. From this, we define a category consisting of all legal specifications in a given language, and then show how the notions of extension and interaction of specifications can be modelled by means of colimits within this category. This requires a consideration of the different notions of equivalence of specifications, including behavioural equivalence, axiom abstraction and signature abstraction. Finally, we briefly outline how information hiding might be included in the construction of objects within the category of theories.While the motivation for this work is the semantics of Rosetta, the approach adopted can be applied to other specification languages which support multifaceted, heterogenous specifications.