Replace function symbols with predicate symbols in predicate logic

147 Views Asked by At

I have seen that if we take a first order language that contains some functional symbols $f_1, \dots f_n$, then we can replace those functional symbols by $n$ new predicate symbols that have bigger arity.For example, if we have $f(x,y) = z$, we would replace it with $F(x,y,z)$. Is there a way to prove that those languages are equivalent?

If we have a language $L$ with only one function symbol ($f/1$) (no predicates or constants), we want to create another language $L'$ with only one predicate symbol ($F/2$), such that if $\phi$ is a sentence and $M$ is a model of language $L$ $M \models \phi \iff \bar{M} \models \bar{\phi}$, where $\bar{M}$ is a model for $L'$ and $\bar{\phi}$ is the new sentence $\in L'$