LLM-based Satisfiability Checking of String Requirements by Consistent Data and Checker Generation
Boqi Chen, Aren A. Babikian, Shuzhao Feng, D\'aniel Varr\'o, Gunter Mussbacher

TL;DR
This paper presents a hybrid method using large language models to verify the satisfiability of string-based natural language requirements by generating formal and imperative checkers, improving accuracy and success rates.
Contribution
It introduces a novel hybrid approach leveraging LLMs to derive satisfiability outcomes and generate checkers, enhancing verification of string requirements over traditional methods.
Findings
LLMs effectively translate NL into checkers with high accuracy
Generated checkers improve the success rate of satisfiability verification
The approach outperforms baselines in F1-score and success rate
Abstract
Requirements over strings, commonly represented using natural language (NL), are particularly relevant for software systems due to their heavy reliance on string data manipulation. While individual requirements can usually be analyzed manually, verifying properties (e.g., satisfiability) over sets of NL requirements is particularly challenging. Formal approaches (e.g., SMT solvers) may efficiently verify such properties, but are known to have theoretical limitations. Additionally, the translation of NL requirements into formal constraints typically requires significant manual effort. Recently, large language models (LLMs) have emerged as an alternative approach for formal reasoning tasks, but their effectiveness in verifying requirements over strings is less studied. In this paper, we introduce a hybrid approach that verifies the satisfiability of NL requirements over strings by using…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsWeb Application Security Vulnerabilities · Software Testing and Debugging Techniques · Software Engineering Research
