1

I will start with a few definitions:

  • Let $X$ be a set, and let $i, n \in \mathbb{N}^*$ such that $i \leq n$. The $i$-th $n$-ary projection is defined as: $$\pi_i^n : X^n \rightarrow X$$ $$x_1, \dots, x_n \mapsto x_i$$
  • Let $X$ be a set, and let $F$ be a set of functions of the form $f : X^n \rightarrow X$ (for $n > 0$). The clone generated by $F$ on $X$, denoted $C(F)$, is a set such that:
    - $C(F)$ contains $F$
    - $C(F)$ contains all the projections over $X$.
    - For all $m$-ary functions $f \in C(F)$, and for all $n$-ary functions $g_1, \dots, g_m \in C(F)$, the function $h(x_1, \dots, x_n) = f(g_1(x_1, \dots, x_n), \dots, g_m(x_1, \dots, x_n))$ is in $C(F)$
  • Let $\mathbb{B} = \{0, 1\}$ be the boolean domain. For all $n > 0$, we say that $f : \mathbb{B}^n \rightarrow \mathbb{B}$ is a boolean function.
  • A boolean function $f$ is said to be falsity-preserving when $f(0, \dots, 0) = 0$ (according to https://en.wikipedia.org/wiki/Functional_completeness). We denote the set of all falsity-preserving functions by $P_0 = C(\{\lor, \oplus\})$ just as in https://en.wikipedia.org/wiki/Post's_lattice.
  • Rule 110 is defined as $f(x, y, z) = (\lnot x \land y) \lor (y \land \lnot z) \lor (\lnot y \land z)$.

When we give only zeros to rule 110, it outputs 0. Therefore, rule 110 is falsity-preserving. It therefore belongs to $P_0 = C(\{\lor, \oplus\})$ It is therefore possible to generate rule 110 with $\{\lor, \oplus\}$ and composition and projections. However, from what I understood, this is false, as rule 110 can simulate a Turing machine, whereas $\{\lor, \oplus\}$ isn't Turing complete. Where is the problem? Is it really possible to simulate rule 110 using only $\{\lor, \oplus\}$? If so, what is the formula?

1 Answers1

2

It is possible to simulate it with:

$$ f(x,y,z) = (x \oplus (x \lor y)) \lor (z \oplus (z \lor y)) \lor (y \oplus (y \lor z)) $$

Your confusion comes from the fact that $\{\lor, \oplus\}$ is not functionally complete, i.e. it cannot simulate every binary function. However using rule 110 to act on a cellular automata on an infinite grid allows for emergent behavior to prove Turing completeness. The proof the Turing completeness of Rule 110 shows that any Turing machine can be encoded into the grid onto a special background in such way that applying Rule 110 afterwards will produce the bit sequence $01101001101000$ iff the Turing machine halts. This is enough to claim Turing completeness as anything that can decide when a machine halts is Turing complete.

In a way this tells that if while $\{\lor, \oplus\}$ cannot express every binary function if we use it iteratively (allowing unbounded iterations) on a special infinite binary grid we can achieve Turing completeness.

Related paper: "A Concrete View of Rule 110 Computation" by Cook

toniuyt
  • 312