Free Variables Can Be Used to Handle "forall"
- Many KR systems do not explicitly use quantifiers.
- Their variables are all tacitly universally quantified, as in Prolog.
- Thus
eats(john1, X) :- fried(X). means John eats anything
if it's fried.
- This means literally anything, of course - if
fried(cartyres1)
is stored in the KB, then eats(john1, cartyres1) follows.