Leveraging LLMs for Formal Software Requirements -- Challenges and Prospects
By: Arshad Beg, Diarmuid O'Donoghue, Rosemary Monahan
Potential Business Impact:
Makes computer programs safer by checking them automatically.
Software correctness is ensured mathematically through formal verification, which involves the resources of generating formal requirement specifications and having an implementation that must be verified. Tools such as model-checkers and theorem provers ensure software correctness by verifying the implementation against the specification. Formal methods deployment is regularly enforced in the development of safety-critical systems e.g. aerospace, medical devices and autonomous systems. Generating these specifications from informal and ambiguous natural language requirements remains the key challenge. Our project, VERIFAI^{1}, aims to investigate automated and semi-automated approaches to bridge this gap, using techniques from Natural Language Processing (NLP), ontology-based domain modelling, artefact reuse, and large language models (LLMs). This position paper presents a preliminary synthesis of relevant literature to identify recurring challenges and prospective research directions in the generation of verifiable specifications from informal requirements.
Similar Papers
Formalising Software Requirements using Large Language Models
Software Engineering
Helps make sure computer code matches what people want.
Towards Autoformalization of LLM-generated Outputs for Requirement Verification
Computation and Language
Checks if computer writing matches what we want.
A Short Survey on Formalising Software Requirements using Large Language Models
Software Engineering
Helps computers write perfect software code.