First Order Logic Proof

384 Views Asked by At

I have these $4$ sentences.

1) Dogs and Cats are pets.

2) Pluto and Bruno are dogs.

3) Kitty is a cat.

4) All dogs except Bruno eat bones.

I turned them in First-Order Logic Form.

  1. $∀x(\mathrm{dog}(x) \to p(x) \wedge \mathrm{cat}(x) \to p(x))$

  2. $\mathrm{dog(Pluto)} \wedge \mathrm{dog(Bruno)}$

  3. $\mathrm{Cat(Kitty)}$
  4. $∀x(((\mathrm{dog}(x)\wedge \neg \mathrm{ dog(Bruno))} \to \mathrm{E}(x,\mathrm{bones))} \wedge \mathrm{ ((dog}(x) \wedge \mathrm{dog(Bruno))} \to \neg \mathrm{E}(x,\mathrm{bones)))}$

I am not sure if sentence 4 is correct.

I need to prove the following sentence is correct:

Pluto doesn't eat bones.

I need to also prove the following sentence is not correct:

Pluto eats bones.

I tried negating both statements to prove them but I must have done something wrong. Can someone help?

1

There are 1 best solutions below

5
On

Yeah, your 4 is not correct. Note that your:

$$\forall x ((Dog(x) \land \neg Dog(Bruno)) \to E(x,bones))$$

is trivially true given that $Dog(Bruno)$ is True, and hence $\neg Dog(Bruno)$ is False, and hence $Dog(x) \land \neg Dog(Bruno)$ is false for any $x$, and hence $(Dog(x) \land \neg Dog(Bruno)) \to E(x,bones)$ is True for any $x$, regardless of whether or not $x$ eats bones or not. So this is not what you want.

Instead, for the first half, try this:

$$\forall x ((Dog(x) \land \neg x = Bruno) \to E(x,bones))$$

Can you do the other half now yourself?

By the way: I don't see how you would prove that Pluto does not eat bones, given that Pluto is a dog and all dogs except Bruno do eat bones....