Skip to main navigation Skip to search Skip to main content

Proving entailment between conceptual state specifications

Research output: Contribution to journalArticlepeer-review

21 Scopus citations

Abstract

The lack of expressive power of temporal logic as a specification language can be compensated to a certain extent by the introduction of powerful, high-level temporal operators, which are difficult to understand and reason about. A more natural way to increase the expressive power of a temporal specification language is by introducing conceptual state variables, which are auxiliary (unimplemented) variables whose values serve as an abstract representation of the internal state of the process being specified. The kind of specifications resulting from the latter approach are called conceptual state specifications. This paper considers a central problem in reasoning about conceptual state specifications: the problem of proving entailment between specifications. A technique, based on the notion of simulation between machines, is shown to be sound for proving entailment. A kind of completeness result can also be shown if specifications are assumed to satisfy well-formedness conditions. The role played by entailment in proofs of correctness is illustrated by the problem of proving that the concatenation of two FIFO buffers implements a FIFO buffer.

Original languageEnglish
Pages (from-to)135-154
Number of pages20
JournalTheoretical Computer Science
Volume56
Issue number1
DOIs
StatePublished - 1988

Fingerprint

Dive into the research topics of 'Proving entailment between conceptual state specifications'. Together they form a unique fingerprint.

Cite this