English
Related papers

Related papers: Building a refinement checker for Z

200 papers

Over the last several years the tools used for model checking have become more efficient and usable. This has enabled users to apply model checking to industrial-scale problems, however the task of validating the implementation of the model…

Programming Languages · Computer Science 2013-02-21 Asankhaya Sharma

In the last decade it became a common practice to formalise software requirements to improve the clarity of users' expectations. In this work we build on the fact that functional requirements can be expressed in temporal logic and we…

Software Engineering · Computer Science 2015-10-12 Jiří Barnat , Petr Bauch , Nikola Beneš , Luboš Brim , Jan Beran , Tomáš Kratochvíla

The refinement calculus for logic programs is a framework for deriving logic programs from specifications. It is based on a wide-spectrum language that can express both specifications and code, and a refinement relation that models the…

Logic in Computer Science · Computer Science 2007-05-23 Robert Colvin , Ian J. Hayes , Paul Strooper

Program refinement involves correctness-preserving transformations from formal high-level specification statements into executable programs. Traditional verification tool support for program refinement is highly interactive and lacks…

Software Engineering · Computer Science 2024-06-28 Yufan Cai , Zhe Hou , Xiaokun Luan , David Miguel Sanan Baena , Yun Lin , Jun Sun , Jin Song Dong

Generating natural language explanations for recommendations has become increasingly important in recommender systems. Traditional approaches typically treat user reviews as ground truth for explanations and focus on improving review…

Information Retrieval · Computer Science 2025-02-18 Jingsen Zhang , Zihang Tian , Xueyang Feng , Xu Chen

In recent years, Large Language Models (LLMs) have demonstrated remarkable generative abilities, but can they judge the quality of their own generations? A popular concept, referred to as self-refinement, postulates that LLMs can detect and…

Computation and Language · Computer Science 2023-11-15 Kumar Shridhar , Koustuv Sinha , Andrew Cohen , Tianlu Wang , Ping Yu , Ram Pasunuru , Mrinmaya Sachan , Jason Weston , Asli Celikyilmaz

Unified Modeling Language (UML) is the de facto standard for requirements modeling and system design. UML as a visual language can tremendously help customers, project managers, and developers to specify the requirements of a target system.…

Software Engineering · Computer Science 2019-01-09 Yilong Yang , Jing Yang , Xiaoshan Li

We introduce a new methodology based on refinement for testing the functional correctness of hardware and low-level software. Our methodology overcomes several major drawbacks of the de facto testing methodologies used in industry: (1) it…

Logic in Computer Science · Computer Science 2017-03-17 Mitesh Jain , Panagiotis Manolios

Compiler optimizations are designed to improve run-time performance while preserving input-output behavior. Correctness in this sense does not necessarily preserve security: it is known that standard optimizations may break or weaken…

Formal Languages and Automata Theory · Computer Science 2019-11-15 Kedar S. Namjoshi , Lucas M. Tabajara

Model-driven design of software for safety-critical applications often relies on mathematically grounded techniques such as the B method. Such techniques consist in the successive applications of refinements to derive a concrete…

Software Engineering · Computer Science 2009-07-14 David Deharbe , Bruno E. G. Gomes , Anamaria M. Moreira

In this work, we show how the use of verification and analysis techniques for model families (software product lines) with numerical features provides an interesting technique to synthesize complete models from sketches (i.e.\ partial…

Logic in Computer Science · Computer Science 2021-12-23 Aleksandar S. Dimovski

The program synthesis problem within the Inductive Logic Programming (ILP) community has typically been seen as untyped. We consider the benefits of user provided types on background knowledge. Building on the Meta-Interpretive Learning…

Artificial Intelligence · Computer Science 2021-02-26 Rolf Morel

Simulink/Stateflow charts are widely used in industry for the specification of control systems, which are often safety-critical. This suggests a need for a formal treatment of such models. In previous work, we have proposed a technique for…

Logic in Computer Science · Computer Science 2011-06-22 Alvaro Miyazawa , Ana Cavalcanti

We propose a verified approach to the formal verification of timed properties using model-checking techniques. We focus on properties expressed using real-time specification patterns, which can be viewed as a subset of timed temporal logics…

Logic in Computer Science · Computer Science 2013-02-01 Nouha Abid , Silvano Dal Zilio , Didier Le Botlan

Large Language Models (LLMs) show strong potential for automating model generation from natural-language descriptions. A common approach begins with an initial model generation, followed by an iterative critique-refine loop in which the…

Software Engineering · Computer Science 2025-12-01 Parham Khamsepour , Mark Cole , Ish Ashraf , DaYuan Tan , Sandeep Puri , Mehrdad Sabetzadeh , Shiva Nejati

This paper advocates for the broader application of SMT solvers in everyday programming, challenging the conventional wisdom that these tools are solely for formal methods and verification. We claim that SMT solvers, when seamlessly…

Programming Languages · Computer Science 2025-09-19 Facundo Domínguez , Arnaud Spiwack

This dissertation introduces executable refinement types, which refine structural types by semi-decidable predicates, and establishes their metatheory and accompanying implementation techniques. These results are useful for undecidable type…

Programming Languages · Computer Science 2014-03-14 Kenneth Knowles

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

Iterative abstraction refinement techniques are one of the most prominent paradigms for the analysis and verification of systems with large or infinite state spaces. This paper investigates the changes of truth values of system properties…

Logic in Computer Science · Computer Science 2026-01-14 Jakob Piribauer , Vinzent Zschuppe

Model checking and automated theorem proving are two pillars of formal methods. This paper investigates model checking from an automated theorem proving perspective, aiming at combining the expressiveness of automated theorem proving and…

Logic in Computer Science · Computer Science 2017-10-03 Ying Jiang , Jian Liu , Gilles Dowek , Kailiang Ji