Kripke structure (model checking)
A Kripke structure is a variation of the transition system, originally proposed by Saul Kripke, used in model checking to represent the behavior of a system. It consists of a graph whose nodes represent the reachable states of the system and whose edges represent state transitions, together with a labelling function which maps each node to a set of properties that hold in the corresponding state. Temporal logics are traditionally interpreted in terms of Kripke structures. Formal definition. Let be a set of "atomic propositions", i.e. boolean expressions over variables, constants and predicate symbols. Clarke et  al. define a Kripke structure over as a 4-tuple consisting of Since is left-total, it is always possible to construct an infinite path through the Kripke structure. A deadlock state can be modeled by a single outgoing edge back to itself. The labeling function defines for each state the set of all atomic propositions that are valid in . A "path" of the structure is a sequence of states such that for each , holds. The "word" on the path is a sequence of sets of the atomic propositions which is an ω-word over alphabet . With this definition, a  Kripke structure (say, having only one initial state may be identified with a Moore machine with a singleton input alphabet, and with the output function being its labeling function. Example. Let the set of atomic propositions . modelling. The figure at right illustrates a Kripke structure , where Relation to other notions. Although this terminology is widespread in the model checking community, some textbooks on model checking do not define "Kripke structure" in this extended way (or at all in fact), but simply use the concept of a (labelled) transition system, which additionally has a set of actions, and the transition relation  is defined as a subset of , which they additionally extend to include a set of atomic propositions and a labeling function for the states as well ( as defined above.) In this approach, the binary relation obtained by abstracting away the action labels is called a state graph. Clarke et al. redefine a Kripke structure as a set of transitions (instead of just one), which is equivalent to the labeled transitions above, when they define the semantics of modal μ-calculus.