First-Order Logic Semantics