In this part, we say a little about conceptual graphs as a kind of
**logic**. We will take three basic concepts from logic
and apply them to syllogisms.

Conceptual graphs are actually a kind of logic. Every conceptual graph can be translated into a formula in the predicate calculus.

In this chapter, we talk about three aspects of the logical nature of conceptual graphs.

The first is

**negation**; Every context can be negated by placing a small symbol, "" in front of the context.The second is the logical connective "

**and**". Juxtaposed (but unconnected) conceptual graphs are connected by "and".The third aspect is how to say "

**or**", given that the default interpretation of juxtaposed conceptual graphs is "and".

Finally, we apply some of these concepts to syllogisms.

We start with negation.

In everyday language, we operate with negation all the time; for example, we often say things like "I don't feel like coming", "I can't do that", "He isn't my enemy", "She isn't stupid". In all of these sentences, negation plays a part.

In logic, there is also a symbol for negation. The convention is to use this symbol: "" and place it in front of whatever is negated.

(!!x:Sun)(Shining(x)) "The sun is not shining."

In conceptual graphs, the convetion is to place the symbol "" in front of a context. If you want to negate a conceptual graph, place a context around it (with a type such as "Situation" or "Proposition"), and place the "" symbol to the right of the context.

For example:

[Situation: [Sun: #]<-(Agnt)<-[Shine] ] "The sun is not shining."

Another example:

[Proposition: [Man]<-(Expr)<-[Understand]- ->(Thme)->[Woman: {*}] ] "It is not the case that there exists a man who understands women" "All men do not understand any women" "No man understands women"

We see, then, that in order to negate a conceptual graph, the method is to place a context around it (with the type "Situation" or "Proposition" or the like), and then to place the symbol "" in front of the context.

In everyday language, we use "and" all the time. For example, "I am both happy and satisfied", "She is both beautiful and wise", "He is both competent and a nice guy."

The usage of "and" in these examples closely mirrors the usage of "and" in logic. For "and" to be true in logic, both of the predicates connected by "and" have to be true. In the above examples, both of the predicates in each example are true simultaneously.

In everyday language, "and" also has other meanings. One of them is
to indicate temporal succession. For example, "He was sick and died".
In this example, "and" indicates that *first*, he was sick and
*then* he died.

This usage is not the one we use in logic. In logic, only the usage where both predicates are true simultaneously is used.

In logic, the convention is to place the symbol "" between the two predicates which must be connected. For example:

(x:Woman)(beautiful(x) dangerous(x)) There exists a woman who is both beautiful and dangerous"

As already noted, when conceptual graphs stand beside each other (or underneath each other) in the same context, without any connecting arcs, the interpretation is that both are true at the same time. For example:

[Proposition: [Woman: *x]->(Attr)->[Beautiful] [Woman: ?x]->(Attr)->[Dangerous] ] "There exists a woman x who is beautiful. And this woman x is also dangerous." "There exists a woman who is both beautiful and dangerous"

In this example, the two subgraphs are juxtaposed in the same context, but without any connecting relation and arcs between them. Therefore, the interpretation is that both are true at the same time.

Thus we see that in order to say that two conceptual graphs are both true, we just need to place them together in the same context without any connecting relation and arcs between them.

Given that "and" is the interpretation we give to graphs that are juxtaposed, the question arises, how do we say "or"?

The answer comes from logic. In logic, only one of the two connectives "and" and "or" is necessary to have, if only we have negation as another primitive. This stems from the fact that we can express "or" in terms of "and" plus negation, and vice versa.

The formula is:

p q is equivalent to (p q)

In order to do this with conceptual graphs, we just need to apply the two rules we have learned for how to express negation and conjunction ("and"). That is, in order to express disjunction ("or") between two conceptual graphs G1 and G2:

- Place a context around G1 and negate the context,
- Place a context around G2 and negate the context,
- Place these two contexts inside a third, larger context,
- Negate the larger context.

For example, in order to say

John is either a fool or very clever.

we can draw these conceptual graphs:

[Situation: [Situation: [Person: John]- - -[Fool] ] [Situation: [Person: John]->(Attr)->[Clever]- ->(Meas)->[Degree: #very] ] ]

In logic, this method can be extended beyond two predicates to any number of predicates. The formula is:

p1 p2 ... pnis equivalent to (p1 p2 ... pn)

We see that the pattern is just to negate every predicate and then place them all in the same context, which we then negate.

This can be applied to conceptual graphs as well. The method is to place contexts around each of the graphs, negate every context, place all of these negated contexts in the same, large context, and finally negate the large context.

"Or" is not a primitive in conceptual graphs. The reason is that "and" is a more useful primitive, and "or" can be produced by means of "not" and "and".

In order to say "or" in conceptual graphs, we follow the procedure outlined above, applying the rules for "and" and "not" a number of times until the desired outcome has been reached.

Syllogisms will be used in the exercises, so just to recapitulate, we here give examples of the four most common syllogism-patterns.

In syllogisms, there are four kinds of statements:

**A:***Universal affirmative.*All*A*are B**I:***Particular affirmative.*Some*A*are B**E:***Universal negative.*No*A*is B**O:***Particular negative.*Some*A*are not B

- "A" and "I" are from the Latin "affirmo", "I affirm", while
- "E" and "O" are from the Latin "Nego", "I deny".

There are 256 possible syllogisms, but only about 15 of them are
valid. In the middle ages, the valid syllogisms were remembered by
names that contained three of the letters above, for example
*ferio*.

There are four *figures*, or basic patterns. The figure we
will be using is the following (called figure 1):

- y(M,P)
- x(S,M)
- Therefore: z(S,P)

Where x, y, and z are As, Is, Es, or Os. S, M, and P are classes of objects, for example "Mammal" (in the case of A and E) or individuals (in the case of I and O).

The four syllogism patterns which we will make use of in the exercises are:

*Barbara**Celarent**Darii**Ferio*

They all conform to figure 1 (above). These are exemplified below.

**A:**All birds are egg-layers.**A:**All sea-gulls are birds.**A:**Therefore, all sea-gulls are egg-layers.

**E:**No mammals are birds.**A:**All whales are mammals.**E:**Therefore, no whales are birds.

**A:**All swans are white.**I:**Some birds are swans.**I:**Therefore, some birds are white.

**E:**No university student is a toddler.**I:**Some skaters are university students.**O:**Therefore, some skaters are not toddlers.

You can encode syllogisms in CGs in a number of ways. Here, we present one of the ways.

In order to be able to write syllogisms in a uniform manner, one needs a pattern to follow. The following could be such a pattern:

[If: [ ... Premise 1 ... (a CG) ] [ ... Premise 2 ... (a CG) ] [Then: [ ... Conclusion ... (a CG) ] ] ]

While the overall pattern is an IF-THEN construction with two premises and a conclusion, each premise and conclusion is either an IF-THEN construction or a conjunction of two graphs.

The patterns to follow for the four types of statement are:

[If: [A: *x] [Then: [B: ?x] ] ] |
[Proposition: [A: *x] [B: ?x] ] |

[If: [A: *x] [Then: [B: ?x] ] ] |
[Proposition: [A: *x] [B: ?x] ] |

The difference between a Universal and a Particular is that a Universal is an IF-THEN construction, whereas a Particular is a conjunction of two concepts.

The difference between an Affirmative and a Negative is the presence of a ("not") sign in front of the "B"-concept in the Negative.

Thus, in order to construct a syllogism, we will have an outer IF-THEN, inside which we find three graphs.

Each subgraph should use a different coreference link (e.g., *x, *y, *z) for clarity, although because of the scope rules, they need not be different.

For example, below is an encoding of the following Barbara syllogism:

**A:**All rhinos are mammals.**A:**All mammals are animals.**A:**Therefore, all rhinos are animals.

And one encoding could look like this:

[If: [If: [Rhino: *x] [Then: [Mammal: ?x] ] ] [If: [Mammal: *y] [Then: [Animal: ?y] ] ] [Then: [If: [Rhino: *z] [Then: [Animal: ?z] ] ] ] ]