English
Related papers

Related papers: Sound Regular Expression Semantics for Dynamic Sym…

200 papers

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

Despite widespread use, the complexity class of modern regular expression matching was not well-understood. Previous work proved that regular expression matching with backreferences and lookarounds was PSPACE-complete, but the proof was not…

Programming Languages · Computer Science 2026-03-30 Victor Deng , Aurèle Barrière , Clément Pit-Claudel

Algorithmic reasoning refers to the ability to understand the complex patterns behind the problem and decompose them into a sequence of reasoning steps towards the solution. Such nature of algorithmic reasoning makes it a challenge for…

Code execution is a fundamental aspect of programming language semantics that reflects the exact behavior of the code. However, most pre-trained models for code intelligence ignore the execution trace and only rely on source code and…

Programming Languages · Computer Science 2023-05-10 Chenxiao Liu , Shuai Lu , Weizhu Chen , Daxin Jiang , Alexey Svyatkovskiy , Shengyu Fu , Neel Sundaresan , Nan Duan

Scientific software relies on high-precision computation, yet finite floating-point representations can introduce precision errors that propagate in safety-critical domains. Despite the growing use of large language models (LLMs) in…

Software Engineering · Computer Science 2026-04-10 Tien Nguyen , Kirshanthan Sundararajah , Muhammad Ali Gulzar

In this dissertation we study regular expression based parsing and the use of grammatical specifications for the synthesis of fast, streaming string-processing programs. In the first part we develop two linear-time algorithms for regular…

Formal Languages and Automata Theory · Computer Science 2017-05-01 Ulrik Terp Rasmussen

In so-called constraint-based testing, symbolic execution is a common technique used as a part of the process to generate test data for imperative programs. Databases are ubiquitous in software and testing of programs manipulating databases…

Software Engineering · Computer Science 2015-01-26 Michaël Marcozzi , Wim Vanhoof , Jean-Luc Hainaut

We present an algorithm for searching regular expression matches in compressed text. The algorithm reports the number of matching lines in the uncompressed text in time linear in the size of its compressed version. We define efficient data…

Formal Languages and Automata Theory · Computer Science 2019-01-17 Pierre Ganty , Pedro Valero

Understanding a program's runtime reasoning behavior, meaning how intermediate states and control flows lead to final execution results, is essential for reliable code generation, debugging, and automated reasoning. Although large language…

Software Engineering · Computer Science 2025-12-02 Mohammad Abdollahi , Khandaker Rifah Tasnia , Soumit Kanti Saha , Jinqiu Yang , Song Wang , Hadi Hemmati

Regular expressions are used for diverse purposes, including input validation and firewalls. Unfortunately, they can also lead to a security vulnerability called ReDoS (Regular Expression Denial of Service), caused by a super-linear…

Software Engineering · Computer Science 2022-12-16 Sk Adnan Hassan , Zainab Aamir , Dongyoon Lee , James C. Davis , Francisco Servant

SMORE (Chen et al., 2023) recently proposed the concept of semantic regular expressions that extend the classical formalism with a primitive to query external oracles such as databases and large language models (LLMs). Such patterns can be…

Programming Languages · Computer Science 2025-04-14 Yifei Huang , Matin Amini , Alexis Le Glaunec , Konstantinos Mamouras , Mukund Raghothaman

This paper addresses the problem of inferring a regular expression from a given set of strings that resembles, as closely as possible, the regular expression that a human expert would have written to identify the language. This is motivated…

Machine Learning · Computer Science 2012-06-22 Paul Prasse , Christoph Sawade , Niels Landwehr , Tobias Scheffer

Computational models of human language often involve combinatorial problems. For instance, a probabilistic parser may marginalize over exponentially many trees to make predictions. Algorithms for such problems often employ dynamic…

Computation and Language · Computer Science 2021-09-16 Tim Vieira , Ryan Cotterell , Jason Eisner

Symbolic execution is an important software analysis technique which benefits downstream tasks such as software testing and debugging. However, several limitations hinder symbolic execution from application on real-world software. One of…

Software Engineering · Computer Science 2025-11-25 Wenhan Wang , Kaibo Liu , Zeyu Sun , An Ran Chen , Ge Li , Gang Huang , Lei Ma

Harnessing the statistical power of neural networks to perform language understanding and symbolic reasoning is difficult, when it requires executing efficient discrete operations against a large knowledge-base. In this work, we introduce a…

Computation and Language · Computer Science 2017-04-25 Chen Liang , Jonathan Berant , Quoc Le , Kenneth D. Forbus , Ni Lao

Code analysis is fundamental in Software Engineering, supporting debugging, optimization, and security assessment. Human developers approach it through syntax parsing, static semantics inference, and dynamic reasoning. Traditional tools are…

Software Engineering · Computer Science 2026-05-22 Wei Ma , Zhihao Lin , Shangqing Liu , Qiang Hu , Ye Liu , Wenhan Wang , Cen Zhang , Liming Nie , Li Li , Yang Liu , Lingxiao Jiang

The like regular expression predicate has been part of the SQL standard since at least 1989. However, despite its popularity and wide usage, database vendors provide only limited indexing support for regular expression queries which almost…

Databases · Computer Science 2011-08-16 Dominic Tsang , Sanjay Chawla

Software developers often rely on natural language text that appears in software engineering artifacts to access critical information as they build and work on software systems. For example, developers access requirements documents to…

Software Engineering · Computer Science 2021-05-14 Arthur Marques , Giovanni Viviani , Gail C. Murphy

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

With the presence of online collaborative tools for software developers, source code is shared and consulted frequently, from code viewers to merge requests and code snippets. Typically, code highlighting quality in such scenarios is…

Software Engineering · Computer Science 2022-08-05 Marco Edoardo Palma , Pasquale Salza , Harald C. Gall