The Blues

This page goes into more depth on how Blues work and how they can take subject and objects.

Review

Recall that Blues have two sides where it can accept donations. So far we've seen this used to make a variable the subject of a sentence when a Red touches the bottom edge of the Blue.

Idiomatic translation
A cat is sleeping.
Literal translation
There exists a thing x such that x is a cat, and there exists an event e such that e is an event of x sleeping.
Formal semantics
∃x cat(x) & ∃e sleep(e, x)

This is because the Red donates is variable on all sides, and is attached to the Blue on an edge where the Blue can accept donations.

Subjects and objects

The two inputs to the Blue are actually slightly different from each other― whatever the bottom edge receives becomes the subject of its predicate, and whatever the right edge receives becomes the object.

Given this, we can now talk about events involving multiple entities by using both edges.

Idiomatic translation
Monkey sees action.
Literal translation
There exists a thing x such that x is a monkey,
and there exists a thing y such that y is an action
and there exists an event e such that e is an event of x seeing y.
Formal semantics
∃x monkey(x) & ∃y action(y) & ∃e see(e, x, y)

In the figure above, the event see takes its subject, monkey, from its bottom and it takes its object, action, from its right. Similarly, the formal semantic representation has a final third argument, y, which is the object.

Passive constructions

You can make a passive sentence (e.g. "a banana is eaten") by omitting the triangle in the subject position of a Blue.

Idiomatic translation
A banana is being eaten.
Literal translation
There exists a thing x such that x is a banana,
and there exists an event e such that e is an event of ⬚ eating y.
Formal semantics
∃x monkey(x) & ∃y action(y) & ∃e see(e, ⬚, y)

Note that in the formal representation, since the second argument of a predicate involving an event is always the subject, we have to explicitly state that the subject is undefined with a blank space (⬚).