Specifying and verbalising answer set programs in controlled natural language

Rolf Schwitter*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

6 Citations (Scopus)


We show how a bi-directional grammar can be used to specify and verbalise answer set programs in controlled natural language. We start from a program specification in controlled natural language and translate this specification automatically into an executable answer set program. The resulting answer set program can be modified following certain naming conventions and the revised version of the program can then be verbalised in the same subset of natural language that was used as specification language. The bi-directional grammar is parametrised for processing and generation, deals with referring expressions, and exploits symmetries in the data structure of the grammar rules whenever these grammar rules need to be duplicated. We demonstrate that verbalisation requires sentence planning in order to aggregate similar structures with the aim to improve the readability of the generated specification. Without modifications, the generated specification is always semantically equivalent to the original one; our bi-directional grammar is the first one that allows for semantic round-tripping in the context of controlled natural language processing.

Original languageEnglish
Pages (from-to)691-705
Number of pages15
JournalTheory and Practice of Logic Programming
Issue number3-4
Publication statusPublished - 1 Jul 2018


  • answer set programming
  • Bi-directional grammars
  • controlled natural languages
  • executable specifications
  • sentence planning


Dive into the research topics of 'Specifying and verbalising answer set programs in controlled natural language'. Together they form a unique fingerprint.

Cite this