Translating Natural Language Requirements to Formal Specifications: A Study on GPT and Symbolic NLP

Software verification is essential to ensure dependability and that a system or component fulfils its specified requirements. Natural language is the most common way of specifying requirements, although many verification techniques such as theorem proving depend upon requirements being written in fo...

Full description

Saved in:
Bibliographic Details
Published in:International Conference on Dependable Systems and Networks workshops (Online) pp. 259 - 262
Main Authors: Leong, Iat Tou, Barbosa, Raul
Format: Conference Proceeding
Language:English
Published: IEEE 01.06.2023
Subjects:
ISSN:2325-6664
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Software verification is essential to ensure dependability and that a system or component fulfils its specified requirements. Natural language is the most common way of specifying requirements, although many verification techniques such as theorem proving depend upon requirements being written in formal specification languages. Automatically translating requirements into a formal specification language is a relevant and challenging research question, because developers often lack the necessary expertise. In our work we consider the application of natural language processing (NLP) to address that research question. This paper considers two distinct approaches to formalise natural language requirements: a symbolic method and a GPT-based method. The two methods are evaluated with respect to their ability to generate accurate Java Modeling Language (JML) from textual requirements, and the results show good promise for automatic formalisation of requirements.
ISSN:2325-6664
DOI:10.1109/DSN-W58399.2023.00065