I am trying to write the following statements in first-order logic. I have been given the functions: DirectorOf(A, B), IsMovie(A), and Equals(A, B):
1) All movies have an director.
2) No movies were directed by Mark.
Here is my attempt at converting the statements:
1) $ \forall \text{b}, \exists \text{a} ~ \text{(IsMovie(b)} \land \text{DirectorOf(b, a))} $
2) $ \neg \exists \text{b} ~ \text{(isMovie(b)} \land \text{DirectorOf(b, `Mark'))} $
Am I missing anything?
Thanks a lot for the help.
(2) is correct, (1) should be:
$$∀b(IsMovie(b) → ∃a[DirectorOf(b, a)])$$
(The square brackets instead of parentheses are for readability.)
Also, there's no need to put quotation marks around the name "Mark" in (2).