English
Related papers

Related papers: Specification and Inference of Trace Refinement Re…

200 papers

Modern research heavily relies on software. A significant challenge researchers face is understanding the complex software used in specific research fields. We target two scenarios in this context, namely long onboarding times for newcomers…

Software Engineering · Computer Science 2026-04-14 Adrian Bajraktari , Andreas Vogelsang

Concurrent program refinement algebra provides a suitable basis for supporting mechanised reasoning about shared-memory concurrent programs in a compositional manner, for example, it supports the rely/guarantee approach of Jones. The…

Logic in Computer Science · Computer Science 2018-05-30 Ian J. Hayes , Larissa A. Meinicke

We present a logical framework for the verification of relational properties in imperative programs. Our work is motivated by relational properties which come from security applications and often require reasoning about formulas with…

Logic in Computer Science · Computer Science 2019-08-13 Gilles Barthe , Renate Eilers , Pamina Georgiou , Bernhard Gleiss , Laura Kovacs , Matteo Maffei

In the field of automated program repair, the redundancy assumption claims large programs contain the seeds of their own repair. However, most redundancy-based program repair techniques do not reason about the repair ingredients---the code…

Software Engineering · Computer Science 2023-10-13 Martin White , Michele Tufano , Matias Martinez , Martin Monperrus , Denys Poshyvanyk

Learning analytics researchers often analyze qualitative student data such as coded annotations or interview transcripts to understand learning processes. With the rise of generative AI, fully automated and human-AI workflows have emerged…

Computation and Language · Computer Science 2026-01-21 Elham Tajik , Conrad Borchers , Bahar Shahrokhian , Sebastian Simon , Ali Keramati , Sonika Pal , Sreecharan Sankaranarayanan

Execution of concurrent programs implies frequent switching between different thread contexts. This property perplexes analyzing and reasoning about concurrent programs. Trace simplification is a technique that aims at alleviating this…

Software Engineering · Computer Science 2014-05-20 Mohamed A. El-Zawawy , Mohammad N. Alanazi

Many interesting program properties involve the execution of multiple programs, including observational equivalence, noninterference, co-termination, monotonicity, and idempotency. One strategy for verifying such relational properties is to…

Programming Languages · Computer Science 2025-03-13 Robert Dickerson , Prasita Mukherjee , Benjamin Delaware

Large language models (LLMs) can refine their responses based on feedback, enabling self-improvement through iterative training or test-time refinement. However, existing methods predominantly focus on refinement within the same reasoning…

Computation and Language · Computer Science 2024-12-24 Dian Yu , Yuheng Zhang , Jiahao Xu , Tian Liang , Linfeng Song , Zhaopeng Tu , Haitao Mi , Dong Yu

Kleene algebras with tests (KATs) offer sound, complete, and decidable equational reasoning about regularly structured programs. Interest in KATs has increased greatly since NetKAT demonstrated how well extensions of KATs with…

Programming Languages · Computer Science 2022-04-05 Michael Greenberg , Ryan Beckett , Eric Campbell

Intermediate token generation (ITG), where a model produces output before the solution, has been proposed as a method to improve the performance of language models on reasoning tasks. While these reasoning traces or Chain of Thoughts (CoTs)…

Artificial Intelligence · Computer Science 2025-09-10 Vardhan Palod , Karthik Valmeekam , Kaya Stechly , Subbarao Kambhampati

Various relations have been defined to express refinement and conformance for state-transition systems with inputs and outputs, such as ioco and uioco in the area of model-based testing, and alternating simulation and alternating-trace…

Formal Languages and Automata Theory · Computer Science 2020-02-19 Ramon Janssen , Frits Vaandrager , Jan Tretmans

The notion of refinement plays an important role in software engineering. It is the basis of a stepwise development methodology in which the correctness of a system can be established by proving, or computing, that a system refines its…

Logic in Computer Science · Computer Science 2023-06-22 Maurice Laveaux , Jan Friso Groote , Tim A. C. Willemse

Recent impressive results from large reasoning models have been interpreted as a triumph of Chain of Thought (CoT), and especially of the process of training on CoTs sampled from base LLMs in order to help find new reasoning patterns. While…

Machine Learning · Computer Science 2026-05-27 Karthik Valmeekam , Vardhan Palod , Kaya Stechly , Atharva Gundawar , Subbarao Kambhampati

We present a method for synthesizing recursive functions that provably satisfy a given specification in the form of a polymorphic refinement type. We observe that such specifications are particularly suitable for program synthesis for two…

Programming Languages · Computer Science 2016-04-22 Nadia Polikarpova , Ivan Kuraj , Armando Solar-Lezama

Requirement traceability is the process of identifying the inter-dependencies between requirements. It poses a significant challenge when conducted manually, especially when dealing with requirements at various levels of abstraction. In…

Artificial Intelligence · Computer Science 2024-06-21 Baher Mohammad , Riad Sonbol , Ghaida Rebdawi

Traces and their extension called combined traces (comtraces) are two formal models used in the analysis and verification of concurrent systems. Both models are based on concepts originating in the theory of formal languages, and they are…

Logic in Computer Science · Computer Science 2015-07-01 Lukasz Mikulski

We present a lattice of distributed program specifications, whose ordering represents implementability/refinement. Specifications are modelled by families of subsets of relative execution traces, which encode the local orderings of state…

Logic in Computer Science · Computer Science 2023-04-25 Nasos Evangelou-Oost , Callum Bannister , Ian J. Hayes

Synthesizing relational data has started to receive more attention from researchers, practitioners, and industry. The task is more difficult than synthesizing a single table due to the added complexity of relationships between tables. For…

Databases · Computer Science 2024-10-07 Valter Hudovernik , Martin Jurkovič , Erik Štrumbelj

We present a type-theoretic framework for reasoning about incorrectness in functional programs that interact with effectful, opaque library APIs. Our approach centers on traces -- temporally-ordered sequences of library API invocations --…

Programming Languages · Computer Science 2025-09-03 Yongwei Yuan , Zhe Zhou , Julia Belyakova , Benjamin Delaware , Suresh Jagannathan

We introduce Refinement Reflection, a new framework for building SMT-based deductive verifiers. The key idea is to reflect the code implementing a user-defined function into the function's (output) refinement type. As a consequence, at uses…

Programming Languages · Computer Science 2019-07-16 Niki Vazou , Anish Tondwalkar , Vikraman Choudhury , Ryan G. Scott , Ryan R. Newton , Philip Wadler , Ranjit Jhala