English
Related papers

Related papers: Towards the Systematic Testing of Regular Expressi…

200 papers

In the evolving landscape of integrated circuit (IC) design, the increasing complexity of modern processors and intellectual property (IP) cores has introduced new challenges in ensuring design correctness and security. The recent…

Cryptography and Security · Computer Science 2025-11-07 Raghul Saravanan , Sudipta Paria , Aritra Dasgupta , Venkat Nitin Patnala , Swarup Bhunia , Sai Manoj P D

Feature attribution methods highlight the important input tokens as explanations to model predictions, which have been widely applied to deep neural networks towards trustworthy AI. However, recent works show that explanations provided by…

Computation and Language · Computer Science 2024-01-01 Dongfang Li , Baotian Hu , Qingcai Chen , Shan He

OneAPI is an open standard that supports cross-architecture software development with minimal effort from developers. It brings DPC++ and C++ compilers which need to be thoroughly tested to verify their correctness, reliability, and…

Cryptography and Security · Computer Science 2025-04-15 Rana Elnaggar , Brian Delgado , Jason M. Fung

Bugs in operating system kernels can affect billions of devices and users all over the world. As a result, a large body of research has been focused on kernel fuzzing, i.e., automatically generating syscall (system call) sequences to detect…

Cryptography and Security · Computer Science 2025-03-17 Chenyuan Yang , Zijie Zhao , Lingming Zhang

Retriever-augmented generation (RAG) has become a widely adopted approach for enhancing the factual accuracy of large language models (LLMs). While current benchmarks evaluate the performance of RAG methods from various perspectives, they…

Information Retrieval · Computer Science 2025-04-08 Kepu Zhang , Zhongxiang Sun , Weijie Yu , Xiaoxue Zang , Kai Zheng , Yang Song , Han Li , Jun Xu

Verifiers play a crucial role in large language model (LLM) reasoning, needed by post-training techniques such as reinforcement learning. However, reliable verifiers are hard to get for difficult coding problems, because a well-disguised…

Computation and Language · Computer Science 2025-06-02 Zhongmou He , Yee Man Choi , Kexun Zhang , Jiabao Ji , Junting Zhou , Dejia Xu , Ivan Bercovich , Aidan Zhang , Lei Li

Refactoring is a common software engineering practice that improves code quality without altering program behavior. Although tools like ReExtractor+, RefactoringMiner, and RefDiff have been developed to detect refactorings automatically,…

Software Engineering · Computer Science 2025-11-20 Pedro Simões , Rohit Gheyi , Rian Melo , Jonhnanthan Oliveira , Márcio Ribeiro , Wesley K. G. Assunção

Regular expressions -- regexes -- are widely used not only for validating, but also for parsing textual data. Generally, regex parsers output a loose structure, e.g. an unstructured list of matches, leaving it up to the user to validate the…

Programming Languages · Computer Science 2023-05-09 Ohad Kammar , Katarzyna Marek

Code completion, which aims to predict the following code token(s) according to the code context, can improve the productivity of software development. Recent work has proved that statistical language modeling with transformers can greatly…

Software Engineering · Computer Science 2022-03-16 Shuai Lu , Nan Duan , Hojae Han , Daya Guo , Seung-won Hwang , Alexey Svyatkovskiy

Error recovery is an essential feature for a parser that should be plugged in Integrated Development Environments (IDEs), which must build Abstract Syntax Trees (ASTs) even for syntactically invalid programs in order to offer features such…

Programming Languages · Computer Science 2025-07-08 Sérgio Queiroz de Medeiros , Fabio Mascarenhas

One of the most significant challenges in the field of software code auditing is the presence of vulnerabilities in software source code. Every year, more and more software flaws are discovered, either internally in proprietary code or…

Cryptography and Security · Computer Science 2023-06-16 Mst Shapna Akter , Hossain Shahriar , Juan Rodriguez Cardenas , Sheikh Iqbal Ahamed , Alfredo Cuzzocrea

Symbolic execution is a program analysis technique executing programs with symbolic instead of concrete inputs. This principle allows for exploring many program paths at once. Despite its wide adoption -- in particular for program testing…

Programming Languages · Computer Science 2023-10-13 Arthur Correnson , Dominic Steinhoefel

Fuzzing is a popular dynamic program analysis technique used to find vulnerabilities in complex software. Fuzzing involves presenting a target program with crafted malicious input designed to cause crashes, buffer overflows, memory errors,…

Software Engineering · Computer Science 2017-11-15 Mohit Rajpal , William Blum , Rishabh Singh

Programming by Example (PBE) is a program synthesis paradigm in which the synthesizer creates a program that matches a set of given examples. In many applications of such synthesis (e.g., program repair or reverse engineering), we are to…

Programming Languages · Computer Science 2021-06-23 Bo Wang , Teodora Baluta , Aashish Kolluri , Prateek Saxena

A fuzzer provides randomly generated inputs to a targeted software to expose erroneous behavior. To efficiently detect defects, generated inputs should conform to the structure of the input format and thus, grammars can be used to generate…

Software Engineering · Computer Science 2020-08-05 Martin Eberlein , Yannic Noller , Thomas Vogel , Lars Grunske

Current research on large language models (LLMs) with retrieval-augmented code generation (RACG) has largely focused on single-language settings, leaving their cross-lingual effectiveness underexplored. Multilingual RACG systems are…

Software Engineering · Computer Science 2026-04-21 Qiming Zhu , Jialun Cao , Xuanang Chen , Weili Zhang , Yaojie Lu , Hongyu Lin , Xianpei Han , Le Sun , Shing-Chi Cheung

This paper presents a simple recipe to train state-of-the-art multilingual Grammatical Error Correction (GEC) models. We achieve this by first proposing a language-agnostic method to generate a large number of synthetic examples. The second…

Computation and Language · Computer Science 2022-08-10 Sascha Rothe , Jonathan Mallinson , Eric Malmi , Sebastian Krause , Aliaksei Severyn

Retrieval-augmented code generation utilizes Large Language Models as the generator and significantly expands their code generation capabilities by providing relevant code, documentation, and more via the retriever. The current approach…

Software Engineering · Computer Science 2024-09-25 Xinyu Gao , Yun Xiong , Deze Wang , Zhenhan Guan , Zejian Shi , Haofen Wang , Shanshan Li

Type errors in Python often lead to runtime failures, posing significant challenges to software reliability and developer productivity. Existing static analysis tools aim to detect such errors without execution but frequently suffer from…

Software Engineering · Computer Science 2025-10-03 Chen Yang , Ziqi Wang , Yanjie Jiang , Lin Yang , Yuteng Zheng , Jianyi Zhou , Junjie Chen

Fuzzing is a popular bug detection technique achieved by testing software executables with random inputs. This technique can also be extended to libraries by constructing executables that call library APIs, known as fuzz drivers. Automated…

Software Engineering · Computer Science 2023-12-20 Yehong Zhang , Jun Wu , Hui Xu