Attempto Controlled English Language, Tools and Applications
Exercises 3

Reasoning in ACE

By reasoning we can find out whether a given ACE text contains a contradiction, whether a given ACE text is entailed by another ACE text, whether two ACE texts are semanticaly equivalent (i.e. the first entails the second and the second entails the first), etc. Because ACE is a formal language, this kind of reasoning can be automated, but in the following exercises we try to reason manually.

In the following, assume that ACE is mapped to first-order logic with the standard semantics, e.g. including the open world assumption which states that everything that is not specified is simply unknown and not necessarily false.

Assume also that there is no background knowledge. The texts speak for themselves, there is no text in the background. The only background knowledge is knowledge about numbers, e.g. that 5 is smaller than 7, and linguistic knowledge about the words "somebody" and "something", i.e.

X object(X, atomic, _, person, _, _, _, _) → object(X, dom, _, person, _, _, _, _)
∀ X object(X, atomic, _, object, _, _, _, _) → object(X, dom, _, object, _, _, _, _)

Discuss the key concepts

Order the following texts by entailment

  1. John is a mortal.
  2. Every man is a human and every human is a mortal. John is a man.
  3. Every man is a mortal. John is a man.
  4. Somebody is a mortal.
2, 3, 1, 4

Does the entailment hold?

Write an ACE sentence which follows from the given text

"Every man is a human." entails e.g.

"Every man is somebody."
"Everybody who is not a human is not a man."

Which of the following ACE texts are semantically equivalent?

i.e. number the texts so that the texts with the same meaning have also the same number.

Implication and coordination

Implication and negation

Leaving aside the sentence with "non-polymerase" which cannot be linked to "polymerase" unless we have some background knowledge, there are basically 8 cases, and 4 equivalence classes.

The cases are the following (in propositional logic for conciseness reasons):

The representatives of the equivalent classes are:

Implication, negation and generalized quantifiers

More complex sentences


If Fido loves a cat then Fido likes the cat.
If a dog loves a cat then the dog likes the cat.
If something X loves something Y then X likes Y.

Alternatively, one can use every-sentences, e.g.
Every dog that loves a cat likes the cat.

Do those statements hold?

Norbert E. Fuchs, Kaarel Kaljurand {fuchs,kalju}