State Transition System
   HOME

TheInfoList



OR:

In
theoretical computer science Theoretical computer science (TCS) is a subset of general computer science and mathematics that focuses on mathematical aspects of computer science such as the theory of computation, lambda calculus, and type theory. It is difficult to circumsc ...
, a transition system is a concept used in the study of
computation Computation is any type of arithmetic or non-arithmetic calculation that follows a well-defined model (e.g., an algorithm). Mechanical or electronic devices (or, historically, people) that perform computations are known as ''computers''. An es ...
. It is used to describe the potential behavior of
discrete system In theoretical computer science, a discrete system is a system with a countable number of states. Discrete systems may be contrasted with continuous systems, which may also be called analog systems. A final discrete system is often modeled with a ...
s. It consists of states and transitions between states, which may be labeled with labels chosen from a set; the same label may appear on more than one transition. If the label set is a
singleton Singleton may refer to: Sciences, technology Mathematics * Singleton (mathematics), a set with exactly one element * Singleton field, used in conformal field theory Computing * Singleton pattern, a design pattern that allows only one instance ...
, the system is essentially unlabeled, and a simpler definition that omits the labels is possible. Transition systems coincide mathematically with
abstract rewriting system In mathematical logic and theoretical computer science, an abstract rewriting system (also (abstract) reduction system or abstract rewrite system; abbreviated ARS) is a formalism that captures the quintessential notion and properties of rewriting s ...
s (as explained further in this article) and
directed graph In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs. Definition In formal terms, a directed graph is an ordered pa ...
s. They differ from
finite-state automata A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
in several ways: * The set of states is not necessarily finite, or even countable. * The set of transitions is not necessarily finite, or even countable. * No "start" state or "final" states are given. Transition systems can be represented as directed graphs.


Formal definition

Formally, a transition system is a pair (S, \rightarrow) where S is a set of states and \rightarrow is a relation of state transitions (i.e., a subset of S \times S). A transition from state p to state q (i.e., (p, q) \in \rightarrow) is written as p \rightarrow q. A labelled transition system is a tuple (S, \Lambda, \rightarrow) where S is a set of states, \Lambda is a set of labels, and \rightarrow is a relation of labelled transitions (i.e., a subset of S \times \Lambda \times S). (p, \alpha, q) \in \rightarrow is written as :: p \overset q \, and represents a transition from state p to state q with label \alpha. Labels can represent different things depending on the language of interest. Typical uses of labels include representing input expected, conditions that must be true to trigger the transition, or actions performed during the transition. Labelled transitions systems were originally introduced as ''named'' transition systems.


Special cases

* If, for any given p and \alpha, there exists only a single tuple (p, \alpha, q) in \rightarrow, then one says that \alpha is ''deterministic'' (for p). * If, for any given p and \alpha, there exists at least one tuple (p, \alpha, q) in \rightarrow, then one says that \alpha is ''executable'' (for p).


Category theoretic formalization

The formal definition can be rephrased in terms of category theory. Every labelled state transition system (S, \Lambda, \rightarrow) is bijectively a function \xi_ from S to the
powerset In mathematics, the power set (or powerset) of a set is the set of all subsets of , including the empty set and itself. In axiomatic set theory (as developed, for example, in the ZFC axioms), the existence of the power set of any set is postu ...
of S indexed by \Lambda written as \mathcal(\Lambda \times S), defined by :: p \mapsto \.. Therefore a labelled state transition system is an
F-coalgebra In mathematics, specifically in category theory, an F-coalgebra is a structure defined according to a functor F, with specific properties as defined below. For both algebras and coalgebras, a functor is a convenient and general way of organizing a ...
for the functor P(\Lambda \times \rightarrow).


Relation between labelled and unlabelled transition system

There are many relations between these concepts. Some are simple, such as observing that a labelled transition system where the set of labels consists of only one element is equivalent to an unlabelled transition system. However, not all these relations are equally trivial.


Comparison with abstract rewriting systems

As a mathematical object, an unlabeled transition system is identical with an (unindexed)
abstract rewriting system In mathematical logic and theoretical computer science, an abstract rewriting system (also (abstract) reduction system or abstract rewrite system; abbreviated ARS) is a formalism that captures the quintessential notion and properties of rewriting s ...
. If we consider the rewriting relation as an indexed set of relations, as some authors do, then a labeled transition system is equivalent to an abstract rewriting system with the indices being the labels. The focus of the study and the terminology are different however. In a transition system one is interested in interpreting the labels as actions, whereas in an abstract rewriting system the focus is on how objects may be transformed (rewritten) into others.


Extensions

In
model checking In computer science, model checking or property checking is a method for checking whether a finite-state model of a system meets a given specification (also known as correctness). This is typically associated with hardware or software systems ...
, a transition system is sometimes defined to include an additional labeling function for the states as well, resulting in a notion that encompasses that of
Kripke structure : ''This article describes Kripke structures as used in model checking. For a more general description, see Kripke semantics''. A Kripke structure is a variation of the transition system, originally proposed by Saul Kripke, used in model checking ...
.
Action language In computer science, an action language is a language for specifying state transition systems, and is commonly used to create formal models of the effects of actions on the world. Action languages are commonly used in the artificial intelligence ...
s are extensions of transition systems, adding a set of ''fluents'' ''F'', a set of values ''V'', and a function that maps ''F'' × ''S'' to ''V''.Micheal Gelfond, Vladimir Lifschitz (1998) "Action Languages", ''Linköping Electronic Articles in Computer and Information Science'', vol. 3, nr. ''16''.


See also

*
Transition monoid In mathematics and theoretical computer science, a semiautomaton is a deterministic finite automaton having inputs but no output. It consists of a set ''Q'' of states, a set Σ called the input alphabet, and a function ''T'': ''Q'' × Σ → ''Q'' ...
*
Transformation monoid In algebra, a transformation semigroup (or composition semigroup) is a collection of transformations ( functions from a set to itself) that is closed under function composition. If it includes the identity function, it is a monoid, called a transfo ...
*
Semigroup action In algebra and theoretical computer science, an action or act of a semigroup on a set is a rule which associates to each element of the semigroup a transformation of the set in such a way that the product of two elements of the semigroup (using t ...
*
Simulation preorder In theoretical computer science a simulation is a relation between state transition systems associating systems that behave in the same way in the sense that one system ''simulates'' the other. Intuitively, a system simulates another system if it ...
*
Bisimulation In theoretical computer science a bisimulation is a binary relation between state transition systems, associating systems that behave in the same way in that one system simulates the other and vice versa. Intuitively two systems are bisimilar i ...
*
Operational semantics Operational semantics is a category of formal programming language semantics in which certain desired properties of a program, such as correctness, safety or security, are verified by constructing proofs from logical statements about its execu ...
*
Kripke structure : ''This article describes Kripke structures as used in model checking. For a more general description, see Kripke semantics''. A Kripke structure is a variation of the transition system, originally proposed by Saul Kripke, used in model checking ...
*
Finite-state machine A finite-state machine (FSM) or finite-state automaton (FSA, plural: ''automata''), finite automaton, or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number o ...
*
Modal μ-calculus In theoretical computer science, the modal μ-calculus (Lμ, Lμ, sometimes just μ-calculus, although this can have a more general meaning) is an extension of propositional modal logic (with many modalities) by adding the least fixed point opera ...


References

{{Authority control Models of computation