0
$\begingroup$

Let $\Sigma = \left\{ c,g(,),R_1(),\ldots,R_k() \right\}$. Given a sentence (a formula with no free variables) $\varphi$ above $\Sigma$, is there an algorithm to check if $\varphi$ is satisfiable?

I've understood one approach could be showing a contradiction to the general satisfiability problem. Meaning, assuming by a contradiction that there's such an algorithm and utilizing for the general problem (Which we know isn't decidable)

I'd be glad if you could help me with that.

Thanks!

1 Answers 1

1

If I understand your notation correctly, you have a binary function $g$ and several unary predicates $R_i$. With this vocabulary, you can write a first-order sentence saying that $g$ is a pairing function, i.e., every element is of the form $g(x,y)$ for a unique $x$ and $y$. Using a pairing function, you can encode binary (or higher-arity) relations as unary ones; just represent a binary $P$ by the unary $R$ such that $R(g(x,y))\iff P(x,y)$. With arbitrary-arity relations available, you can use the usual proof of undecidability for unrestricted vocabularies.

  • 0
    How would you do the same trick for an higher-arity? Also, you used some $R$ for the purpose of encoding $P$. Given that you have only $k$ relations, how would you encode a formula with more than $k$ relations? Thanks!2017-01-30
  • 1
    Higher arities are not a problem, because you can code, for example, 5-tuples by $g(u,g(v,g(x,g(y,z))))$. Once you have higher arities, you can code, for example, two binary relations $P,Q$ into one ternary relation $R$, where $R(x,y,z)$ means $P(x,y)$ if $z=c$ and $Q(x,y)$ if $z\neq c$. (Actually, none of this is needed because, if I remember correctly, a single binary relation is enough for undecidability.)2017-01-30