Skip to content

Latest commit

 

History

History
68 lines (45 loc) · 2.68 KB

coalgebra.org

File metadata and controls

68 lines (45 loc) · 2.68 KB

Coalgebra: States and Observation

Introduction by Bart Jacobs http://www.cs.ru.nl/B.Jacobs/CLG/JacobsCoalgebraIntro.pdf Overview of algebraic and coalgebraic structures (AS CAS) AS and CAS similarities and differences. Examples that can be modeled using coalgebraic structures: automata, transition systems, and bisimulation relations

Here CAS are more general than CAS as used in linear algebra:

CAS are dual of a monoid: a vector space V , say over K, with two linear maps V → V ⊗ V, V → K satisfying appropriate equations, Such a structure forms an example of a coalgebra for the functor X 7→ K × (X ⊗ X).

Maths of computational dynamics. combines theories of: dynamical systems and state-based computation

Coalgebraic methods: Study the behavior of systems and processes (SaP) (by e.g. using notions of equivalence and bisimulation), modeled using various kinds of structures.

Theory of coalgebras: Formalize the concept of behavioral compatibility between systems. Application in software engineering.

Coalgebra consists of: state space, or set of states X, together with a structure map: X → F(X). The map describes the dynamics, i.e. function acting on states

Algebra: in functional programming language: data type inductively defined by constructors F(X) → X going “into” the data type

Coalgebra: in object-oriented programming language: class hides a state: get and set methods are destructors: X → F(X) going “out” of the class

programming language involves both a coalgebra and an algebra.

program: structured element of the algebra that arises (as so-called initial algebra) from the programming language that is being used.

Each language construct corresponds to certain dynamics (behaviour), captured via a coalgebra. The program’s behaviour is thus described by a coalgebra acting on the state space of the computer.

duality between structure (algebras) and behaviour (coalgebras)

Coalgebraic behaviour is generated by an algebraically structured program. Coalgebra is thus the study of states and their operations and properties.

state bisimilarity: states are observationally equivalent

Computer science is about generated behaviour observed on a screen or printer. What is the essence of computing? subject of computer science: generated behaviour

Computer programming: make a computer do certain things, i.e. to generate behaviour.