How can I represent the first order logic "anyone who punches somebody else".?

361 Views Asked by At

A fighter is "anyone who punches somebody else".. How can I define a figher in first order logic?

Consider that I have the property predicates Fighter(x)(is a fighther), Punches(x,y) (x punches y).

I was thinking something like below:

all x exists y (Punches(x, y) -> Fighter(x)).

But I'm not sure if it fully captures what is written in the statement.

1

There are 1 best solutions below

0
On BEST ANSWER

As a general piece of advice, there are a handful of good questions to ask yourself when translating a sentence into first-order logic.

  1. What state of affairs would cause this sentence to be false? What are the "near miss" scenarios that almost work but not quite?
  2. Did I get the quantifiers, their scope, and their order correct?
  3. Am I assuming that variables can't co-refer?
  4. Do I want a conditional or a biconditional?

I'll let $P(x, y)$ mean $x$ punches $y$ and let $F(x)$ mean $x$ is a fighter.

What you wrote, $ \forall x \forall y \mathop. P(x, y) \to F(x) $ is not quite right.

In prose, it is for all entities $x$ and $y$, if $x$ punches $y$, then $x$ is a fighter.

The quantifiers are correct, but this sentence would say that a person who punches only themself is a fighter.

We can remove this possibility by saying the following, which are equivalent.

$$ \forall x \forall y \mathop. (x \neq y \land P(x, y)) \to F(x) $$

$$ \forall x \mathop. (\exists y \mathop. P(x, y) \land x \neq y) \to F(x) $$

These both say anyone who punches someone who isn't themself is a fighter.

However, we are trying to represent a definition of a fighter. This means that fighters are precisely the entities that punch things that aren't themselves.

$$ \forall x \mathop. (\exists y \mathop. P(x, y) \land x \neq y) \leftrightarrow F(x) $$

This sentence, strictly speaking, is not a definition. A definition is a metalinguistic thing that can't really be captured in first-order logic. However, this sentence is true in precisely the cases where the fighter predicate acts like it was defined this way (from the perspective of its truth conditions).