The Quest for Small Universal Cellular Automata Nicolas Ollinger LIP, ENS Lyon, France 8 july 2002 / ICALP’2002 / Málaga, Spain ◦I× Cellular Automata Definition. A d-CA A is a 4-uple Z , S, N, δ where: d • S is the finite state set of A; • N ⊂ Zd , finite, is the neighborhood of A; • δ : S|N| → S is the local rule of A. 2 CC J ◦ B BB × Cellular Automata Definition. A d-CA A is a 4-uple Z , S, N, δ where: d • S is the finite state set of A; • N ⊂ Zd , finite, is the neighborhood of A; • δ : S|N| → S is the local rule of A. A configuration C is a mapping from Zd to S. 2 CC C ◦ B BB × Cellular Automata Definition. A d-CA A is a 4-uple Z , S, N, δ where: d • S is the finite state set of A; • N ⊂ Zd , finite, is the neighborhood of A; • δ : S|N| → S is the local rule of A. A configuration C is a mapping from Zd to S. The global rule applies δ uniformly according to N: ∀p ∈ Zd , G(C)p = δ (Cp+N1 , . . . , Cp+Nν ) 2 CC C ◦ I BB × Space-Time Diagram 3 CC J ◦ B BB × Space-Time Diagram 3 CC C ◦ B BB × Space-Time Diagram 3 CC C ◦ B BB × Space-Time Diagram 3 CC C ◦ B BB × Space-Time Diagram 3 CC C ◦ B BB × Space-Time Diagram 3 CC C ◦ I BB × Computation Universality Idea. A CA is computation universal if it can compute any partial recursive function. 4 CC J ◦ B BB × Computation Universality Idea. A CA is computation universal if it can compute any partial recursive function. • This notion is rather difficult to formalize... 4 CC C ◦ B BB × Computation Universality Idea. A CA is computation universal if it can compute any partial recursive function. • This notion is rather difficult to formalize... • In practice: step-by-step Turing machine simulation. A. R. Smith III. Simple Computation-Universal Cellular Spaces. 1971 4 CC C ◦ I BB × Inducing an Order on CA (1) Idea. A CA A is less complex than a CA B if, up to some renaming of states and some rescaling, every space-time diagram of A is a space-time diagram of B. 5 CC J ◦ B BB × Inducing an Order on CA (1) Idea. A CA A is less complex than a CA B if, up to some renaming of states and some rescaling, every space-time diagram of A is a space-time diagram of B. Definition. A ⊆ B if there exists an injective mapping ϕ from SA into SB such that this diagram commutes: C GA y ϕ −−−−→ ϕ(C) G y B GA (C) −−−−→ ϕ(GA (C)) ϕ 5 CC C ◦ I BB × Inducing an Order on CA (2) Definition. The hm, n, ki rescaling of A is defined by: hm,n,ki GA A −m = σk ◦ o m ◦ G n ◦ o . A Ah4,4,1i 6 CC J ◦ B BB × Inducing an Order on CA (2) Definition. The hm, n, ki rescaling of A is defined by: hm,n,ki GA −m = σk ◦ o m ◦ G n ◦ o . A Ah4,4,1i A Definition. A 6 B if there exist hm, n, ki and hm 0 , n 0 , k 0 i such that A hm,n,ki ⊆B hm 0 ,n 0 ,k 0 i . 6 CC C ◦ I BB × Inducing an Order on CA (3) Proposition. The relation 6 is a quasi-order on CA. • The induced order admits a maximal equivalence class. Definition. A CA A is intrinsically universal if: ∀B, ∃ hm, n, ki , B ⊆ Ahm,n,ki . 7 CC J ◦ B BB × Inducing an Order on CA (3) Proposition. The relation 6 is a quasi-order on CA. • The induced order admits a maximal equivalence class. Definition. A CA A is intrinsically universal if: ∀B, ∃ hm, n, ki , B ⊆ Ahm,n,ki . Proposition. Every intrinsically universal CA is computation universal. The converse is false. 7 CC C ◦ I BB × Simple Universal CA year 1966 1968 1970 author von Neumann Codd Banks 1971 Smith III 1987 1990 2002 2002 Albert & Culik II Lindgren & Nordhal NO Cook & Wolfram d 2 2 2 1 2 1 1 1 1 1 |N| 5 5 5 3 7 3 3 3 3 3 states 29 8 2 18 7 18 14 7 6 2 universality intrinsic intrinsic intrinsic intrinsic computation computation intrinsic computation intrinsic computation 8 CC J ◦ I BB × Banks’ Universal 2D-CA Z , , , 2 ,δ ! E. R. Banks. Universality in Cellular Automata. 1970 Idea. Emulate logical circuits by building: • wires transporting binary signals • logical gates AND, OR and NOT • wires crossing 9 CC J ◦ I BB × CA and Boolean Circuits (1) • We decompose a CA local rule into k boolean functions where k = dlog2 |S|e: δi : {0, 1} δ |N|k → {0, 1} . δ1 δ2 10 CC J ◦ I BB × CA and Boolean Circuits (2) • To a boolean function we associate a leveled circuit: δ1 (x, y, z, t) δ2 (x, y, z, t) L2 L2 L1 L1 variable NAND copy L0 x y z t δ1 (x, y, z, t) = x | t L0 x y z t δ2 (x, y, z, t) = y | y 11 CC J ◦ I BB × Boolean Circuit Simulator A BC Simulator is a 1D dynamical system that simulate a CA via its boolean circuits. Each cell contains: • a boolean value; • an operator (identity or NAND); • the relative positions of the operands. δ1 boolean value operator operand 1 operand 2 δ2 δ2 δ1 δ2 δ1 z }| { z }| { z }| { z }| { z }| { z }| { ··· ? x ? ? y ? z ? ? t ? u ? ? v ··· | C C C | | C C C | | C C C | 1 1 8 9 1 1 1 8 9 1 1 1 8 9 1 |9 {z 2} |9 {z 2} |9 {z 2} s0 s1 s2 12 CC J ◦ I BB × Microscopic Description We build a 3-state 1D-CA to move information. Op Val Sig • Sig cells transport boolean values between cells; • Val cells encode current meta-cell value; • Op vells encode the operation to execute. 13 CC J ◦ I BB × 8 States Direct encoding: • Sig: 0 or 1 boolean value; • Val: 0 or 1 boolean value; • Op: Border, Copy, Follow or NAND operation. Copy and NAND Border 14 CC J ◦ I BB × 7 States New encoding: • Sig: 0 or 1 boolean value; • Val: 0 or 1 boolean value; • Op: Border, Follow or NAND operation. The Copy operation is emulated. We encode a signal x by three consecutive signals 1, x, 0. old Op Border Follow NAND Copy new 3 Ops Follow, Border, Follow Follow, Follow, Follow Follow, NAND, Follow NAND, NAND, NAND 15 CC J ◦ I BB × 6 States More tricky! New encoding with Op a boolean value which meaning becomes position dependant... right Op left Op 16 CC J ◦ I BB × Going further • We get 6 states as a product 3 × 2. What about 2 × 2? • Cook and Wolfram have proven a 2 states rule computation universal. Is it also intrinsically universal ? • Good formal definition of computation universality ? 17 CC J ◦ I BB ×