HOME
*





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 small-step semantics) formally describe how the ''individual steps'' of a computation take place in a computer-based system; by opposition natural semantics (or big-step 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]  


picture info

Formal Language
In logic, mathematics, computer science, and linguistics, a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules. The alphabet of a formal language consists of symbols, letters, or tokens that concatenate into strings of the language. Each string concatenated from symbols of this alphabet is called a word, and the words that belong to a particular formal language are sometimes called ''well-formed words'' or '' well-formed formulas''. A formal language is often defined by means of a formal grammar such as a regular grammar or context-free grammar, which consists of its formation rules. In computer science, formal languages are used among others as the basis for defining the grammar of programming languages and formalized versions of subsets of natural languages in which the words of the language represent concepts that are associated with particular meanings or semantics. In computational comple ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Algol 68
ALGOL 68 (short for ''Algorithmic Language 1968'') is an imperative programming language that was conceived as a successor to the ALGOL 60 programming language, designed with the goal of a much wider scope of application and more rigorously defined syntax and semantics. The complexity of the language's definition, which runs to several hundred pages filled with non-standard terminology, made compiler implementation difficult and it was said it had "no implementations and no users". This was only partly true; ALGOL 68 did find use in several niche markets, notably in the United Kingdom where it was popular on International Computers Limited (ICL) machines, and in teaching roles. Outside these fields, use was relatively limited. Nevertheless, the contributions of ALGOL 68 to the field of computer science have been deep, wide-ranging and enduring, although many of these contributions were only publicly identified when they had reappeared in subsequently developed programming ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Relation (mathematics)
In mathematics, a relation on a set may, or may not, hold between two given set members. For example, ''"is less than"'' is a relation on the set of natural numbers; it holds e.g. between 1 and 3 (denoted as 1 is an asymmetric relation, but ≥ is not. Again, the previous 3 alternatives are far from being exhaustive; as an example over the natural numbers, the relation defined by is neither symmetric nor antisymmetric, let alone asymmetric. ; : for all , if and then . A transitive relation is irreflexive if and only if it is asymmetric. For example, "is ancestor of" is a transitive relation, while "is parent of" is not. ; : for all , if then or . This property is sometimes called "total", which is distinct from the definitions of "total" given in the section . ; : for all , or . This property is sometimes called "total", which is distinct from the definitions of "total" given in the section . ; : every nonempty subset of contains a minimal element with respect t ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Inference Rule
In the philosophy of logic, a rule of inference, inference rule or transformation rule is a logical form consisting of a function which takes premises, analyzes their syntax, and returns a conclusion (or conclusions). For example, the rule of inference called ''modus ponens'' takes two premises, one in the form "If p then q" and another in the form "p", and returns the conclusion "q". The rule is valid with respect to the semantics of classical logic (as well as the semantics of many other non-classical logics), in the sense that if the premises are true (under an interpretation), then so is the conclusion. Typically, a rule of inference preserves truth, a semantic property. In many-valued logic, it preserves a general designation. But a rule of inference's action is purely syntactic, and does not need to preserve any semantic property: any function from sets of formulae to formulae counts as a rule of inference. Usually only rules that are recursive are important; i.e. rule ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




State Transition System
In theoretical computer science, a transition system is a concept used in the study of computation. It is used to describe the potential behavior of discrete systems. 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, the system is essentially unlabeled, and a simpler definition that omits the labels is possible. Transition systems coincide mathematically with abstract rewriting systems (as explained further in this article) and directed graphs. They differ from finite-state automata 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 ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Inductive Definition
In mathematics and computer science, a recursive definition, or inductive definition, is used to define the elements in a set in terms of other elements in the set ( Aczel 1977:740ff). Some examples of recursively-definable objects include factorials, natural numbers, Fibonacci numbers, and the Cantor ternary set. A recursive definition of a function defines values of the function for some inputs in terms of the values of the same function for other (usually smaller) inputs. For example, the factorial function ''n''! is defined by the rules :0! = 1. :(''n'' + 1)! = (''n'' + 1)·''n''!. This definition is valid for each natural number ''n'', because the recursion eventually reaches the base case of 0. The definition may also be thought of as giving a procedure for computing the value of the function ''n''!, starting from ''n'' = 0 and proceeding onwards with ''n'' = 1, ''n'' = 2, ''n'' = 3 etc. The recursion theorem st ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Gilles Kahn
Gilles Kahn (April 17, 1946 – February 9, 2006) was a French computer scientist. He notably introduced Kahn process networks as a model for parallel processing and natural semantics for describing the operational semantics of programming languages. Gilles Kahn was born in Paris. He studied at the École polytechnique (X1964) and at Stanford. He became a member of the French Academy of Sciences in 1997. He was president and director-general of INRIA from 2004 to 2006. He died in Garches Garches () is a commune in the western suburbs of Paris, France. It is located from the centre of Paris. Garches has remained largely residential, but is also the location of Raymond Poincaré University Hospital, which specialises in traumat .... External links Page at the French academy of sciences 1946 births 2006 deaths French computer scientists Members of the French Academy of Sciences École Polytechnique alumni {{France-compu-bio-stub ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Matthias Felleisen
Matthias Felleisen is a German-American computer science professor and author. He grew up in Germany and immigrated to the US when he was 21 years old. He received his PhD from Indiana University under the direction of Daniel P. Friedman. After serving as professor for 14 years in the Computer Science Department of Rice University, Felleisen joined the Khoury College of Computer Sciences at Northeastern University in Boston, Massachusetts as Trustee Professor. Felleisen's interests include programming languages, including software tools, program design, software contracts, and many more. In the 1990s, Felleisen launched PLT and TeachScheme! (later ProgramByDesign and eventually giving rise to the Bootstrap project ) with the goal of teaching program-design principles to beginners and to explore the use of Scheme to produce large systems. As part of this effort, he authored '' How to Design Programs'' (MIT Press, 2001) with Findler, Flatt, and Krishnamurthi. For his dis ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Gordon Plotkin
Gordon David Plotkin, (born 9 September 1946) is a theoretical computer scientist in the School of Informatics at the University of Edinburgh. Plotkin is probably best known for his introduction of structural operational semantics (SOS) and his work on denotational semantics. In particular, his notes on ''A Structural Approach to Operational Semantics'' were very influential. He has contributed to many other areas of computer science. Education Plotkin was educated at the University of Glasgow and the University of Edinburgh, gaining his Bachelor of Science degree in 1967 and PhD in 1972 supervised by Rod Burstall. Career and research Plotkin has remained at Edinburgh, and was, with Burstall and Robin Milner, a co-founder of the Laboratory for Foundations of Computer Science (LFCS). His former doctoral students include Luca Cardelli, Philippa Gardner, Doug Gurr, Eugenio Moggi, and Lǐ Wèi. Awards and honours Plotkin was elected a Fellow of the Royal Society (FRS) in ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]