English Sentences to FOL

336 Views Asked by At

I have the following 2 sentences to convert to FOL formulas-:

1) Water, water, everywhere, but not a drop to drink. [ water(l) means water is at location l, drinkable(l) means there is drinkable water at location l ]

2) There's one in every class. [ enrolled(x, c) means x is a student in class c; one(x) means x is the "one" in question ]

I have the following understanding

Sentence 1

Water is everywhere and none of that is drinkable

Translated as-: ∀l(water(l) ^ ¬drinkable(l))

Sentence 2

In all classes c, there exists one student

Translated as-: ∀c∃x(one(x) ⇒ enrolled(x,c))

Could you please help me if I have made an error somewhere. I am unsure if these are correct

1

There are 1 best solutions below

0
On BEST ANSWER

The first one is correct, the second is not.

Note that you can make $\forall c \exists x (one(x) \to enrolled(x,c))$ trivially true by (for every class $c$) picking an $x$ for which $one(x)$ is false ... as that will make the conditional true.

Indeed, it should not be that for every class there is someone such that if that is the 'one', then that 'one' is enrolled in the class ... but rather that for every class there is someone who is 'the one' and is enrolled in the class. So:

$\forall c \exists x (one(x) \land enrolled(x,c))$

Also, your

In all classes c, there exists one student

is not right. It should be:

In all classes c, there exists one student who is 'the one'