ePrints Repository

A Language for Configuring Multi-level Specifications

Hill, Gillian and Vickers, Steven (2005) A Language for Configuring Multi-level Specifications. Theoretical Computer Science, 351. pp. 146-166. ISSN 0304-3975

PDF (122Kb)

URL of Published Version: http://www.sciencedirect.com/science/journal/03043975

Identification Number/DOI: doi:10.1016/j.tcs.2005.09.065

This paper shows how systems can be built from their component parts with specified sharing. Its principle contribution is a modular language for configuring systems. A configuration is a description in the new language of how a system is constructed hierarchically from specifications of its component parts. Category theory has been used to represent the composition of specifications that share a component part by constructing colimits of diagrams. We reformulated this application of category theory to view both configured specifications and their diagrams as algebraic presentations of presheaves. The framework of presheaves leads naturally to a configuration language that expresses structuring from instances of specifications, and also incorporates a new notion of instance reduction to extract the component instances from a particular configuration. The language now expresses the hierarchical structuring of multi-level configured specifications. The syntax is simple because it is independent of any specification language; structuring a diagram to represent a configuration is simple because there is no need to calculate a colimit; and combining specifications is simple because structuring is by configuration morphisms with no need to flatten either specifications or their diagrams to calculate colimits.

Type of Work:Article
Date:01 December 2005 (Publication)
School/Faculty:Schools (1998 to 2008) > School of Computer Science
Department:Computer Science
Subjects:Q Science (General)
QA75 Electronic computers. Computer science
QA Mathematics
Institution:University of Birmingham
Copyright Holders:Elsevier
ID Code:179
Local Holdings:
Export Reference As : ASCII + BibTeX + Dublin Core + EndNote + HTML + METS + MODS + OpenURL Object + Reference Manager + Refer + RefWorks
Share this item :
QR Code for this page

Repository Staff Only: item control page