English
Related papers

Related papers: Analyzing Catastrophic Backtracking Behavior in Pr…

200 papers

Static program analysis development is a non-trivial and time-consuming task. We present a framework through which developers can define static program analyses in natural language. We show the application of this framework to identify…

Programming Languages · Computer Science 2023-01-13 Mohammad Mehdi Pourhashem Kallehbasti , Mohammad Ghafari

We present an online algorithm to deal with pattern matching in strings. The problem we investigate is commonly known as string matching with mismatches in which the objective is to report the number of characters that match when a pattern…

Data Structures and Algorithms · Computer Science 2016-03-11 Vinodprasad P

Stationary processes have been extensively studied in the literature. Their applications include modeling and forecasting numerous real life phenomena such as natural disasters, sales and market movements. When stationary processes are…

Statistics Theory · Mathematics 2018-01-10 Marko Voutilainen , Lauri Viitasaari , Pauliina Ilmonen

We introduce session automata, an automata model to process data words, i.e., words over an infinite alphabet. Session automata support the notion of fresh data values, which are well suited for modeling protocols in which sessions using…

Logic in Computer Science · Computer Science 2015-07-01 Benedikt Bollig , Peter Habermehl , Martin Leucker , Benjamin Monmege

Runtime verification consists in observing and collecting the execution traces of a system and checking them against a specification, with the objective of raising an error when a trace does not satisfy the specification. We consider…

Logic in Computer Science · Computer Science 2025-11-04 Chana Weil-Kennedy , Darine Rammal , Christophe Gaston , Arnault Lapitre

Algorithms which learn environments represented by automata in the past have had complexity scaling with the number of states in the automaton, which can be exponentially large even for automata recognizing regular expressions with a small…

Formal Languages and Automata Theory · Computer Science 2024-05-13 Ali Cataltepe , Vanessa Kosoy

Software system can include redundant implementation elements, such as, different methods that can produce indistinguishable results. This type of redundancy is called intrinsic if it is already available in the software, although not…

Software Engineering · Computer Science 2014-11-18 Matteo Brunetto

In reactive synthesis, the goal is to automatically generate an implementation from a specification of the reactive and non-terminating input/output behaviours of a system. Specifications are usually modelled as logical formulae or automata…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Léo Exibard , Emmanuel Filiot , Pierre-Alain Reynier

A lens is a single program that specifies two data transformations at once: one transformation converts data from source format to target format and a second transformation inverts the process. Over the past decade, researchers have…

Programming Languages · Computer Science 2022-12-09 Jeanne-Marie Musca , Anders Miltner , Kathleen Fisher , David Walker

Automated program repair using neural models has shown promising results on benchmark datasets, yet practical deployment remains limited. In this study, we examine whether a small transformer model can meaningfully repair real-world Java…

Software Engineering · Computer Science 2025-12-30 Shaunak Samant

Debugging complex systems is a crucial yet time-consuming task. This paper presents the use of automata learning and testing techniques to obtain concise and informative bug descriptions. We introduce the concepts of Failure Explanations…

Software Engineering · Computer Science 2025-08-05 Tom Yaacov , Gera Weiss , Gal Amram , Avi Hayoun

In programming by example, users "write" programs by generating a small number of input-output examples and asking the computer to synthesize consistent programs. We consider a challenging problem in this domain: learning regular…

Artificial Intelligence · Computer Science 2018-09-28 Long Ouyang

A code change pattern represents a kind of recurrent modification in software. For instance, a known code change pattern consists of the change of the conditional expression of an if statement. Previous work has identified different change…

Software Engineering · Computer Science 2018-07-06 Matias Martinez , Laurence Duchien , Martin Monperrus

To be practically useful, modern static analyzers must precisely model the effect of both, statements in the programming language as well as frameworks used by the program under analysis. While important, manually addressing these…

Programming Languages · Computer Science 2017-06-27 Pavol Bielik , Veselin Raychev , Martin Vechev

What-if analysis is widely used to explore hypothetical scenarios and evaluate alternative pathways to desired results. However, current approaches are fragmented: systems implement what-if capabilities under diverse terminologies with…

Human-Computer Interaction · Computer Science 2026-04-13 Sneha Gathani , Kevin Li , Raghav Thind , Sirui Zeng , Matthew Xu , Peter J. Haas , Cagatay Demiralp , Zhicheng Liu

In software engineering (SE) tasks, the naming approach is so important that it attracts many scholars from all over the world to study how to improve the quality of method names. To accurately recommend method names, we employ a novel…

Software Engineering · Computer Science 2022-01-25 Weidong Wang , Dian Li , Yujian Kang

We discuss various formalisms to describe string-to-string transformations. Many are based on automata and can be seen as operational descriptions, allowing direct implementations when the input scanner is deterministic. Alternatively, one…

Formal Languages and Automata Theory · Computer Science 2019-08-06 Paul Gastin

Presentations of Kan extensions of category actions provide a natural framework for expressing induced actions, and therefore a range of different combinatorial problems. Rewrite systems for Kan extensions have been defined and a variation…

Combinatorics · Mathematics 2007-05-23 Anne Heyworth

Regular expressions (regexes) are widely used in different fields of computer science, such as programming languages, string processing, and databases. However, existing tools for synthesizing or repairing regexes always assume that the…

Software Engineering · Computer Science 2022-11-02 Shujun Wang , Yongqiang Tian andDengcheng He

In runtime verification, pattern matching, which searches for occurrences of a specific pattern within a word, provides more information than a simple violation detection of the monitored property, by locating concrete evidence of the…

Formal Languages and Automata Theory · Computer Science 2025-07-17 Masaki Waga , Étienne André