I would appreciate pointers to publications which report on attempts to use
as specification language a subset of natural language that can be translated
into first-order predicate logic, or Horn clauses.
This is the slightly edited summary of the answers I received sofar. I would
like to thank all who answered my request.
--- nef
------------------------------------------------------------------------------
From: (Ulrich Neumerkel) <ulr...@dec4.wu-wien.ac.at>
Check Syllog of IBM Yorktown Heights.
------------------------------------------------------------------------------
From: (Bob LeChevalier) <cbmvax!snark.thyrsus.com!loj...@uunet.UU.NET
(l)Bob LeChevalier(r)>
We have just submitted a proposal to the US Defense agency DARPA which
prototypes the use of the artifical language Lojban in natural language
processing. One specific application we are aiming for is the use of Lojban
as a specification language. Lojban has signififant advantages over other
artificial languages in that it IS a predicate language (and people have observed that it is a superset of PROLOG, after a fashion, although there is no
evolutionary tie). Lojban is the recently completed version of Loglan
a language project started in the 1950's to develop a language test tool
for the Sapir-Whorf Hypothesis, and other linguistic research experiments.
Unlike most ALs, it has been heavily influenced by linguistic research
during the time since, and was NOT invented to be an 'International
Language'. The goal of using Loglan/Lojban for natural language applications
wioth computers has been equally important since 1970's. The language is
syntactically unambiguous, having a LALR1 parser as a formal grammar
specification/prescription. However, unlike computer languages, it has
the full apparatus of natural language for expressing a variety of things
you wouldn;t normally say to a computer (at least not until computers can
'understand' them).
I can send you more information, but much of our material is only printed,
not electronic, so I prefer to use the postal services. We expect to have more
on line material within 2-3 months. There is, as of yet, no literature
specifically on Lojban as a specification language, since it is still a
concept not yet attempted. (Lojban has no fluent speakers as of yet, but
we have had a condierable amount of non-fluent conversation on a variety of
subjects - perhaps a dozen people have demonstrated ability to follow or
participate in a conversation, with another 1-2 dozen having demonstrated
the ability to write a cogent paragraph or more, though usually not error-free.
Considering that we are still working on a dictionary and textbook, the
skill level achieved is quite good.)
There is an electronic mail discussion list on Lojban, but it is quite
technical and fairly voluminous. I recommend it if you are seriously
interested, and don't recommend it otherwise. Send a request to
lojban-li...@snark.thyrsus.com to subscribe.
For information about Lojban, please provide a snail-post address to me
via mail or phone. We are funded solely by contributions, which are
encouraged for the purpose of defraying our costs, but are not mandatory.
------------------------------------------------------------------------------
From: (Hans Weigand) <wei...@kub.nl>
We did research on this subject for several years, employing
the theory of Functional Grammar as general framework. See
Dignum F et al, 1987. Constraint modelling using a conceptual
prototyping language. DATA & KNOWLEDGE ENGINEERING 2, Nov 87;
Weigand, Hans, 1990. Linguistically Motivated Principles of
Knowledge Base systems. Foris, Dordrecht.
(the latter takes a wider scope to the use of NL in system
design, e.g., including the use of electronic lexicons)
------------------------------------------------------------------------------
From: Nancy Leveson <na...@murphy.ICS.UCI.edu>
We thought about this briefly, but then decided it was not the approach we
wanted to take. Some people at ISI did this a fairly long time ago -- contact
Bob Balzer (bal...@isi.com) to find out about it.
------------------------------------------------------------------------------
From: Walid Saba <ws...@cs.uwindsor.ca>
Check with Dr. Douglus Skuce at
Ottawa-Carleton Institute for Computer Science
Univeristy of Ottawa
Artificial Intelligence Lab.
34 Somerset St. E.
Ottawa, Ontario, Canada K1N 6N5
email: do...@csi.uottawa.ca
ph: + 1(613) 564-5418
Dr. Skuce did work on similar projects, and he might be able to help.
------------------------------------------------------------------------------
From: (Jacob L. Cybulski) <ja...@latcs1.lat.oz.au>
I have lots of references in this area but you'd have to be patient for I am
currently writing a lit survey as a part of my PhD thesis "Automatic
Acquisition of Design Constraints from Requirement Specifications in Natural
Language" and I am under a non-disclosure agreement with Amdahl. I'll send
you the report as soon as it gets Amdahl clearance (after it gets finished
first).
------------------------------------------------------------------------------
From: per...@alice.att.com (Fernando Pereira)
I have come across such proposals from time to time, and I would be able
to give you some references if I weren't 2500 miles away from my filing
cabinet. However, I would like to make a general comment on the viability
of such an enterprise. The communicative efficiency of natural language
depends to a great extent on two important factors: extensive shared
background between speaker (writer) and hearer (reader), and the ability
of readers to apply a gamut of inferential techniques (deduction, analogy,
default reasoning,...) to the problems of comprehension. Individual
sentences are connected by a complex tissue which involves the goals
of participants, their focus of attention, their rethorical choices,
their use of syntactic structure (and intonation, in speech) to indicate
saliency, contrast and parallelism, etc., etc. Such mechanisms
are fallible, for example information believed by a participant to be common
may not be). Natural language buys communicative efficiency at the
expense of precision.
Technical languages (eg. mathematics, the law) in which precision is
more important than efficiency or allusiveness are much more formal than
general language. Precision is of course paramount in program
specification, so by necessity ``natural language'' specifications
will be extremely formal. In fact, it is not at all clear that anything
but a formal language will do for high-quality specifications.
In other words, the very properties that make natural language ``natural''
are those that make it less useful for formal specification.
A simple example drives the point home. Nested iterations are a common
device in programs. Their specification-level equivalent in natural
language can be argued to be multiple quantified phrases. The
``specification''
(1) Who is the owner of every file?
may be thought to have the following implementation
(2) ?- user(P), file(F), owns(P, F).
Yet, the scopes of quantification in (1) are not explicit, and in fact
the specifier might have intended
(3) ?- user(P), forall(F, file(F) => owns(P, F)).
What leads us to prefer (2) to (3)? It might be argued that the crucial
factor is our common sense beliefs about ownership of large sets of
things (in this case, files), namely, that it is rather unlikely
that a single person owns every file. Such shared beliefs streamline
communication ((1) doesn't need explicit scope markings while (2) and
(3) do), but people, let alone machines, can fail to have or apply the
assumptions believed by the speaker (reader) to be in force.
In summary, program specification seems to require a form of
language strongly divergent from natural language. I would rather
that effort be spent on designing better formal systems for
specification and verification than in trying to give people the
delusion that it is possible to communicate with extreme precision
and yet informally. Specification will and always be ``unnatural'', in the
same way that mathematics is ``unnatural''. If, in the fullness of time,
we succeed in constructing agents so intelligent and attuned to human
nature and society that we can converse with them in natural language,
and we want them to program for us, the first thing we will need to
do is to agree with them on appropriate formal or semiformal languages
to communicate our requirements precisely.
------------------------------------------------------------------------------
From: (Nicky Ranganathan) <pran...@rnd.stern.nyu.edu>
I would like to refer you to Richard Montague's work
on "English as a formal language". Check out a book by the name
"Montague Semantics" (I dont remember the authors name at the moment).
Fairly interesting. I have also written a term paper on that topic
a long while ago, if you are interested do drop me a line.
------------------------------------------------------------------------------
------------------------------------------------------------------------------