English
Related papers

Related papers: A Formal Model of Checked C

200 papers

Benefits of static type systems are well-known: they offer guarantees that no type error will occur during runtime and, inherently, inferred types serve as documentation on how functions are called. On the other hand, many type systems have…

Programming Languages · Computer Science 2020-08-31 Isabel Wingen , Philipp Körner

In this paper, we facilitate the reasoning about impure programming languages, by annotating terms with `decorations' that describe what computational (side) effect evaluation of a term may involve. In a point-free categorical…

Logic in Computer Science · Computer Science 2018-10-17 Burak Ekici

Abstraction-Carrying Code (ACC) has recently been proposed as a framework for proof-carrying code (PCC) in which the code supplier provides a program together with an abstraction (or abstract model of the program) whose validity entails…

Programming Languages · Computer Science 2007-05-23 Elvira Albert , Puri Arenas , German Puebla

Given a failing test case, test case reduction yields a smaller test case that reproduces the failure. This process can be time consuming due to repeated trial and error with smaller test cases. Current techniques speed up reduction by only…

Software Engineering · Computer Science 2021-03-23 Golnaz Gharachorlu , Nick Sumner

For end-to-end speech translation, regularizing the encoder with the Connectionist Temporal Classification (CTC) objective using the source transcript or target translation as labels can greatly improve quality metrics. However, CTC demands…

Computation and Language · Computer Science 2023-02-22 Biao Zhang , Barry Haddow , Rico Sennrich

We introduce a denotational semantic framework for shared-memory concurrent programs in a C11-style memory model. This denotational approach is an alternative to techniques based on "execution graphs" and axiomatizations, and it allows for…

Programming Languages · Computer Science 2018-04-13 Ryan Kavanagh , Stephen Brookes

As software systems increase in size and complexity dramatically, ensuring their correctness, security, and reliability becomes an increasingly formidable challenge. Despite significant advancements in verification techniques and tools,…

Large language models have demonstrated impressive capabilities in generating code, yet they often produce programs with flaws or deviations from intended behavior, limiting their suitability for safety-critical applications. To address…

Software Engineering · Computer Science 2025-04-08 Merlijn Sevenhuijsen , Khashayar Etemadi , Mattias Nyberg

The study of provable adversarial robustness has mostly been limited to classification tasks and models with one-dimensional real-valued outputs. We extend the scope of certifiable robustness to problems with more general and structured…

Machine Learning · Computer Science 2022-01-13 Aounon Kumar , Tom Goldstein

Despite the conceptual simplicity of sequential consistency (SC), the semantics of SC atomic operations and fences in the C11 and OpenCL memory models is subtle, leading to convoluted prose descriptions that translate to complex axiomatic…

Programming Languages · Computer Science 2016-11-17 Mark Batty , Alastair F. Donaldson , John Wickerson

Program verifiers for imperative languages such as C may be annotation-based, in which assertions and invariants are put into source files and then checked, or tactic-based, where proof scripts separate from programs are interactively…

Programming Languages · Computer Science 2023-10-27 Litao Zhou , Jianxing Qin , Qinshi Wang , Andrew W. Appel , Qinxiang Cao

Language models are increasingly being used in important decision pipelines, so ensuring the correctness of their outputs is crucial. Recent work has proposed evaluating the "factuality" of claims decomposed from a language model generation…

Computation and Language · Computer Science 2025-05-26 Maxon Rubin-Toles , Maya Gambhir , Keshav Ramji , Aaron Roth , Surbhi Goel

Matching logic is a formalism for specifying, and reasoning about, mathematical structures, using patterns and pattern matching. Growing in popularity, it has been used to define many logical systems such as separation logic with recursive…

Logic in Computer Science · Computer Science 2022-09-22 Péter Bereczky , Xiaohong Chen , Dániel Horpácsi , Lucas Peña , Jan Tušil

Model checking is a powerful technique for software verification. However, the approach notably suffers from the infamous state space explosion problem. To tackle this, in this paper, we introduce a novel symbolic method for encoding Petri…

Logic in Computer Science · Computer Science 2026-02-04 Damien Morard , Lucas Donati , Didier Buchs

VeriFast is a powerful tool for verification of various correctness properties of C programs using symbolic execution. However, VeriFast itself has not been verified. We present a proof-of-concept extension which generates a correctness…

Logic in Computer Science · Computer Science 2023-08-31 Stefan Wils , Bart Jacobs

Completion is a well-known transformation that captures the stable model semantics of logic programs by turning a program into a set of first-order definitions. Stable models are models of the completion, but not all models of the…

Logic in Computer Science · Computer Science 2025-04-22 Jan Heuer

Checking for Non-Termination (NT) of a given program P, i.e., determining if P has at least one non-terminating run, is an undecidable problem that continues to garner significant research attention. While unintended NT is common in…

Software Engineering · Computer Science 2024-09-23 Ravindra Metta , Hrishikesh Karmarkar , Kumar Madhukar , R Venkatesh , Supratik Chakraborty , Samarjit Chakraborty

Recent work has shown that a model's input word embeddings can serve as effective control variables for steering its behavior toward outputs that satisfy desired properties. However, this has only been demonstrated for pretrained…

Computation and Language · Computer Science 2026-04-30 Baturay Saglam , Dionysis Kalogerias

The C Bounded Model Checker (CBMC) demonstrates the violation of assertions in C programs, or proves safety of the assertions under a given bound. CBMC implements a bit-precise translation of an input C program, annotated with assertions…

Software Engineering · Computer Science 2023-02-07 Daniel Kroening , Peter Schrammel , Michael Tautschnig

Implementing a complex concept as an executable model in a strongly typed, purely functional language hits a sweet spot between mere simulation and formal specification. For research and education it is often desirable to enrich the…

Programming Languages · Computer Science 2020-08-31 Baltasar Trancón y Widemann , Markus Lepper
‹ Prev 1 8 9 10 Next ›