Tilings, Substitutions and Undecidability Mozes’ approach Bastien Le Gloannec (ENS Lyon, France)

advertisement
Tilings, Substitutions and Undecidability
Mozes’ approach
Bastien Le Gloannec (ENS Lyon, France)
Nicolas Ollinger (LIF, Aix-Marseille Université, CNRS, France)
JAC 2010, Turku
.
The
Domino Problem (DP)
.
“Assume we are given a finite set of square plates of the same size
with edges colored, each in a different manner. Suppose further there
are infinitely many copies of each plate (plate type). We are not
permitted to rotate or reflect a plate. The question is to find an
effective procedure by which we can decide, for each given finite set of
plates, whether we can cover up the whole plane (or, equivalently,
an infinite quadrant thereof) with copies of the plates subject to the
restriction that adjoining edges must have the same color.”
(Wang, 1961)
.a
.
.
.b
.c
.
.a
.c
.d
.b
.a
.d
.d
.
.
2/19
Undecidability
of DP: a short history
.
1964 Berger proves the undecidability of DP.
Seminal self-similarity based proofs (reduction from HP):
Berger, 1964 (20426 tiles, a full PhD thesis)
Robinson, 1971 (56 tiles, 17 pages, long case analysis)
Durand et al, 2007 (Kleene’s fixpoint existence argument)
NO, 2008 (104 tiles, self-simulating 2-by-2 substitution)
Tiling rows seen as transducer trace based proof:
Kari, 2007 (affine maps, short concise proof, reduction from IP)
1-Systems tiling problem undecidable, 1-Systems seen as
2-Systems, 2-Systems seen as hex grid tilings:
Aanderaa and Lewis, 1980
3/19
.
Substitution
Systems
.
A substitution system
s = (Σ, R) associates letters
from a finite alphabet Σ to
rectangle(s) on Σ.
{
R= a→
e c f
z o p
,x→
a r
j o
t g
Σ = {. , . }
}
,...
Derivation relation ⊢ substitutes
the letters of a rectangle, if
possible: all the rules applied in a
same row/column have the same
height/width.
⊢ is naturally extended to
.or
.
.
.or
.
configurations of the plane (ΣZ )
and relaxed for shifts.
2
4/19
.
Coloring
the plane via substitutions
.
Limit set.
Λs =
∩
s
:
.
→
→
.
.
Sn
.
n >0
S0
Sn
Z
=Σ
{ andZ∀2 n > 1,
}
= c ∈ Σ |∃d ∈ Sn−1 , d ⊢ c
2
Λs is a subshift.
⊢
.
Fact 1. c ∈ Λs iff ∃(ci )i>0 ,
· · · ⊢ c2 ⊢ c1 ⊢ c0 = c
Idea. Encoding the whole history
of a configuration into a tiling.
.
{
} {
∪
ΛS =
.
}
.y
.
.x
x,y∈Z2
5/19
In
. this talk
We present Mozes’ construction to enforce rectangle substitutions
into a tile set and an original application to the undecidability of DP:
1. enforcing rectangle substitutions (sketch)
Theorem. Λs is sofic (projection of a set of tilings).
2. undecidability of DP, reducing from HP
Theorem. DP is undecidable.
We revisit Mozes’ work from
[Mozes 89] Tilings, Substitution Systems and Dynamical Systems
generated by them, Journal d’Analyse Math. 53: 139–186.
using techniques from
[Durand Romashchenko Shen 07]
[NO 08]
6/19
1. enforcing rectangle substitutions
.
Letter
tiles and parity layer
.
Letters from Σ are encoded by
letter tiles containing:
∈ Σ;
(2) a rule R ∈ R containing x in
(1) a letter x
its block;
(3) a position (i, j) of x in the
block of R.
Letter tiles can encode
Σ-configurations into tilings.
Idea. Encode a whole history.
Create space between letter tiles
using a layer of parity tiles.
a
|
∈Σ
R:b
−→
{z
↙↘
.a
.
R
..(2, 1)
c
a
e
d
e
c
a
b
c
}
.a
.
R
..(3, 3)
.
Parity tiles
8/19
.
•
Substitution
s
on tiles
.
We describe the tile set defining
simultaneously a substitution s•
over the tile set τ acting as s over
Σ.
s• transforms:
.
.
j..
.
..
e
.
z..
.
..
c
.
x..
.
s..
.
v..
.
..
q
.
l..
.1
.row
.cross
.block
column
Letter tiles encoding the
configuration are arranged on
odd-odd (
) positions.
(letters) into derivation blocks;
into rows;
into columns;
are unchanged.
.
a
.
R
.(i, j)
.−→
.
.
.1
9/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,1
.R
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
..(1, 1)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,1
.R
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
..(1, 1)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,1
.R
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
..(1, 1)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
Combined arrows converge to a
SW free position.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,1
.R
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
..(1, 1)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
Combined arrows converge to a
SW free position.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,1
.R
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
..(1, 1)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
Combined arrows converge to a
SW free position.
Parent letter tile is enforced at
that position…
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
.x1,1
.R
..(1, 1)
.a
.R0
(. i, j)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
Combined arrows converge to a
SW free position.
Parent letter tile is enforced at
that position…
…and emits its own information to
gather its own derivation block at
superior level.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
.(3, 1)
.x3,2
.R
.(3, 2)
.x3,3
.R
.(3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
.x1,1
.R
..(1, 1)
.a
.R0
(. i, j)
10/19
.
Substituting
letter tiles
.
R:a
−→
x5,1
··· x5,4
x1,1
··· x1,4
..
.
..
.
Internal connections gather
letters of a same derivation block
together.
Simple arrows meet their
complementary on a free row.
Combined arrows converge to a
SW free position.
Parent letter tile is enforced at
that position…
…and emits its own information to
gather its own derivation block at
superior level.
.x5,1
.R
.(5, 1)
.x5,2
.R
.(5, 2)
.x5,3
.R
.(5, 3)
.x5,4
.R
.(5, 4)
.x4,1
.R
.(4, 1)
.x4,2
.R
.(4, 2)
.x4,3
.R
.(4, 3)
.x4,4
.R
.(4, 4)
.x3,1
.R
(. 3, 1)
.x3,2
.R
(. 3, 2)
.x3,3
.R
(. 3, 3)
.x3,4
.R
.(3, 4)
.x2,1
.R
.(2, 1)
.x2,2
.R
.(2, 2)
.x2,3
.R
.(2, 3)
.x2,4
.R
.(2, 4)
.x1,2
.R
.(1, 2)
.x1,3
.R
.(1, 3)
.x1,4
.R
.(1, 4)
blank tile
.
.x1,1
.R
..(1, 1)
.a
.R0
(. i, j)
10/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.d
.
S
.(2, 2)
⊢
.
.a
.
S
..(1, 1)
1. enforcing rectangle substitutions
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.c
.S
.(2, 1)
.a
.S
.(1, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
. 1,1
e
. 2,2
R
(. 1, 1)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.x2,1
.R1,2
(. 2, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x. 1,1
. 1,2
R
(. 1, 1)
.d
.S
.(2, 2)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.d
.
S
.(2, 2)
⊢
.
.a
.
S
..(1, 1)
1. enforcing rectangle substitutions
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.c
.S
.(2, 1)
.a
.S
.(1, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
. 1,1
e
. 2,2
R
(. 1, 1)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.x2,1
.R1,2
(. 2, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x. 1,1
. 1,2
R
(. 1, 1)
.d
.S
.(2, 2)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.d
.
S
.(2, 2)
⊢
.
.a
.
S
..(1, 1)
1. enforcing rectangle substitutions
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.c
.S
.(2, 1)
.a
.S
.(1, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
. 1,1
e
. 2,2
R
(. 1, 1)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.x2,1
.R1,2
(. 2, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x. 1,1
. 1,2
R
(. 1, 1)
.d
.S
.(2, 2)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.d
.
S
.(2, 2)
⊢
.
.a
.
S
..(1, 1)
1. enforcing rectangle substitutions
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.c
.S
.(2, 1)
.a
.S
.(1, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
. 1,1
e
. 2,2
R
(. 1, 1)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.x2,1
.R1,2
(. 2, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x. 1,1
. 1,2
R
(. 1, 1)
.d
.S
.(2, 2)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.d
.
S
.(2, 2)
⊢
.
.a
.
S
..(1, 1)
1. enforcing rectangle substitutions
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.c
.S
.(2, 1)
.a
.S
.(1, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
. 1,1
e
. 2,2
R
(. 1, 1)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.x2,1
.R1,2
(. 2, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x. 1,1
. 1,2
R
(. 1, 1)
.d
.S
.(2, 2)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Substituting
other tiles
.
External connections
“synchronize”
blocks together.
.q3,1
.R2,1
(. 3, 1)
.q3,2
.R2,1
(. 3, 2)
.q3,3
.R2,1
(. 3, 3)
.e3,1
.R2,2
(. 3, 1)
.e3,2
.R2,2
(. 3, 2)
. 2 ,1
q
. 2,1
R
(. 2, 1)
. 2 ,2
q
. 2,1
R
(. 2, 2)
. 2 ,3
q
. 2,1
R
(. 2, 3)
. 2,1
e
. 2,2
R
(. 2, 1)
. 2,2
e
. 2,2
R
(. 2, 2)
. 1 ,1
q
. 2,1
R
(. 1, 1)
.c
.
S
.(2, 1)
.
a
.
S
.c
.S
.(2, 1)
. 1 ,2
q
. 2,1
R
(. 1, 2)
. 1 ,3
q
. 2,1
R
(. 1, 3)
.j2,2
.R1,1
(. 2, 2)
.j2,3
.R1,1
(. 2, 3)
.d
.
S
x.
.
T
.(1, 1)
..(1, 1)
1. enforcing rectangle substitutions
.(2, 2)
⊢
.
.b
.
S
.(1, 2)
.j2,1
.R1,1
(. 2, 1)
.j1,1
. 1,1
R
(. 1, 1)
.
.a
.S
.(1, 1)
.j1,2
. 1,1
R
(. 1, 2)
.j1,3
. 1,1
R
(. 1, 3)
x.
.
T
.(1, 1)
. 1,1
e
. 2,2
R
(. 1, 1)
.d
.S
.(2, 2)
.x2,1
.R1,2
(. 2, 1)
x. 1,1
. 1,2
R
(. 1, 1)
. 1,2
e
. 2,2
R
(. 1, 2)
.x2,2
.R1,2
(. 2, 2)
.b
.S
.(1, 2)
x. 1,2
. 1,2
R
(. 1, 2)
11/19
Sketch
of the proof
.
Expansive substitution system s, limit set Λs . Constructed tile set
τ, set of tilings Xτ .
Projection.
Lemma 1.
π : T 2×2 −→ Σ,
.
.
a
.R
. .(i, j)
.
.
7−→ a
Λs = π(Λs• )
Theorem 1. π(Xτ ) = Λs , hence the limit set is sofic.
Sketch of the proof.
π(Xτ ) ⊇ Λs . Encode the history into a tiling.
π(Xτ ) ⊆ Λs . Decompose any tiling into images by s• and check
that the pre-image is a valid tiling.
1. enforcing rectangle substitutions
12/19
2. undecidability of the domino problem
Mozes’
Derivation Tree Problem (DTP)
.
Derivation Tree Problem (DTP) Given an expansive substitution
system, decide if there exist derivation trees of all depths.
Theorem 2. DTP is undecidable.
Proof. Next slides…
Corollary 1. DP is undecidable.
Proof. Enforce the substitution with a tile set by the previous
construction.
There exist derivation trees of all depths ⇐⇒ the limit set is
non-empty ⇐⇒ there exists a tiling.
Turing Machine (TM). M = (Q, Σ, q0 , a, δ)
Q = {0, . . . , n − 1}, q0 = 0, blank symbol a, moves {←, →}.
2. undecidability of the domino problem
14/19
.
(1/3)
.4
.∗
TM tapes are represented by
zigzag lines where letters are on
internal corners (NW, SE).
Seeds, arranged on a lattice,
create a new blank tape at each
transition.
Bounds (NW, NE, SW, SE) extend
the tape of one blank letter (at
both ends) at each transition.
6 h 6 2n + 4
.∗
.∗
.→
⊢
.
.0a
.←
.
⊢
.
.a
.a
.
seed and white
.∗
.←
⊢
.
.∗
.←
.a
.←
.
⊢
.
.←
.a
.
.∗
.→
.
6 v 6 2n + 4
Reduction of the Halting Problem
(HP) — from a blank tape — for
Turing Machines.
.4
Reducing
HP to DTP
.
⊢
.
.a
.∗
.→
.→
⊢
.
.→
.a
.
tape bounds
15/19
.
(2/3)
.2q
.∗
⊢
.
.β
.
+5
.∗
.qα
⊢
.
.β
.
if δ(q, α)
= (q ′, β, →)
δ(q, α) = (q ′ , β, m)
if δ(q, α)
.
′
+6
.∗
+6
⊢
.
′
.qα
= (q ′, β, ←)
.2q
.∗
.β
.qα
.2q
The new state q ′ is transmitted to
the neighbor encoded in the
derivation width or height.
′
+5
.qα
′
Transition derivations — for
non-halting states — are
deterministic.
.2q
Reducing
HP to DTP
.
⊢
.
.β
.
if δ(q, α)
= (q ′, β, ←)
if δ(q, α)
= (q ′, β, →)
16/19
.
(3/3)
General case. Letters are
extended into 4-by-4 blocks.
.∗
.α
.α
.α
.
.qα
.α
.2q
⊢
.
+6
.∗
.α
⊢
.
.qα
.
.2q
.∗
+5
.∗
+5
⊢
.
.qα
.2q
.α
.
.α
.
.
This enforces the letter
substitution rule that makes the
head appear at its new position (a
+5/+6 bit of information is
needed).
⊢
.
.∗
.2q
Head on a neighbor letter. The
transition substitution enforces a
height (or width) encoding the new
state q ′ on the whole line (or
column).
⊢
.
.∗
+6
Reducing
HP to DTP
.
.α
⊢
.
.qα
.
17/19
Proof
.
Theorem 2. DTP is undecidable.
Proof.
If the TM halts in time T. Assume ∃t0 ⊢ t1 ⊢ · · · ⊢ tT+3 . t1 contains
a seed. tT+2 contains the image of this seed after T steps of the TM:
the state is halting. Then tT+2 has no successor E.
If the TM does not halt, let us show that a seed starts an infinite
derivation.
As no halting state can appear, each letter always admits an image.
On a line/column, we can have either:
• white tiles and seeds;
• white tiles and parts (pairs of letters) of the same (deterministic)
computation.
Hence there exists a successor.
2. undecidability of the domino problem
18/19
.
That’s
all!
.
Thank you for your
attention.
A research report is under
preparation, to be available
Any questions?
.
on arXiv in January.
19/19
Download