Journal of the ACM · 1986 · 181 citations · 18 references
ComputingComputer ScienceProgramming LanguagesSemanticsTheory Of ComputationFinite-state MachinesModel TheoryRecursion TheoryComplexity-theoretic HardnessComplexity-theoretic ReductionsNondeterminismOperational SemanticsRecursive OrdinalsState TransformationTotal CorrectnessWeakest Preconditions
Four semantics for a small programming language involving unbounded (but countable) nondeterminism are provided. These comprise an operational semantics, two state transformation semantics based on the Egli-Milner and Smyth orders, respectively, and a weakest precondition semantics. Their equivalence is proved. A Hoare-like proof system for total correctness is also introduced and its soundness and completeness in an appropriate sense are shown. Finally, the recursion theoretic complexity of the notions introduced is studied. Admission of countable nondeterminism results in a lack of continuity of various semantic functions, and this is shown to be necessary for any semantics satisfying appropriate conditions. In proofs of total correctness, one resorts to the use of (countable) ordinals, and it is shown that all recursive ordinals are needed.
18
Theory of Recursive Functions and Effective Computability
D. C. Cooper · The Computer Journal · 1969 · 2.6K citations · Full text
Gordon Plotkin · SIAM Journal on Computing · 1976 · 639 citations
Concurrent Processes and Their Syntax
George Milne, Robin Milner · Journal of the ACM · 1979 · 169 citations · Full text