English
Related papers

Related papers: Describing Console I/O Behavior for Testing Studen…

200 papers

As learned control policies become increasingly common in autonomous systems, there is increasing need to ensure that they are interpretable and can be checked by human stakeholders. Formal specifications have been proposed as ways to…

Human-Computer Interaction · Computer Science 2024-07-04 Isabelle Hurley , Rohan Paleja , Ashley Suh , Jaime D. Peña , Ho Chit Siu

Despite its many unquestionable benefits, formal specifications are not widely used in industrial software development. In order to reduce the time and effort required to write formal specifications, in this paper we propose a technique for…

Programming Languages · Computer Science 2015-12-23 María Alpuente , Daniel Pardo , Alicia Villanueva

Relational descriptions have been used in formalizing diverse computational notions, including, for example, operational semantics, typing, and acceptance by non-deterministic machines. We therefore propose a (restricted) logical theory…

Logic in Computer Science · Computer Science 2010-09-02 Andrew Gacek , Dale Miller , Gopalan Nadathur

Runtime verification is an effective automated method for specification-based offline testing and analysis as well as online monitoring of complex systems. The specification language is often a variant of regular expressions or a popular…

Logic in Computer Science · Computer Science 2014-11-11 Ramy Medhat , Yogi Joshi , Borzoo Bonakdarpour , Sebastian Fischmeister

This paper summarizes our experience in communicating the elements of reasoning about correctness, and the central role of formal specifications in reasoning about modular, component-based software using a language and an integrated Web IDE…

Software Engineering · Computer Science 2015-08-20 Nabil M. Kabbani , Daniel Welch , Caleb Priester , Stephen Schaub , Blair Durkee , Yu-Shan Sun , Murali Sitaraman

We present a novel interactive learning protocol that enables training request-fulfilling agents by verbally describing their activities. Unlike imitation learning (IL), our protocol allows the teaching agent to provide feedback in a…

Computation and Language · Computer Science 2021-06-16 Khanh Nguyen , Dipendra Misra , Robert Schapire , Miro Dudík , Patrick Shafto

Applications like program synthesis sometimes require proving that a property holds for all of the infinitely many programs described by a grammar - i.e., an inductively defined set of programs. Current verification frameworks…

Programming Languages · Computer Science 2025-07-29 Jinwoo Kim , Shaan Nagy , Thomas Reps , Loris D'Antoni

Requirements are informal and semi-formal descriptions of the expected behavior of a system. They are usually expressed in the form of natural language sentences and checked for errors manually, e.g., by peer reviews. Manual checks are…

Logic in Computer Science · Computer Science 2018-04-30 Simone Vuotto

Destination-passing style programming introduces destinations, which represent the address of a write-once memory cell. Those destinations can be passed as function parameters, and thus enable the caller of a function to keep control over…

Programming Languages · Computer Science 2023-12-19 Thomas Bagrel

Implementing multi-player networked games by broadcasting the player's input and letting each client calculate the game state - a scheme known as lock-step simulation - is an established technique. However, ensuring that every client in…

Programming Languages · Computer Science 2017-06-30 Joachim Breitner , Chris Smith

Signals are a lightweight form of interprocess communication in Unix. When a process receives a signal, the control flow is interrupted and a previously installed signal handler is run. Signal handling is reminiscent both of exception…

Programming Languages · Computer Science 2012-08-15 Maxim Strygin , Hayo Thielecke

Multi-stage programming is a proven technique that provides predictable performance characteristics by controlling code generation. We propose a core semantics for Typed Template Haskell, an extension of Haskell that supports multi staged…

Programming Languages · Computer Science 2021-12-08 Matthew Pickering , Andres Löh , Nicolas Wu

In-context learning (ICL) enables large language models to perform new tasks by conditioning on a sequence of examples. Most prior work reasonably and intuitively assumes that which examples are chosen has a far greater effect on…

Computation and Language · Computer Science 2025-11-14 Warren Li , Yiqian Wang , Zihan Wang , Jingbo Shang

In this paper we focus on exploiting a specification and the structures that satisfy it, to obtain a means of comparing implemented and expected behaviours and find the origin of faults in implementations. We present an approach to the…

Software Engineering · Computer Science 2013-03-06 Isabel Nunes , Filipe Luís

While a wide range of different, sometimes heterogeneous test coverage criteria have been proposed, there exists no generic formalism to describe them, and available test automation tools usually support only a small subset of them. We…

Software Engineering · Computer Science 2017-01-20 Sébastien Bardin , Mickaël Delahaye , Nikolai Kosmatov , Michaël Marcozzi , Virgile Prevosto

This paper presents an overview of Carnap, a free and open framework for the development of formal reasoning applications. Carnap's design emphasizes flexibility, extensibility, and rapid prototyping. Carnap-based applications are written…

Human-Computer Interaction · Computer Science 2018-03-09 Graham Leach-Krouse

The term stack safety is used to describe a variety of compiler, run-time, and hardware mechanisms for protecting stack memory. Unlike "the heap," the ISA-level stack does not correspond to a single high-level language concept: different…

Programming Languages · Computer Science 2024-03-22 Sean Noble Anderson , Roberto Blanco , Leonidas Lampropoulos , Benjamin C. Pierce , Andrew Tolmach

Linear constraints are the linear counterpart of Haskell's class constraints. Linearly typed parameters allow the programmer to control resources such as file handles and manually managed memory as linear arguments. Indeed, a linear type…

Programming Languages · Computer Science 2026-04-24 Arnaud Spiwack , Csongor Kiss , Jean-Philippe Bernardy , Nicolas Wu , Richard A. Eisenberg

Historically, programming language semantics has focused on assigning a precise mathematical meaning to programs. That meaning is a function from the program's input domain to its output domain determined solely by its syntactic structure.…

The graphical modeling language GRAFCET is used as a formal specification language in industrial control design. This paper proposes a structural analysis that approximates the variable values of GRAFCET to allow verification on…

Logic in Computer Science · Computer Science 2024-07-02 Aron Schnakenbeck , Robin Mroß , Marcus Völker , Stefan Kowalewski , Alexander Fay