Membership Testing for Semantic Regular Expressions
Yifei Huang, Matin Amini, Alexis Le Glaunec, Konstantinos Mamouras, Mukund Raghothaman
Abstract
This paper is about semantic regular expressions (SemREs). This is a concept that was recently proposed by Chen et al. [9] in which classical regular expressions are extended with a primitive to query external oracles such as databases and large language models (LLMs). SemREs can be used to identify lines of text containing references to semantic concepts such as cities, celebrities, political entities, etc. The focus in their paper was on automatically synthesizing semantic regular expressions from positive and negative examples. In this paper, we study the membership testing problem:
(1) We present a two-pass NFA-based algorithm to determine whether a string
) time, assuming the oracle responds to each query in unit time. In common situations, where oracle queries are not nested, we show that this procedure runs in
Experiments with a prototype implementation of this algorithm validate our theoretical analysis, and show that the procedure massively outperforms a dynamic programming-based baseline, and incurs a ≈ 2× overhead over the time needed for interaction with the oracle. (2) We establish connections between SemRE membership testing and the triangle finding problem from graph theory, which suggest that developing algorithms which are simultaneously practical and asymptotically faster might be challenging. Furthermore, algorithms for classical regular expressions primarily aim to optimize their time and memory consumption. In contrast, an important consideration in our setting is to minimize the cost of invoking the oracle. We demonstrate an Ω(|𝑤 | 2 ) lower bound on the number of oracle queries necessary to make this determination.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 15488cb0-723f-4021-a715-154c0feeee8bBuilds on7
- CodeGen: An Open Large Language Model for Code with Multi-Turn Program SynthesisErik Nijkamp, Bo Pang, Hiroaki Hayashi, Lifu Tu et al.ICLR 2023 · 234 citations
- Prompting Is Programming: A Query Language for Large Language ModelsLuca Beurer-Kellner, Marc Fischer, Martin T. VechevPLDI 2023 · 114 citations
- Binding Language Models in Symbolic LanguagesZhoujun Cheng, Tianbao Xie, Peng Shi, Chengzu Li et al.ICLR 2023 · 38 citations
- Semantic programming by example with pre-trained modelsGust Verbruggen, Vu Le, Sumit GulwaniOOPSLA 2021 · 26 citations
- Data Extraction via Semantic Regular Expression SynthesisQiaochu Chen, Arko Banerjee, Çagatay Demiralp, Greg Durrett et al.OOPSLA 2023 · 24 citations
Related papers
- Efficient Matching of Regular Expressions with Lookaround AssertionsKonstantinos Mamouras, Agnishom ChattopadhyayPOPL 2024 · 19 citations
- Sparse Regular Expression MatchingPhilip Bille, Inge Li GørtzSODA 2024 · 2 citations
- Human-in-the-loop oracle learning for semantic bugs in string processing programsCharaka Geethal Kapugama, Van-Thuan Pham, Aldeida Aleti, Marcel BöhmeISSTA 2022 · 10 citations
- Automated Discovery of Test Oracles for Database Management Systems Using LLMsQiuyang Mang, Runyuan He, Suyang Zhong, Xiaoxuan Liu et al.SIGMOD 2026 · 1 citation
- Regular Path Query Evaluation Sharing a Reduced Transitive Closure Based on Graph ReductionInju Na, Yang-Sae Moon, Ilyeop Yi, Kyu-Young Whang et al.ICDE 2022 · 10 citations
