Finally, a note about names. When writing new facts, you may have to
choose names for your predicates
- names like
has_part. Please avoid the name
is, which means
something special to Prolog. If you try to define a fact whose predicate
is, you will get confusing messages about updating built-in facts.