Questions: Substitution and Unification

5 questions to test your understanding

Score: 0 / 5
Question 1 Multiple Choice

You try to substitute y for x in the formula ∃y (x = y), obtaining ∃y (y = y). What went wrong?

ANothing — substitution always replaces all variable occurrences and ∃y (y = y) is correct
BVariable capture: the free y being substituted fell under the ∃y quantifier, changing the formula's meaning from 'there exists something equal to x' to 'something equals itself'
CSubstitution is not allowed inside quantifier scopes
DThe error is that x is bound in ∃y (x = y), so substitution cannot apply
Question 2 Multiple Choice

What is the 'occurs check' in Robinson's unification algorithm, and why does failing to perform it cause problems?

AIt checks whether a term has already appeared in a previous unification step, to avoid redundant work
BIt prevents a variable x from being unified with a term t that contains x, which would require an infinite term to satisfy x = t
CIt verifies that function symbols match before recursing on subterms
DIt checks that both terms have the same number of arguments before attempting unification
Question 3 True / False

Substitution φ[t/x] replaces most occurrences of the variable x in formula φ — including those that appear under quantifiers like ∀x or ∃x.

TTrue
FFalse
Question 4 True / False

The most general unifier (MGU) is the most specific substitution possible — it assigns concrete values to most variable to make the two terms identical.

TTrue
FFalse
Question 5 Short Answer

Why is the most general unifier preferred over other unifiers in resolution theorem proving and logic programming?

Think about your answer, then reveal below.