Geometrical Transformations of Space-Time Diagrams Nicolas Ollinger LIP, ENS Lyon, France 13 september 2002 / AUTOMATA’2002 / Prague, Czechia ◦I× Cellular Automata (1) 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 (1) 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 (1) 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 × Cellular Automata (2) • The space-time diagram ∆ of A starting from C is the mapping from N × Zd to S defined for any time t and any position p by ∆(t, p) = Gt (C)p where G0 (C) = C. 3 CC J ◦ B BB × Cellular Automata (2) • The space-time diagram ∆ of A starting from C is the mapping from N × Zd to S defined for any time t and any position p by ∆(t, p) = Gt (C)p where G0 (C) = C. Zd Zd Theorem[Hedlund]. A map G : S → S is the global rule of a cellular automaton if and only if G is continuous for the product topology of the trivial topology on S and G commutes with shifts (for all v, we have σv ◦ G = G ◦ σv ). 3 CC C ◦ B BB × Cellular Automata (2) • The space-time diagram ∆ of A starting from C is the mapping from N × Zd to S defined for any time t and any position p by ∆(t, p) = Gt (C)p where G0 (C) = C. Zd Zd Theorem[Hedlund]. A map G : S → S is the global rule of a cellular automaton if and only if G is continuous for the product topology of the trivial topology on S and G commutes with shifts (for all v, we have σv ◦ G = G ◦ σv ). Consequences. If we compose cellular automata, or inverse bijective ones, we obtain cellular automata. 3 CC C ◦ I BB × Example - Fisher (1) P. C. Fisher, Generation of Primes by a One-Dimensional Real-Time Iterative Array, Journal of the ACM, 1965 Idea: , 4 CC J ◦ I BB × Example - Fisher (2) Pb: it recognizes 3p such that p is prime... not p! 5 CC J ◦ I BB × Example - Fisher (3) Fisher scales the CA by making 3 × 3 blocks of cells... 6 CC J ◦ I BB × Example - Fisher (4) ...but we can also keep just the bottom cells. 7 CC J ◦ I BB × Example - Particles (1) How to eliminate the periodic background pattern ? You can zoom out and use shades of grey... X C3p+v Cp0 = 1/9 v∈J0,2K2 8 CC J ◦ I BB × Example - Particles (2) How to eliminate the periodic background pattern ? ...but also make blocks of bottom cells of the squares 0 Cp = C3p+(0,0) , C3p+(1,0) , C3p+(2,0) 9 CC J ◦ I BB × Example - from CA to OCA (1) δ(ql ,qc ,qr ) δ(ql ,qc ,qr ) ql qc qr ql (ql , qc ) qc (qc , qr ) qr C. Choffrut and K. Culik II, On real-time cellular automata and trellis automata, Acta Informatica, 1984 10 CC J ◦ I BB × Example - from CA to OCA (2) δ(qa ,qb ,qc ) δ(qb ,qc ,qd ) qa qb qc (δ(qa ,qb ,qc ),δ(qb ,qc ,qd )) qd (qa , qb ) (qc , qd ) O. H. Ibarra, Sequential machine characterizations of trellis and cellular automata and applications, SIAM Journal on Computing, 1985 11 CC J ◦ I BB × Formalization (1) • A geometrical transformation on space-time diagrams transforms a cellular automaton into a new one by combining cells of a space-time diagram of the first one to construct a space-time diagram of the second one. 12 CC J ◦ B BB × Formalization (1) • A geometrical transformation on space-time diagrams transforms a cellular automaton into a new one by combining cells of a space-time diagram of the first one to construct a space-time diagram of the second one. • Formally, it is a pair (k, Λ) where Λ: d N×Z −→ 7−→ d k N×Z 12 CC C ◦ I BB × Formalization (2) • To apply a transformation (k, Λ) to a space-time diagram d d N×Z by ∆ over S, we define ΛS : SN×Z → Sk ΛS (∆)(t, p) = (∆(Λ(t, p)1 ), . . . , ∆(Λ(t, p)k )) . 13 CC J ◦ B BB × Formalization (2) • To apply a transformation (k, Λ) to a space-time diagram d d N×Z by ∆ over S, we define ΛS : SN×Z → Sk ΛS (∆)(t, p) = (∆(Λ(t, p)1 ), . . . , ∆(Λ(t, p)k )) . • We define an operation rather similar to composition : (k 0 , Λ 0 ) ◦ (k, Λ) = (kk 0 , Λ 0 ◦ Λ) where 0 0 0 Λ ◦ Λ (t, p) = Λ (Λ(t, p)1 )1 . . . , Λ (Λ(t, p)k )k 0 13 CC C ◦ I BB × Formalization (3) e as • We also introduce Λ e : Λ N×Zd 2 X −→ 7−→ N×Zd 2 S {Λ(t, p)1 , . . . , Λ(t, p)k } (t,p)∈X 14 CC J ◦ B BB × Formalization (3) e as • We also introduce Λ e : Λ N×Zd 2 X −→ 7−→ N×Zd 2 S {Λ(t, p)1 , . . . , Λ(t, p)k } (t,p)∈X • A good geometrical transformation satisfies 1. ∀A, ∃B, ΛSA (∆) ∆∈Diag(A) = Diag(B) ; 14 CC C ◦ B BB × Formalization (3) e as • We also introduce Λ e : Λ N×Zd 2 X −→ 7−→ N×Zd 2 S {Λ(t, p)1 , . . . , Λ(t, p)k } (t,p)∈X • A good geometrical transformation satisfies 1. ∀A, ∃B, ΛSA (∆) ∆∈Diag(A) = Diag(B) e {t + 1} × Zd * Λ e {t} × Zd 2. ∀t ∈ N, Λ ; . 14 CC C ◦ I BB × Packing v1 v0 PF,v (t, p) = t ~ (F ⊕ (p v)) Transformed CA global rule: o−1 F,v ◦ G ◦ oF,v 15 CC J ◦ I BB × Cutting 7−→ CT (t, p) = (tT, p) Transformed CA global rule: GT 16 CC J ◦ I BB × Shifting 7−→ Ss (t, p) = (t, p ⊕ ts) Transformed CA global rule: σs ◦ G 17 CC J ◦ I BB × Composition We define PCS transformations as PCSF,v,T,s = PF,v ◦ Ss ◦ CT PCSF,v,T,s (t, p) = tT ~ (F ⊕ (p v ⊕ ts)) Transformed CA global rule: T o−1 ◦ σ ◦ G ◦ oF,v s F,v 18 CC J ◦ B BB × Composition We define PCS transformations as PCSF,v,T,s = PF,v ◦ Ss ◦ CT PCSF,v,T,s (t, p) = tT ~ (F ⊕ (p v ⊕ ts)) Transformed CA global rule: T o−1 ◦ σ ◦ G ◦ oF,v s F,v PCS transformations are closed under composition. 18 CC C ◦ I BB × Characterization Theorem. A geometrical transformation is a good geometrical transformation if and only if it can be expressed as a PCS transformation. 19 CC J ◦ I BB ×