In computer science, operational semantics is a way to give meaning to computer programs in a mathematically rigorous way. 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 meaning of the program.
| Property | Value |
| dbpprop:abstract
|
- In computer science, operational semantics is a way to give meaning to computer programs in a mathematically rigorous way. 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 meaning of the program. In the context of functional programs, the final step in a terminating sequence returns the value of the program. (In general there can be many return values for a single program, because the program could be nondeterministic, and even for a deterministic program there can be many computation sequences since the semantics may not specify exactly what sequence of operations arrives at that value. ) For the first time, the concept of operational semantics was used in defining the semantics of Algol 68. The following statement is a quote from the revised ALGOL 68 report: The meaning of a program in the strict language is explained in terms of a hypothetical computer which performs the set of actions which constitute the elaboration of that program. The first use of the term "operational semantics" in its present meaning is attributed to Dana Scott. What follows is a quote from Scott's seminal paper on formal semantics, in which he mentions the "operational" aspects of semantics. It is all very well to aim for a more ‘abstract’ and a ‘cleaner’ approach to semantics, but if the plan is to be any good, the operational aspects cannot be completely ignored. Perhaps the first formal incarnation of operational semantics was that of the lambda calculus. Abstract machines in the tradition of the SECD machine are also closely related.
- Die operationelle Semantik ist eine Technik der Informatik um die Bedeutung beziehungsweise die Semantik von Computerprogrammen zu beschreiben. Die Wirkung eines Programms wird aufgefasst als schrittweise Zustandsänderung einer abstrakten Maschine. Operationelle Semantik wird verwendet, um Eigenschaften über einzelne Programme nachzuweisen oder Programme zueinander in Beziehung zu setzen. Zentral für die operationelle Semantik ist der Begriff des Programmzustands. Ein Zustand beschreibt dabei (in den meisten Fällen) eine Belegung der Programmvariablen sowie eine Position im Programm. Des Weiteren wird definiert, wann und wie sich Zustände ändern. Dies geschieht entweder mit Hilfe einer Zustandsübergangsfunktion oder durch sogenannte Inferenzregeln (also regelbasiert). Zustandsübergangsfunktion bzw. Inferenzregeln definieren einen Interpreter. Um mit der operationellen Semantik eines Programms zu arbeiten, wird in der Regel ein Stück weit vom Originalprogramm abstrahiert. Es wird ein abstraktes Programm aufgestellt, das äquivalent zum Original (dem konkreten Programm) ist und das durch einen abstrakten Interpreter ausgeführt werden kann. Die Wirkungen, die dieses abstrakte Programm auf die Zustände der abstrakten Maschine erzeugt, sind dann äquivalent zu den Zuständen, die erhalten werden, wenn das konkrete Programm ausgeführt wird. Ein Spezialfall der Operationellen Semantik ist die Strukturell Operationelle Semantik (SOS), die von Gordon Plotkin eingeführt wurde. Beispiele für die Verwendung von operationeller Semantik sind die Semantikspezifikationen von Algol 60, PL/I oder VDL. Neben der operationellen Semantik gibt es auch die denotationelle Semantik und die axiomatische Semantik, um die Semantik von Computerprogrammen zu beschreiben. Siehe auch: Formale Semantik axiomatische Semantik denotationelle Semantik
- En informatique, la sémantique opérationnelle est l'une des approches qui servent à donner une signification aux programmes informatiques d'une manière rigoureuse, mathématiquement parlant. Une sémantique opérationnelle d'un langage de programmation particulier décrit comment chaque programme valide du langage doit être interprété en termes de suite d'états successifs de la machine. Cette suite est la signification du programme. Dans le cas d'un programme fonctionnel, l'état final d'une suite qui termine donne la valeur de retour du programme. (Dans le cas général, il peut y avoir plusieurs suites de calculs et plusieurs valeurs de retour pour un seul programme, parce que celui-ci pourrait être non-déterministe. ) Un des moyens les plus courants pour définir rigoureusement une sémantique opérationnelle est de fournir un système de transition d'états rendant compte du comportement attendu du langage considéré. Une telle définition autorise une analyse formelle du langage, permettant l'étude de relations entre les programmes. Parmi les relations importantes, on trouve : les pré-ordres de simulation et les bisimulations, qui sont très utiles dans le cadre du parallélisme. Définir une sémantique opérationnelle au travers d'un système de transition se fait habituellement en donnant une définition inductive de l'ensemble des transitions possibles. Habituellement, cela prend la forme d'un ensemble de règles d'inférence définissant les transitions valides du système. La sémantique opérationnelle est reliée à la sémantique dénotationnelle au travers du concept d'abstraction.
- 操作的意味論(そうさてきいみろん、Operational Semantics)とは、プログラムの意味を数学的に厳密に与える計算機科学の手法の一種(プログラム意味論参照)。 プログラミング言語の操作的意味論は、有効なプログラムを計算ステップのシーケンスとして解釈する様子を記述する。そのようなシーケンスがプログラムの意味となる。関数型言語では、シーケンスの最後にはプログラムの値が返される。(一般にプログラムには非決定性があるため、ひとつのプログラムが返す値はひとつではなく、計算シーケンスも様々であることがある。) 典型的な操作的意味論の厳密な定義を与えたのは Gordon Plotkin の 1981年の論文 "A Structural Approach to Operational Semantics"(操作的意味論への構造的アプローチ)が最初である。それは、対象言語に対応する状態遷移系を用意するものであった。そのような定義により言語の形式的分析が可能となり、プログラム間の関係を研究することが可能となった。重要な関係として Simulation Preorderと双模倣性がある。これらは特に並行性を扱う場合に有用である。並行性に関する意味論を扱う別の方法として、アクターモデルのイベント構造を利用する方法がある。 状態遷移系による操作的意味論の定義は、一般に可能な遷移の集合の帰納的定義を与えることによってなされる。これは通常、系の正しい遷移群を定義する推論規則の形式となる。 世界初の操作的意味論はラムダ計算のそれであった。SECDマシンの流れを汲む抽象機械も極めて近い関係にある。
- Semântica operacional é uma das abordagens de semântica formal, em que o significado de uma construção da linguagem é especificado pela computação que ela induz quando executada em uma máquina hipotética. A semãntica operacional preocupa-se mais em como os programas são executados do que meramente com os resultados destas computações. A semântica formal é uma das áreas de estudo de ciência da computação, preocupada em atribuir significado às contruções das linguagens de programação.
- 操作语义学是计算机科学中的一个概念,它是使得计算机程序在数学上更加严谨的一种手段。其它类似的手段包括提供形式语义学,包括公理语义学和指称语义。 一个计算机语言的操作语义描述一段合理的程序是怎样被理解为一系列计算机步骤的。这些步骤就是这个程序的意义。在函數程式語言中结束系列中的最后一步是回报程序的值。(由于一个程序可能是非非決定的,一般来说一个程序能够有许多不同的计算步骤和许多不同的回报值。) 操作语义最早被用来定义Algol 68的语义。下面这句话引用修正的ALGOL 68报告: 一个使用严格语言编写的程序的意义是通过一个假设的计算机来执行该程序的组成部分时完成的行动来解释的。(Algol68,第二章) 丹纳·司科特是第一个在今天的这个定义下使用操作语义这个概念的(Plotkin04b)。以下是司科特关于形式语义学的讲稿,其中他提到了语义的“操作”观点。 把目光注意使得语义在更‘抽象’和更‘清晰’可以,但是假如把操作方面完全忽略的话这个计划毫无用处。(Scott70)
|
| dbpprop:hasPhotoCollection
| |
| dbpprop:reference
| |
| rdf:type
| |
| rdfs:comment
|
- In computer science, operational semantics is a way to give meaning to computer programs in a mathematically rigorous way. 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 meaning of the program.
- Die operationelle Semantik ist eine Technik der Informatik um die Bedeutung beziehungsweise die Semantik von Computerprogrammen zu beschreiben. Die Wirkung eines Programms wird aufgefasst als schrittweise Zustandsänderung einer abstrakten Maschine. Operationelle Semantik wird verwendet, um Eigenschaften über einzelne Programme nachzuweisen oder Programme zueinander in Beziehung zu setzen. Zentral für die operationelle Semantik ist der Begriff des Programmzustands.
- En informatique, la sémantique opérationnelle est l'une des approches qui servent à donner une signification aux programmes informatiques d'une manière rigoureuse, mathématiquement parlant. Une sémantique opérationnelle d'un langage de programmation particulier décrit comment chaque programme valide du langage doit être interprété en termes de suite d'états successifs de la machine. Cette suite est la signification du programme.
- Semântica operacional é uma das abordagens de semântica formal, em que o significado de uma construção da linguagem é especificado pela computação que ela induz quando executada em uma máquina hipotética. A semãntica operacional preocupa-se mais em como os programas são executados do que meramente com os resultados destas computações.
|
| rdfs:label
|
- Operational semantics
- Operationelle Semantik
- Sémantique opérationnelle
- 操作的意味論
- Semântica operacional
- 操作语义学
|
| owl:sameAs
| |
| skos:subject
| |
| foaf:page
| |
| is dbpprop:field
of | |
| is dbpprop:otheruses4Property
of | |
| is dbpprop:redirect
of | |
| is owl:sameAs
of | |