Skip to main content
QUICK REVIEW

[Paper Review] Evolving Algebras 1993: Lipari Guide

Yuri Gurevich|arXiv (Cornell University)|Aug 19, 2018
Logic, programming, and type systems9 references550 citations
TL;DR

A comprehensive guide to evolving algebras (ealgebras), detailing static algebras, sequential, nondeterministic, parallel, and distributed models, with syntax and semantics for update rules and importing elements.

ABSTRACT

Computation models and specification methods seem to be worlds apart. The project on abstract state machines (in short ASMs, also known as evolving algebras) started as an attempt to bridge the gap by improving on Turing's thesis. We sought more versatile machines which would be able to step-for-step simulate arbitrary algorithms on their natural abstraction levels. The ASM thesis asserts that ASMs are such versatile machines. The guide provides the definitions of sequential, parallel and distributed ASMs.

Motivation & Objective

  • Present the static algebra framework and the update mechanism for states.
  • Introduce sequential evolving algebras with rule-based transition semantics.
  • Extend the model to nondeterministic, parallel, and distributed variants.
  • Explain importing new elements via a Reserve universe and the import construct.
  • Discuss programs, runs, external functions, and interaction with the environment.

Proposed method

  • Define static algebras as multisorted structures with partial functions.
  • Introduce update sets and consistency/sequencing rules for firing updates.
  • Present basic transition rules: update instructions, sequence, and conditional constructs.
  • Introduce Reserve and the import constructor to add new elements to universes.
  • Extend to nondeterministic and choice-based variants; discuss external functions and real-time/distributed aspects.

Experimental results

Research questions

  • RQ1How can static and evolving algebras model computation and specification across abstraction levels?
  • RQ2How should updates, guards, and imports be formalized to simulate algorithms and systems?
  • RQ3What are the semantics of sequential, nondeterministic, parallel, and distributed ealgebras?
  • RQ4How can environments and external inputs be incorporated into runs and programs?
  • RQ5What constraints (consistency vs. nondeterminism) govern update firing and state evolution?

Key findings

  • Provide a formal framework unifying static algebras, updates, and transition rules.
  • Show how to fire consistent update sets and handle inconsistent updates via conservative determinism.
  • Introduce Reserve-based element import mechanisms enabling dynamic state extension.
  • Extend ealgebras to nondeterministic and choice-based settings and to parallel/distributed contexts.
  • Clarify program/run concepts and the role of external functions in modeling environments.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.