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 if they, assuming we view them as playing a ''game'' according to some rules, match each other's moves. In this sense, each of the systems cannot be distinguished from the other by an observer. Formal definition Given a labelled state transition system (S, \Lambda, →), where S is a set of states, \Lambda is a set of labels and → is a set of labelled transitions (i.e., a subset of S \times \Lambda \times S), a bisimulation is a binary relation R \subseteq S \times S, such that both R and its converse R^T are simulations. From this follows that the symmetric closure of a bisimulation is a bisimulation, and that each symmetric simulation is a bisimulation. Thus some authors define bisimulation as a symmetric simulation. Equivale ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Kripke Semantics
Kripke semantics (also known as relational semantics or frame semantics, and often confused with possible world semantics) is a formal semantics for nonclassical logic systems created in the late 1950s and early 1960s by Saul Kripke and André Joyal. It was first conceived for modal logics, and later adapted to intuitionistic logic and other nonclassical systems. The development of Kripke semantics was a breakthrough in the theory of nonclassical logics, because the model theory of such logics was almost nonexistent before Kripke (algebraic semantics existed, but were considered 'syntax in disguise'). Semantics of modal logic The language of propositional modal logic consists of a countably infinite set of propositional variables, a set of truthfunctional connectives (in this article \to and \neg), and the modal operator \Box ("necessarily"). The modal operator \Diamond ("possibly") is (classically) the dual of \Box and may be defined in terms of necessity like so: \Di ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Stutter Bisimulation
In theoretical computer science, a stutter bisimulation'' Principles of Model Checking'', by Christel Baier and JoostPieter Katoen, The MIT Press, Cambridge, Massachusetts. is defined in a coinductive manner, as is ''bisimulation''. Let TS=(S,Act,→,I,AP,L) be a transition system. A stutter bisimulation for TS is a binary relation In mathematics, a binary relation associates elements of one set, called the ''domain'', with elements of another set, called the ''codomain''. A binary relation over sets and is a new set of ordered pairs consisting of elements in and i ... R on S such that for all (s1,s2) which is in R: # L(s1) = L(s2). # If s1' is in Post(s1) with (s1',s2) is not in R, then there exists a finite path fragment s2u1…uns2' with n≥0 and (s1,ui) is in R, and (s1',s2') is in R. # If s2' is in Post(s2) with (s1,s2') is not in R, then there exists a finite path fragment s1v1…vns1' with n≥0 and (vi,s2) is in R, and (s1',s2') is in R. References {{refl ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Up To
Two mathematical objects ''a'' and ''b'' are called equal up to an equivalence relation ''R'' * if ''a'' and ''b'' are related by ''R'', that is, * if ''aRb'' holds, that is, * if the equivalence classes of ''a'' and ''b'' with respect to ''R'' are equal. This figure of speech is mostly used in connection with expressions derived from equality, such as uniqueness or count. For example, ''x'' is unique up to ''R'' means that all objects ''x'' under consideration are in the same equivalence class with respect to the relation ''R''. Moreover, the equivalence relation ''R'' is often designated rather implicitly by a generating condition or transformation. For example, the statement "an integer's prime factorization is unique up to ordering" is a concise way to say that any two lists of prime factors of a given integer are equivalent with respect to the relation ''R'' that relates two lists if one can be obtained by reordering (permutation) from the other. As another example, the sta ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

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 can match all of its moves. The basic definition relates states within one transition system, but this is easily adapted to relate two separate transition systems by building a system consisting of the disjoint union of the corresponding components. Formal definition Given a labelled state transition system (S, \Lambda, →), where S is a set of states, \Lambda is a set of labels and → is a set of labelled transitions (i.e., a subset of S \times \Lambda \times S), a relation R \subseteq S \times S is a simulation if and only if for every pair of states (p,q) in R and all labels α in \Lambda: : if p \overset p', then there is q \overset q' such that (p',q') \in R Equivalently, in terms of relational composition: :R^\,;\, ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

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 execution and procedures, rather than by attaching mathematical meanings to its terms (denotational semantics). Operational semantics are classified in two categories: structural operational semantics (or smallstep semantics) formally describe how the ''individual steps'' of a computation take place in a computerbased system; by opposition natural semantics (or bigstep semantics) describe how the ''overall results'' of the executions are obtained. Other approaches to providing a formal semantics of programming languages include axiomatic semantics and denotational semantics. The operational semantics for a programming language describes how a valid program is interpreted as sequences of computational steps. These sequences then ''are'' the m ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Fcoalgebra
In mathematics, specifically in category theory, an Fcoalgebra is a Mathematical structure, structure defined according to a functor F, with specific properties as defined below. For both algebraic structure, algebras and coalgebras, a functor is a convenient and general way of organizing a Signature (logic), signature. This has applications in computer science: examples of coalgebras include Lazy evaluation, lazy, Recursion_(computer_science)#Recursive_data_structures_.28structural_recursion.29, infinite data structures, such as Stream (computing), streams, and also State transition system, transition systems. Fcoalgebras are Dual (category theory), dual to Falgebra, Falgebras. Just as the class of all algebraic structure, algebras for a given signature and equational theory form a Variety (universal algebra), variety, so does the class of all Fcoalgebras satisfying a given equational theory form a covariety, where the signature is given by F. Definition Let :F : \mathca ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Principles Of Model Checking
''Principles of Model Checking'' is a textbook on model checking, an area of computer science that automates the problem of determining if a machine meets specification requirements. It was written by Christel Baier and JoostPieter Katoen, and published in 2008 by MIT Press. Synopsis The introduction and first chapter outline the field of model checking: a model of a machine or process can be analysed to see if desirable properties hold. For instance, a vending machine might satisfy the property "the balance can never fall below €0,00". A video game might enforce the rule "if the player has 0 lives then the game ends in a loss". Both the vending machine and video game can be modelled as transition systems. Model checking is the process of describing such requirements in mathematical language, and automating proofs that the model satisfies the requirements, or discovery of counterexamples if the model is faulty. The second chapter focuses on creating an appropriate model for ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Binary Relation
In mathematics, a binary relation associates elements of one set, called the ''domain'', with elements of another set, called the ''codomain''. A binary relation over sets and is a new set of ordered pairs consisting of elements in and in . It is a generalization of the more widely understood idea of a unary function. It encodes the common concept of relation: an element is ''related'' to an element , if and only if the pair belongs to the set of ordered pairs that defines the ''binary relation''. A binary relation is the most studied special case of an ary relation over sets , which is a subset of the Cartesian product X_1 \times \cdots \times X_n. An example of a binary relation is the "divides" relation over the set of prime numbers \mathbb and the set of integers \mathbb, in which each prime is related to each integer that is a multiple of , but not to an integer that is not a multiple of . In this relation, for instance, the prime number 2 is related to numbe ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Johan Van Benthem (logician)
Johannes Franciscus Abraham Karel (Johan) van Benthem (born 12 June 1949 in Rijswijk) is a University Professor (') of logic at the University of Amsterdam at the Institute for Logic, Language and Computation and professor of philosophy at Stanford University (at CSLI). He was awarded the Spinozapremie in 1996 and elected a Foreign Fellow of the American Academy of Arts & Sciences in 2015. Biography Van Benthem studied physics (B.Sc. 1969), philosophy (M.A. 1972) and mathematics ( M.Sc. 1973) at the University of Amsterdam and received a PhD from the same university under supervision of Martin Löb in 1977. Before becoming University Professor in 2003, he held appointments at the University of Amsterdam (1973–1977), at the University of Groningen (1977–1986), and as a professor at the University of Amsterdam (1986–2003). In 1992 he was elected member of the Royal Netherlands Academy of Arts and Sciences. Van Benthem is known for his research in the area of modal lo ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Commutative Diagram
350px, The commutative diagram used in the proof of the five lemma. In mathematics, and especially in category theory, a commutative diagram is a diagram such that all directed paths in the diagram with the same start and endpoints lead to the same result. It is said that commutative diagrams play the role in category theory that equations play in algebra. Description A commutative diagram often consists of three parts: * objects (also known as ''vertices'') * morphisms (also known as ''arrows'' or ''edges'') * paths or composites Arrow symbols In algebra texts, the type of morphism can be denoted with different arrow usages: * A monomorphism may be labeled with a \hookrightarrow or a \rightarrowtail. * An epimorphism may be labeled with a \twoheadrightarrow. * An isomorphism may be labeled with a \overset. * The dashed arrow typically represents the claim that the indicated morphism exists (whenever the rest of the diagram holds); the arrow may be optionally labeled as \exi ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Programming Language
A programming language is a system of notation for writing computer programs. Most programming languages are textbased formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming language is usually split into the two components of syntax (form) and semantics (meaning), which are usually defined by a formal language. Some languages are defined by a specification document (for example, the C programming language is specified by an ISO Standard) while other languages (such as Perl) have a dominant Programming language implementation, implementation that is treated as a reference implementation, reference. Some languages have both, with the basic language defined by a standard and extensions taken from the dominant implementation being common. Programming language theory is the subfield of computer science that studies the design, implementation, analysis, characterization, and classification of programming lan ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 

Modal Logic
Modal logic is a collection of formal systems developed to represent statements about necessity and possibility. It plays a major role in philosophy of language, epistemology, metaphysics, and natural language semantics. Modal logics extend other systems by adding unary operators \Diamond and \Box, representing possibility and necessity respectively. For instance the modal formula \Diamond P can be read as "possibly P" while \Box P can be read as "necessarily P". Modal logics can be used to represent different phenomena depending on what kind of necessity and possibility is under consideration. When \Box is used to represent epistemic necessity, \Box P states that P is epistemically necessary, or in other words that it is known. When \Box is used to represent deontic necessity, \Box P states that P is a moral or legal obligation. In the standard relational semantics for modal logic, formulas are assigned truth values relative to a '' possible world''. A formula's truth value ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] 