For the following natural language sentence:
Hermione is the only Gryffindor student who does not like Flying class.
My English to FOL conversion is as follows:
∀x StudentOf(x, Gryffindor) ∧ ¬Likes(x, Flying) ⇒ (x = Hermione)
I've been told that this is wrong, but I believe it is right.
Do you think this conversion is right? If not, can you please help me with why this is wrong?
It is wrong.
Assume there are no students in Gryffindor. Then your FOL would still be true, but the natural language sentence clearly states that there is at least one student, namely Hermione.