Specifying Logic Programs in Controlled Natural Language
Norbert E. Fuchs, Rolf Schwitter
Abstract
Writing specifications for computer programs is not easy since one has to take into account the disparate conceptual worlds of the application domain and of software development. To bridge this conceptual gap we propose controlled natural language as a declarative and application-specific specification language. Controlled natural language is a subset of natural language that can be accurately and efficiently processed by a computer, but is expressive enough to allow natural usage by non-specialists. Specifications in controlled natural language are automatically translated into Prolog clauses, hence become formal and executable. The translation uses a definite clause grammar (DCG) enhanced by feature structures. Inter-text references of the specification, e.g. anaphora, are resolved with the help of discourse representation theory (DRT). The generated Prolog clauses are added to a knowledge base. We have implemented a prototypical specification system that successfully processes the specification of a simple automated teller machine.
Create a lesson
Related papers
A Memory-Based Approach to Learning Shallow Natural Language Patterns
Shlomo Argamon, Ido Dagan, Yuval Krymolowski
A Comparison of WordNet and Roget's Taxonomy for Measuring Semantic Similarity
Michael Mc Hale
Some Ontological Principles for Designing Upper Level Lexical Resources
Nicola Guarino
Towards an implementable dependency grammar
Timo Jarvinen, Pasi Tapanainen
A Variant of Earley Parsing
Mark-Jan Nederhof, Giorgio Satta
Segregatory Coordination and Ellipsis in Text Generation
James Shaw