# Initial Algebra Semantics and Continuous Algebras

@article{Goguen1977InitialAS, title={Initial Algebra Semantics and Continuous Algebras}, author={Joseph A. Goguen and James W. Thatcher and Eric G. Wagner and Jesse B. Wright}, journal={Journal of the ACM (JACM)}, year={1977}, volume={24}, pages={68 - 95} }

Many apparently divergent approaches to specifying formal semantics of programming languages are applications of initial algebra semantics. In this paper an overview of initial algebra semantics is provided. The major technical feature is an initial continuous algebra which permits unified algebraic treatment of iterative and recursive semantic features in the same framework as more basic operations.

## Figures from this paper

## 897 Citations

Unified Algebras and Abstract Syntax

- Computer ScienceCOMPASS/ADT
- 1992

The expressiveness of unified algebraic specifications is illustrated, and a grammar-like notation for specifying abstract syntax is provided, particularly attractive for use in semantic descriptions of full-scale programming languages.

Terminal Algebra Semantics and Retractions for Abstract Data Types

- Computer Science, MathematicsICALP
- 1980

This paper develops a theory of terminal algebra semantics, and it is shown that a t-abstract data type is a terminal object in the categories of terminal models and implementations of an abstract data type specification.

A Unifying Theorem for Algebraic Semantics and Dynamic Logics

- Mathematics, Computer ScienceInf. Comput.
- 1987

A unifying theorem for algebraic semantics and dynamic logics

- Mathematics, Computer ScienceFCT
- 1985

A unified single proof is given which implies theorems in such diverse fields as continuous algebras of algebraic semantics, dynamic algebras of logics of programs and program verification methods…

Initial Algebra Semantics and Concurrency

- Computer Science, MathematicsMFPS
- 1987

It is shown that diamonds are free in the category of continuous parallel-nondeterministic algebras and some results concerning categories of continuous algeBRas, which can be found in the work of the ADJ group are presented in a self-contained form.

Initial and Terminal Algebra Semantics of Parameterized Abstract Data Type Specifications With Inequalities

- Computer ScienceCAAP
- 1981

A generalization of our terminal algebra semantics approach is presented. We then give a uniform initial/terminal semantics of parameterized data type specifications.

An Analysis of Semantic Models for Algebraic Specifications

- Computer Science
- 1982

A more concrete semantics encompassing these different approaches to semantic models for data structures, algorithms and programming languages is presented.

Combining Data Type and Recursive Process Specifications Using Projection Algebras

- MathematicsTheor. Comput. Sci.
- 1990

A continuous algebraic semantics of CSP

- Computer ScienceJournal of Computer Science and Technology
- 2008

This is an attempt to use continous algebras to describe the semantics of CSP—continuity being used to solve recursive definitions of processes as infinite objects. By so doing, we combine the…

Some Fundamentals of Order-Algebraic Semantics

- Computer Science, MathematicsMFCS
- 1976

The order-theoretic enrichment of the algebraic approach to theoretical computer science, and to the theory of programming in particular, can be accomplished rather directly and elegantly, and…

## References

SHOWING 1-10 OF 108 REFERENCES

On the Structure of Abstract Algebras

- Mathematics
- 1935

The following paper is a study of abstract algebras qua abstract algebras. As no vocabulary suitable for this purpose is current, I have been forced to use a number of new terms, and extend the…

Semantics and axiomatics of a simple recursive language.

- Computer ScienceSTOC '74
- 1974

The semantics used is the “best” possible if one admits the validity of Algol's copy rule, and the proof system is complete with respect to the semantics.

PROGRAMS AND THEIR PROOFS: AN ALGEBRAIC APPROACH,

- Computer Science, Mathematics
- 1968

A method of defining some functions as homomorphisms instead of giving recursive or iterative definitions is explained, and a proof of the correctness of a simple compiler for expressions is given.

An algebraic theory of recursive definitions and recursive languages

- Computer ScienceSTOC
- 1971

This paper presents the fundamental concepts and theorems concerning the basic structure (basic syntax), the semantics and the combination and manipulation of “recursive definitions” and the closure properties of ”recursive languages”.

Correctness of translations of programming languages--an algebraic approach

- Computer Science, Mathematics
- 1972

Under these mathematical tools, proofs can be provided systematically of the correctness of compilers for fragmentary programming languages, each embodying a single language 'feature', as well as for statement sequences, arithmetic expressions, Boolean expressions, assignment statements, and statements.

On the Relation between Direct and Continuation Semantics

- Computer ScienceICALP
- 1974

This work gives two theorems which specify the relationship between the direct and the continuation semantic functions for a purely applicative language and shows that direct semantics are included in continuation semantics.

Characterizing Derivation Trees of Context-Free Grammars through a Generalization of Finite Automata Theory

- Computer ScienceJ. Comput. Syst. Sci.
- 1967

Properties of Programs and the First-Order Predicate Calculus

- Computer Science, MathematicsJACM
- 1969

The correctness and equivalence problems of abstract programs are shown to be reducible to the termination problem and known proof procedures for the first-order predicate calculus can be applied to prove the termination of both programs and abstract programs.