Academia.eduAcademia.edu

Operational Semantics

description3,217 papers
group50 followers
lightbulbAbout this topic
Operational semantics is a formal method in computer science that defines the behavior of programming languages by describing the execution of their programs on abstract machines. It provides a mathematical framework for understanding how programs operate through state transitions, enabling the analysis and verification of program correctness and behavior.
lightbulbAbout this topic
Operational semantics is a formal method in computer science that defines the behavior of programming languages by describing the execution of their programs on abstract machines. It provides a mathematical framework for understanding how programs operate through state transitions, enabling the analysis and verification of program correctness and behavior.

Key research themes

1. How can operational semantics effectively model concurrency and priority in programming languages targeting hardware and parallel systems?

This theme focuses on developing operational semantics frameworks that accurately capture the behavior of concurrent and parallel constructs in languages designed for hardware synthesis and parallel execution. It is essential for ensuring correctness and facilitating verification in embedded and high-assurance systems. It also addresses the challenges posed by priority mechanisms and synchronization in concurrent computations.

Key finding: This work presents an operational semantics for Handel-C, a C-like hardware compilation language with channel communication and parallel constructs, targeting synchronous hardware. It specifically addresses the semantics of... Read more
Key finding: This paper proposes the LAGC (Locally Abstract, Globally Concrete) trace semantics framework, which separates local evaluation and global compositional traces enriched with event descriptors and continuation markers. By... Read more
Key finding: This paper develops an operational semantics for UML 2.0 Interactions by translating them into classical interaction models using pomsets with events representing message sends and receives. It defines compositional operators... Read more
Key finding: The paper extends modular statecharts with concurrency and local variables and provides a strict operational semantics that disallows transition conflicts in simulation, supporting arbitrary interleavings of concurrently... Read more

2. How can operational semantics frameworks be constructed to verify program correctness across diverse programming paradigms, including iteration and recursion, while supporting formal reasoning and proof mechanization?

This theme addresses designing operational semantics and reasoning techniques that enable sound and complete verification methods for fundamental programming constructs like loops and recursion. It emphasizes language-independent, robust frameworks amenable to mechanized proofs in proof assistants, thus reducing the complexity and redundancy in verifying programs across different paradigms such as imperative and functional languages.

Key finding: The paper proposes a generic reasoning technique based on big-step operational semantics that uniformly handles iteration and recursion in any programming language. By defining a parameterized predicate on semantics rules and... Read more
Key finding: This work introduces 'ert', a refinement type theory allowing explicit proofs of refinement properties, supporting rich logics with quantifiers and induction, and avoiding reliance on SMT solvers. It shows semantic soundness... Read more
Key finding: This paper develops a fully small-step operational semantics for the graph programming language GP 2, resolving shortcomings in prior semantics that led to blocking or stuck configurations. By employing stacks of host graphs... Read more
Key finding: The paper formulates a functorial approach to abstract interpretation within category theory, expressing program semantics as oplax functors in Pos and semantic abstraction as lax natural transformations. This categorical... Read more

3. What roles do operational semantics principles and structural approaches play in defining, reasoning about, and unifying argumentation and language semantics?

This theme explores the use of operational semantics methodology and structurally principled frameworks to capture complex semantic phenomena in argumentation theory, logic, and language. It covers the application of relational views, fixed point games, and structural induction to unify diverse semantics, handle ambiguity, priority, and to integrate syntax with denotational and operational perspectives for deeper understanding and verification.

Key finding: The paper provides a foundational account of Structural Operational Semantics (SOS), showing how operational semantics can be presented as inference rules defining small-step transitions, enabling faithful correspondence to... Read more
Key finding: This paper generalizes the classical modal µ-calculus to a non-distributive, lattice-based setting relevant to categorization theory, and introduces an evaluation game semantics that correctly characterizes least and greatest... Read more
Key finding: The paper introduces weakly complete semantics in argumentation where undecidedness blocking allows arguments attacked by undecided arguments to still be accepted. This weaker admissibility notion addresses longstanding... Read more
Key finding: This paper proposes viewing argumentation semantics as relational databases encapsulating argument graphs and their labeling functions. It formalizes a tuple relational calculus for argumentation semantics, showing that... Read more

All papers in Operational Semantics

Contemporary debates surrounding large language models (LLMs) oscillate between two inadequate extremes: reductive mechanistic accounts that deny meaningful semantic organization, and anthropomorphic accounts that prematurely attribute... more
We propose a new framework for the syntax and semantics of Weak Hereditarily Harrop logic programming with constraints, based on resolution over -categories: ÿnite product categories with canonical structure. Constraint information is... more
We have recently introduced the "continuation semantics for concurrency" (CSC) technique in an attempt to exploit the benefits of using continuations in concurrent systems development. CSC is a general technique for denotational semantics... more
The problem of legacy systems collaboration is being solved. Particularly we look at the collaboration as workflow in a distributed and heterogeneous environment. Attention is paid to the description of semantics for workflow process... more
The program dependence graph (PDG) represents data and control dependence between statements in a program. This paper presents an operational semantics of program dependence graphs. Since PDGs exclude artificial order of statements that... more
The program dependence graph (PDG) represents data and control dependence between statements in a program. This paper presents an operational semantics of program dependence graphs. Since PDGs exclude artificial order of statements that... more
We propose a dependent type theory that integrates programming, specifications, and reasoning about higher-order concurrent programs with shared transactional memory. The design builds upon our previous work on Hoare Type Theory (HTT),... more
In this work, we present a family of operational semantics that gradually approximates the realistic program behaviors in the C/C++11 memory model. Each semantics in our framework is built by elaborating and combining two simple... more
We propose a dependent type theory that integrates programming, specifications, and reasoning about higher-order concurrent programs with shared transactional memory. The design builds upon our previous work on Hoare Type Theory (HTT),... more
A model checker is an automatic tool that traverses a specific structure (normally a Kripke structure referred as the model M ) to check the satisfaction of some (temporal) logical property f . This is formally stated as M | f . For some... more
The development of distributed real-time embedded systems presents a significant practical challenge both because of the complexity of distributed computation and because of the need to rapidly assess a wide variety of design alternatives... more
When implementing a new programming language construct, it is important to consider and understand its implications on program semantics. Simply hacking compiler code, even in combination with the use of a debugger, does not allow for... more
We present a process algebra for modeling and reasoning about Mobile Ad hoc Networks (MANETs) and their protocols. In our algebra we model the essential modeling concepts of ad hoc networks, i.e. local broadcast, connectivity of nodes and... more
We investigate the effects of semantically-based crossover operators in genetic programming, applied to real-valued symbolic regression problems. We propose two new relations derived from the semantic distance between subtrees, known as... more
We introduce the notion of deferential logic programs and we define an operator for composing them in a hierarchical fashion. The semantics of this composition operator is reminiscent of the semantics of inheritance in the object oriented... more
ii Dedication To my parents iii Acknowledgements Thanks are first due to my adviser, Tim Sheard without whose help and encouragement none of this would be possible. Acknowledgments and thanks are due to Walid Taha: much of the research... more
Proposed and developed is the language Service Composition (SC) CoJava, which extends the programming language Java with (1) a modular service composition framework; (2) an extensible library of supply-chain modeling components such as... more
The majority of abstract interpretation models defined for Prolog use abstract operations which do not have explicit counterpart in the SLD-resolution. We propose, in this paper, an operational semantics closely related to these models.... more
The majority of abstract interpretation models defined for Prolog use abstract operations which do not have explicit counterpart in the SLD-resolution. We propose, in this paper, an operational semantics closely related to these models.... more
Presented in this work is a novel approach to implement an efficient abstract interpretation algorithm for logic programs by means of attributed grammar. Successful implementation of this algorithm yielded memory storage saving and... more
iSCSI is an emerging communication protocol enabling block data transport over TCP/IP network. This paper uses a storage architecture allowing parallel processing of iSCSI commands and presents two novel techniques for improving the... more
We investigate graph narrowing as the operational semantics of functional logic programming languages. We mainly show and discuss how weakly needed narrowing as well as parallel narrowing may be extended to graph structures.
Admissible Graph Rewriting and Narrowing Rachid Echahed and Jean-Christophe Janodet Laboratoire LEIBNIZ, IMAG, CNRS 46, avenue Felix Viallet F-38031 Grenoble-France Rachid. Echahed@ imag. fr; Jean-Christophe. Janodet@ imag. fr Abstract We... more
Institute of Mathematics of the Academy of Sciences of the Czech Republic provides access to digitized documents strictly for personal use. Each copy of any part of this document must contain these Terms of use. This paper has been... more
Institute of Mathematics of the Academy of Sciences of the Czech Republic provides access to digitized documents strictly for personal use. Each copy of any part of this document must contain these Terms of use. This paper has been... more
Join point models are one of the key features in aspectoriented programming languages and tools. They provide software engineers means to pinpoint the exact locations in programs (join points) to weave in advices. Our experience in... more
The composition of multiple software units does not always yield the desired results. In particular, aspect-oriented composition mechanisms introduce new kinds of composition problems. These are caused by different characteristics as... more
Non-monotonic reasoning constitutes an approach to reasoning with incomplete or changing information and is significantly more powerful than standard reasoning, which simply deals with universal statements. Defeasible reasoning, a member... more
This paper presents DR-DEVICE, a system for defeasible reasoning on the Web. Defeasible reasoning is a rule-based approach for efficient reasoning with incomplete and inconsistent information. Such reasoning is, among others, useful for... more
In the context of systems security, information flows play a central role. Unhandled information flows potentially leave the door open to very dangerous types of attacks, such as code injection or sensitive information leakage.... more
Business-to-Business integration (B2Bi) as a core concept of Supply Chain Management (SCM) is a key success factor for enterprises today. Frequently, choreography models are used for agreeing about the overall message exchanges among... more
In this paper, we study the semantics of a specification language for the coordination of concurrent systems, which supports time at different levels: various time domains, polychrony, and mixed metric/logical time constraints. The... more
There is a plethora of semantics of computational models, nevertheless, the semantics of combinatory logic are among the less investigated ones. In this paper, we propose semantics for the computational system of combinatory logic with... more
Migrating static process models to ontologically structured system representations displaying contemporaneous system & process behaviour .
In this paper we study the model of Time Petri Nets (TPNs) where a time interval is associated with the firing of a transition, but we extend it by considering general intervals rather than closed ones. A key feature of timed models is... more
Es inevitable que algunas consideraciones sean transversales a una aplicación de cierto tamaño, lo que resulta en código repartido en ella, mezclado con el código de otras consideraciones. Este problema es particularmente severo en el... more
Es inevitable que algunas consideraciones sean transversales a una aplicación de cierto tamaño, lo que resulta en código repartido en ella, mezclado con el código de otras consideraciones. Este problema es particularmente severo en el... more
This paper proves correctness of Nöcker's method of strictness analysis, implemented in the Clean compiler, which is an effective way for strictness analysis in lazy functional languages based on their operational semantics. We improve... more
This paper proves correctness of Nöcker's method of strictness analysis, implemented in the Clean compiler, which is an effective way for strictness analysis in lazy functional languages based on their operational semantics. We improve... more
This paper describes context analysis, an extension to strictness analysis for lazy functional languages. In particular it extends Wadler's four point domain and permits in nitely many abstract values. A calculus is presented based on... more
PILOT (Programming and Interpreted Language Of actions for Telerobotics) is a graphical and interpreted language dedicated to the r emote control of systems. It is provided with a control system whose various modules have been modeled... more
We develop an axiomatic mathematical framework for \emph{balance-preserving operations} on networks, in which every local transformation is required to conserve a global quantity through mandatory redistribution to neighboring states.... more
We introduce Dynamic SOS as a framework for describing semantics of programming languages that include dynamic software upgrades. Dynamic SOS is built on top of the Modular SOS of P. Mosses, with an underlying category theory... more
Download research papers for free!