Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1 Introduction
Controlled English (CE) is a type of Controlled Natural Language (CNL), designed to
be readable by a native English speaker whilst representing information in a
structured and unambiguous form. It is structured by following a simple but fully
defined syntax, which may be parsed by a computer system. It is unambiguous by
using only words that are defined by the analyst as part of a conceptual model. CE
therefore serves as a language that is simultaneously understandable by human and
computer system, thus facilitating the communication between them.
The CNL used in ITA project 12 is based upon a draft proposal for Controlled English
[CE], defined by John Sowa as a human-friendly version of Common Logic [CL].
During the use of CE in project12, and in several transitions projects, some additions
and modifications were made, to the extent that we now use a different dialect,
herein called ITA Controlled English. All references below in this document are
references to ITA CE.
Experience in using ITA CE within the Project 12 planning work and on several
transition projects suggests that CE is of significant benefit, in the following ways:
it permits the use of a single language that is used by both human and
machine, encouraging the development of novel hybrid ways of reasoning
it facilitates the development and understanding of logical conceptual models
containing both structures and logical relationships
it facilitates the viewing, construction and understanding of rationale
This document describes the current syntax of CE, provides an informal introduction
to its use, and offers an initial mapping between the syntax and predicate logic, thus
providing an initial semantics for the CE sentences.
Some of the content of this document has come from work undertaken during the UK
Pathfinder II transition contract project.
D Mott, IBM UK
27/07/2010
For each structure the linguistic purpose is stated, providing an informal specification
of why the structure is used. In addition each subsection is introduced with some
examples of the relevant structures, providing an overview of the meaning of the
structures.
It should be noted that the use of CE in the ITA project is ongoing research, and the
specification has gaps, overlaps and inconsistencies of style in certain areas.
Furthermore some of the constructs are experimental placeholders and have not been
integrated to the inferencing component, and are not therefore yet useful. These
experimental features are noted where appropriate. It is anticipated that further use of
CE in ITA projects will lead to future enhancements, modifications and
simplifications.
Name
Op
DateTime
D Mott, IBM UK
Linguistic Purpose
To name the type of an object, as defined in the lexicon of the
ontology
To name a has-as property, as defined in the lexicon of the
ontology
To name a relationship between two objects, as defined in the
lexicon of the ontology
To name a property, as defined in the lexicon of the ontology
To refer to an object that is not specifically named but is at
some stage associated with the variable. A variable must
comprise only uppercase alphacharacters or numeric
characters
To name an instance of an object
To reference an infix mathematical operator: +, - , *, /
To name a date/time
27/07/2010
All of these categories are in the form of a string of characters. QUOTE and Variable
have further restrictions as noted in the table. If this sequence is to contain characters
other than alphanumerics, then they should be contained with single quotes, eg The
Commander. Uppercase and lowercase may be used, and the items are case sensitive.
D Mott, IBM UK
27/07/2010
Linguistic Purpose
To specify a proposition optionally in a
context (defined by the
ReferentialNP);
to specify a query
To specify a single proposition.
To specify a single proposition as:
something stated by a source
(optionally at a time); a simple
statement (optionally annotated with a
name); a causal statement (optionally
annotated); a conditional statement; a
Boolean expression of statements
linked by And/or; a new
conceptualisation statement
To specify a single proposition as: a
simple statement (optionally with a
date and time and location); a
statement that an entity exists; a
There is a capability for CE to allow a list of Declaratives separated by semi-colon, However this has
been removed due to efficiency reasons. It may be possible in the future to revise the parser code to reintroduce this facility.
D Mott, IBM UK
27/07/2010
NounP ->
SimpleNP ->
ExistentialNP ->
(a | an) Description
Description ->
Noun |
Noun NameDecl? RelativeClause?
NameDecl ->
named Name |
Variable |
known as Name
RelativeClause ->
that VerbP
described as QUOTE
ReferentialNP ->
the Noun ( Name | Variable) |
Variable |
the type Noun |
the Noun known as Name
VerbP ->
SimpleVP ->
D Mott, IBM UK
27/07/2010
SimpleNP |
Adjective
VerbComp ->
SimpleNP
MathExpr ->
SimpleNP Op SimpleNP
Belief ->
knows that |
does not know that |
believes that |
does not believe that |
is told by NounP that
is not told by NounP that
Source -> NounP |
( after reading Document )? NounP
A location in space
A list of propositions each of which is
assumed by an entity
A general definition of a proposition as
either structured (SimpleDS) or
unstructured (QUOTE).
D Mott, IBM UK
27/07/2010
AndOrDS ->
Linguistic Purpose
A logical inference (rule) between a
premise and a conclusion
The addition of brackets in order to
disambiguate structures such as
and/or
A Boolean expression (using and) of
simple propositions
2.2.3 Rationale
Rationale is the set of reasoning steps, where each step is defined as a because
relation between multiple premises and a single conclusion. These are general
propositions so may be structure or unstructured, or any combination of these:
the person Fred has the person John as uncle
because
the person James has the person John as brother and
the person Fred has the person James as father.
the person Fred has the person John as uncle
because
John told me so.
the plan has failed
because
there was a misunderstanding.
Note that unlike the logical rules, there are no brackets on the premises.
Structure
CausalDS ->
GeneralProposition
because
GeneralProposition
( and GeneralProposition )*
D Mott, IBM UK
Linguistic Purpose
Specifying a causal dependency
between a premise (after the
because) and a conclusion (before
the because)
27/07/2010
D Mott, IBM UK
27/07/2010
conceptualise ( a | an ) Description |
conceptualise NounP VerbP
Linguistic Purpose
The specification of a new concept or
relation
2.2.5 Queries
A query specifies a request to determine the truth of a proposition or set of
propositions. This is experimental and has not been integrated to the inference engine.
Structure
Query ->
Linguistic Purpose
Specifying a query, by asking if a
proposition is true
D Mott, IBM UK
27/07/2010
3 Extensions
We believe that CE is useful in expressing basic statements, as described above.
However it is clear that the language can be stilted, and we have proposed a
mechanism to allow a user to extend the syntax (rather than just the vocabulary). This
is described in more detail in [XCE], and some basic information is given here for
completeness.
For example, in order to say that two people attend a meeting, instead of saying in
basic CE:
( the person P attends the meeting M ) and
( the person Q attends the meeting M )
it becomes possible to say:
the person P attends the meeting M with the person Q
Such a structure could be used on the premise or conclusion of a logical rule.
In order to extend the syntax of CE in this way, an experimental linguistic
transformation language has been defined. In this example the transform would be:
under ~~andorDS
~~simpleNP 1 attends ~~simpleNP 2 with ~~simpleNP 3
==>
( ~~simpleNP 1 attends ~~simpleNP 2 ) and ( ~~simpleNP 3 attends
~~simpleNP 2 )
:: a meeting
.
The meaning of this language is further discussed in [XCE]. It should be noted that
because the syntactic transformation is between an extended CE sentence and a basic
CE sentence, the semantics of the extended CE sentence may, in theory, be derived
from the concatenation of the transform from extended to basic CE, then from basic
CE to Common Logic. However this does require a formalisation of the semantics of
the linguistic transformation language, which to date has not been undertaken.
Such extensions can be added to certain places within the parse tree (e.g. andOrDS in
the example above), to extend the syntax of these structures. The current syntax
structures where extensions may be added are:
Paragraph
SimpleDS
RelativeClause
Declarative
AndOrDS
D Mott, IBM UK
10
27/07/2010
Linguistic Purpose
A CED has an optional title, followed
by a (possibly empty) sequence of
items, each being a section, an author
specification, a date specification, a
note or a CE sentence. The syntax
does not prescribe a particular order
of these items. However if a note is
provided, it will be taken as referring to
the immediate preceding item.
( line-of-characters )* blank-line
D Mott, IBM UK
11
27/07/2010
5 Logical Mapping
A key aspect of the use of Controlled English is that it is intended to be the human
face of the logical specification of the ontology and instances of the ontology. To that
end it is necessary to map the syntax of the CE onto the syntax of predicate logic, in
order that the semantics of the CE sentences be established, and grounded in logic.
This section starts to define this mapping, using the CLIF syntax of Common Logic
[CL] as the gold standard syntax for predicate logic. Further work is needed to
complete this mapping into the remoter areas of the CE syntax and intended
semantics, such as assumptions, states of belief and default negation.
No attempt is made to provide a direct model-theoretic semantics of CE sentences.
However, by mapping the syntax of CE to the syntax of predicate logic (specifically
Common Logic CLIF syntax), there is implied a model theoretic semantics of CE
sentences derived from the concatenation of the mapping from CE to Common Logic
and from Common Logic to model-theoretic semantics.
5.1 Individuals
It is presumed that the universe of discourse contains a set of individuals, each having
a unique identifier. It is also presumed that these identifiers are those specified in (or
can be mapped onto) the Name component of an entity description in a CE sentence.
For example in the person Fred, it is presumed that Fred is a unique identifier of an
individual, such that any reference to Fred refers to the same individual. This is the
case even if the type is different, thus the teacher Fred or the teacher named Fred
will also refer to the same entity.
Note that the known as KName structure does not make the presumption that all
references to the same KName refer to the same individual.
It is possible that the system using the CE in the context of an application may further
map the CE names onto other naming systems, such as URIs. For example, in the ITA
CPM visualiser:
individual names, such as Fred, are mapped onto a URI, prepended with a
domain-specific string, such as
http://project12.usukita.org/ontologies/cpm/instance/test.owl#
D Mott, IBM UK
12
27/07/2010
5.4 Types
The fragments of CE the TYPE Name or the TYPE named Name specify that the
individual whose name is Name is of the type specified. Treating a type as a unary
logic predicate, this may be stated in Common Logic as:
(TYPE*Name*)
For example:
the person Fred
maps to:
(ex:Personex:Fred)
where ex:Person is the domain specific mapping of person, and ex:Fred is the
domain specific mapping of Fred.
D Mott, IBM UK
13
27/07/2010
14
27/07/2010
D Mott, IBM UK
15
27/07/2010
D Mott, IBM UK
16
27/07/2010
5.11 Rationale
A reasoning step is specified as a CE statement of the form:
CONCLUSION because PREMISES.
This may be mapped into the following Common Logic pattern:
(if
PREMISES
CONCLUSION))
where PREMISES is a conjunction of all of the Common Logic statements formed
from mapping statements in the CE PREMISES, and CONCLUSION is the
conjunction of all Common Logic statements formed from mapping the statement in
the CE CONCLUSION. Note that even though there may only be a single CE
statement in the conclusion, this may be mapped into more than one Common Logic
statement. Note also that there are no variables in a because CE statement, so there
are no variables in the mapped Common Logic statement.
For example:
the task T1 has the agent A1 as executor
because
the plan P1 has the agent A1 as executor and
the plan P1 contains the task T1.
is mapped to:
D Mott, IBM UK
17
27/07/2010
D Mott, IBM UK
18
27/07/2010
6 Conclusion
This document has defined various aspects of Controlled English; its syntax, informal
meaning and a semi-formal mapping to predicate logic (specifically via Common
Logic). It is hoped that such a mapping will permit the wider use of Controlled
English within the ITA programme, since experience in project 12 and in transition
projects suggests that there is significant benefit of using CE as the human face of
logic. It is also hoped that the use of CE, together with the use of rationale, are two
key technologies that will support future ITA work in the human graspability of logic,
facilitating shared understanding in collaborative problem solving.
However it is recognised that more work is needed in extending the syntax of CE and
in the mapping of CE to predicate logic, especially in the remoter areas of the CE
syntax and intended semantics, such as assumptions, states of belief and default
negation. Such mapping will also assist the further detailing of the logic proposal
based upon RIF [LogicProposal].
D Mott, IBM UK
19
27/07/2010
7 References
[CE]
https://www.usukitacs.com/?q=node/5425
[XCE] Layered Controlled Natural Languages, D. Mott and J. Hendler, 3rd Annual
D Mott, IBM UK
20
27/07/2010