public Term subst(Substitution substitution) { return substitution == null ? this : substitution.subst(this); }
public void unify(Term term, Substitution substitution) { substitution.put(this, term); }