English
Related papers

Related papers: REST: Integrating Term Rewriting with Program Veri…

200 papers

The development of large, software-intensive systems is a complex undertaking that we generally tackle by a divide and conquer strategy. Companies thereby face the challenge of coordinating individual aspects of software development, in…

Software Engineering · Computer Science 2023-08-16 Michael Unterkalmsteiner , Tony Gorschek , Robert Feldt , Eriks Klotins

Stream Runtime Verification is a formal dynamic analysis technique that generalizes runtime verification algorithms from temporal logics like LTL to stream monitoring, allowing to compute richer verdicts than Booleans (including…

Software Engineering · Computer Science 2020-09-04 Martin Ceresa , Felipe Gorostiaga , Cesar Sanchez

Edit-based approaches have recently shown promising results on multiple monolingual sequence transduction tasks. In contrast to conventional sequence-to-sequence (Seq2Seq) models, which learn to generate text from scratch as they are…

Computation and Language · Computer Science 2022-05-11 Kostiantyn Omelianchuk , Vipul Raheja , Oleksandr Skurzhanskyi

We revisit the static dependency pair method for proving termination of higher-order term rewriting and extend it in a number of ways: (1) We introduce a new rewrite formalism designed for general applicability in termination proving of…

Logic in Computer Science · Computer Science 2019-04-08 Carsten Fuhs , Cynthia Kop

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

There are many evaluation strategies for term rewrite systems, but proving termination automatically is usually easiest for innermost rewriting. Several syntactic criteria exist when innermost termination implies full termination. We adapt…

Logic in Computer Science · Computer Science 2024-02-13 Jan-Christoph Kassing , Florian Frohn , Jürgen Giesl

Automatically crafting test scenarios for REST APIs helps deliver more reliable and trustworthy web-oriented systems. However, current black-box testing approaches rely heavily on the information available in the API's formal documentation,…

Software Engineering · Computer Science 2024-08-19 Davide Corradini , Zeno Montolli , Michele Pasqua , Mariano Ceccato

Modern web services increasingly rely on REST APIs. Effectively testing these APIs is challenging due to the vast search space to be explored, which involves selecting API operations for sequence creation, choosing parameters for each…

Software Engineering · Computer Science 2023-09-12 Myeongsoo Kim , Saurabh Sinha , Alessandro Orso

Refinement type checkers are a powerful way to reason about functional programs. For example, one can prove properties of a slow, specification implementation, porting the proofs to an optimized implementation that behaves the same. Without…

Programming Languages · Computer Science 2022-07-20 Niki Vazou , Michael Greenberg

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

Traditional session types prescribe bidirectional communication protocols for concurrent computations, where well-typed programs are guaranteed to adhere to the protocols. However, simple session types cannot capture properties beyond the…

Programming Languages · Computer Science 2023-06-22 Ankush Das , Frank Pfenning

Aligned language models face a significant limitation as their fine-tuning often results in compromised safety. To tackle this, we propose a simple method RESTA that performs LLM safety realignment. RESTA stands for REstoring Safety through…

Computation and Language · Computer Science 2024-02-20 Rishabh Bhardwaj , Do Duc Anh , Soujanya Poria

In reinforcement learning, Reverse Experience Replay (RER) is a recently proposed algorithm that attains better sample complexity than the classic experience replay method. RER requires the learning algorithm to update the parameters…

Machine Learning · Computer Science 2024-09-02 Nan Jiang , Jinzhao Li , Yexiang Xue

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

Requirements Engineering and Software Testing are mature areas and have seen a lot of research. Nevertheless, their interactions have been sparsely explored beyond the concept of traceability. To fill this gap, we propose a definition of…

Software Engineering · Computer Science 2023-07-25 Michael Unterkalmsteiner , Robert Feldt , Tony Gorschek

Stemming is the process of reducing related words to a standard form by removing affixes from them. Existing algorithms vary with respect to their complexity, configurability, handling of unknown words, and ability to avoid under- and…

Computation and Language · Computer Science 2024-06-04 Kirk Baker

The RISC Algorithm Language (RISCAL) is a language for the formal modeling of theories and algorithms. A RISCAL specification describes an infinite class of models each of which has finite size; this allows to fully automatically check in…

Logic in Computer Science · Computer Science 2019-04-02 Wolfgang Schreiner

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

Large Language Models (LLMs) often rely on long chain-of-thought (CoT) reasoning to solve complex tasks. While effective, these trajectories are frequently inefficient, leading to high latency from excessive token generation, or unstable…

Logically Constrained Term Rewriting Systems (LCTRSs) provide a general framework for term rewriting with constraints. We discuss a simple dependency pair approach to prove termination of LCTRSs. We see that existing techniques transfer to…

Logic in Computer Science · Computer Science 2016-01-14 Cynthia Kop