first-order predicate logic with equality
logical foundations of logic programming
scientific article