Undecidable properties of self-affine sets and multitape

Undecidable properties of self-affine sets
and multitape automata
Timo Jolivet
Institut de Mathématiques de Toulouse
Université Paul Sabatier
In collaboration with Jarkko Kari
Verification seminar
University of Oxford
Thursday 18 June
Example: the Cantor set
Example: the Cantor set
X⊆[0,1]
z
}|
{
Example: the Cantor set
X⊆[0,1]
z
|
}|
{z
1
X
3
}
|
{z
1
X+ 23
3
{
}
Example: the Cantor set
X⊆[0,1]
}|
z
|
{z
}
1
X
3
I
X = f1 (X) ∪ f2 (X) ⊆ R
I
f1 (x) = 13 x
I
f2 (x) = 13 x +
2
3
|
{z
1
X+ 23
3
{
}
Example
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Iterated function systems (IFS)
Let f1 , . . . , fn : Rd → Rd be contracting maps:
∃c < 1 such that |f (x) − f (−y)| < c|x − y| for all x, y ∈ Rd .
Iterated function systems (IFS)
Let f1 , . . . , fn : Rd → Rd be contracting maps:
∃c < 1 such that |f (x) − f (−y)| < c|x − y| for all x, y ∈ Rd .
Theorem (Hutchinson 1981)
There is a unique, nonemtpy, compact set X ⊆ Rd such that
X = f1 (X) ∪ · · · ∪ fn (X).
Iterated function systems (IFS)
Let f1 , . . . , fn : Rd → Rd be contracting maps:
∃c < 1 such that |f (x) − f (−y)| < c|x − y| for all x, y ∈ Rd .
Theorem (Hutchinson 1981)
There is a unique, nonemtpy, compact set X ⊆ Rd such that
X = f1 (X) ∪ · · · ∪ fn (X).
I
Definition of a fractal
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
Example: Sierpiński’s triangle
I
I
I
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ⊆ R2
A particular family of IFS: self-affine sets
I
Let A ∈ Zd×d be an expanding matrix
I
Let D ⊆ Zd (“digits”)
A particular family of IFS: self-affine sets
I
Let A ∈ Zd×d be an expanding matrix
I
Let D ⊆ Zd (“digits”)
Self-affine set: IFS given by the contracting maps maps
fd (x) = A−1 (x + d)
for d ∈ D.
A particular family of IFS: self-affine sets
I
Let A ∈ Zd×d be an expanding matrix
I
Let D ⊆ Zd (“digits”)
Self-affine set: IFS given by the contracting maps maps
fd (x) = A−1 (x + d)
for d ∈ D.
Very particular kind of IFS:
I
Affine maps
I
Integer coefficients
I
Same matrix A for each fd
Example 0
I
A = (10)
I
D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Example 0
I
A = (10)
I
D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I
X=
9
[
d=0
1
10 (X
+ d)
Example 0
I
A = (10)
I
D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I
X=
9
[
1
10 (X
+ d)
d=0
I
X = [0, 1]
(base 10 representation)
Example 0
I
A = (10)
I
D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I
X=
9
[
1
10 (X
+ d)
d=0
I
X = [0, 1]
(base 10 representation)
Meaning of “digits”:
X=
(∞
X
k=1
)
A
−k
dk : (dk )k>1 ∈ D
N
Example: Sierpiński’s triangle again
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
Example: Sierpiński’s triangle again
I
A=
I
D=
20
02
20
02
0
0 ,
1
0
,
0
1
X = X ∪ X+
1
0
∪ X+
0
1
Sierpiński variant 1
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
1
1
Sierpiński variant 1
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
1
1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 2
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
−1 −1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Sierpiński variant 3
I
A=
I
D=
20
02
0
0 ,
1
0
,
0
1
,
3
1
Self-affine tiles
Definition
D is a standard set of digits if:
I
|D| = | det(A)|
I
D is a complete set of representatives in Zd /AZd .
Self-affine tiles
Definition
D is a standard set of digits if:
I
|D| = | det(A)|
I
D is a complete set of representatives in Zd /AZd .
In this case, X is a self-affine tile.
Self-affine tiles
Definition
D is a standard set of digits if:
I
|D| = | det(A)|
I
D is a complete set of representatives in Zd /AZd .
In this case, X is a self-affine tile.
Theorem [Bandt, Lagarias-Wang]
Under these conditions:
I
X has nonempty interior
I
X is the closure of its interior
I
µ(∂X) = 0
I
X tiles Rd by translation
Self-affine tiles
Definition
D is a standard set of digits if:
I
|D| = | det(A)|
I
D is a complete set of representatives in Zd /AZd .
In this case, X is a self-affine tile.
Theorem [Bandt, Lagarias-Wang]
Under these conditions:
I
X has nonempty interior
I
X is the closure of its interior
I
µ(∂X) = 0
I
X tiles Rd by translation
I
Many good properties and algorithms
Nonstandard D
A = 20 02 D = 00 ,
1
0
,
0
1
,
1
2
Nonstandard D
A = 20 02 D = 00 ,
1
0
,
0
1
,
1
2
X has empty interior (why?)
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
so
40
04
X=
20
02
X+
0 2 0 2 ,
,
,
0
0
2
4
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
so
40
04
X=
20
02
0 2 0 2 0 , 0 , 2 , 4
0 1 0 1 =X+
X+
0
,
0
,
1
,
2
+ 00 , 20 , 02 , 24
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
so
40
04
X=
20
02
0 2 0 2 0 , 0 , 2 , 4
0 1 0 1 =X+
X+
0
,
0
,
1
,
2
+ 00 , 20 , 02 , 24
= X + 00 , 10 , 01 , 12 ,
3 2 3
2
0 ,
0 ,
2
2 ,
4
0 ,
1 ,
2
3 ,
4
1 ,
0 ,
3
2 ,
5
2 ,
1 ,
4
3
6
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
so
40
04
X=
20
02
0 2 0 2 0 , 0 , 2 , 4
0 1 0 1 =X+
X+
0
,
0
,
1
,
2
+ 00 , 20 , 02 , 24
= X + 00 , 10 , 01 , 12 ,
3 2 3
2
0 ,
0 ,
2
2 ,
4
so 16µ(X) 6 15µ(X)
0 ,
1 ,
2
3 ,
4
1 ,
0 ,
3
2 ,
5
2 ,
1 ,
4
3
6
Nonstandard D
Indeed,
20
02
X=X+
0 1 0 1 0 , 0 , 1 , 2
so
40
04
X=
20
02
0 2 0 2 0 , 0 , 2 , 4
0 1 0 1 =X+
X+
0
,
0
,
1
,
2
+ 00 , 20 , 02 , 24
= X + 00 , 10 , 01 , 12 ,
3 2 3
2
0 ,
0 ,
2
2 ,
4
so 16µ(X) 6 15µ(X)
so µ(X) = 0
0 ,
1 ,
2
3 ,
4
1 ,
0 ,
3
2 ,
5
2 ,
1 ,
4
3
6
Nonstandard D
A = 20 02 D = 00 ,
1
0
,
0
1
,
1
2
X has empty interior
Nonstandard D
A = 20 02 D = 00 ,
A = 20 02 D = 00 ,
1
0
,
0
1
,
1
2
X has empty interior
1
0
,
0
2
,
1
2
Nonstandard D
A = 20 02 D = 00 ,
A = 20 02 D = 00 ,
1
0
,
0
1
,
1
2
X has empty interior
1
0
,
0
2
,
1
2
X has nonempty interior
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
(
I
Nonempty interior ⇔ µ(X) > 0 ⇔
X = closure(X o )
µ(∂(X)) = 0
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
(
I
Nonempty interior ⇔ µ(X) > 0 ⇔
⇔ #
nP
N
k=1 A
−k d
k
: (dk ) ∈ DN
o
X = closure(X o )
µ(∂(X)) = 0
= |D|N for all N > 1
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
(
I
Nonempty interior ⇔ µ(X) > 0 ⇔
nP
o
X = closure(X o )
µ(∂(X)) = 0
N
−k
N = |D|N for all N > 1
⇔ #
k=1 A dk : (dk ) ∈ D
⇔ |D| = | det(A)| if A = (p) with p prime [Kenyon 1992]
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
(
I
Nonempty interior ⇔ µ(X) > 0 ⇔
nP
X = closure(X o )
µ(∂(X)) = 0
o
N
−k
N = |D|N for all N > 1
⇔ #
k=1 A dk : (dk ) ∈ D
⇔ |D| = | det(A)| if A = (p) with p prime [Kenyon 1992]
I
Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .
Nonstandard D
We enjoy the good properties of tiles (case of standard D) :
What conditions on D for nonempty interior?
I
Necessary condition |D| > | det(A)|
(
I
Nonempty interior ⇔ µ(X) > 0 ⇔
nP
X = closure(X o )
µ(∂(X)) = 0
o
N
−k
N = |D|N for all N > 1
⇔ #
k=1 A dk : (dk ) ∈ D
⇔ |D| = | det(A)| if A = (p) with p prime [Kenyon 1992]
I
Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .
I
Is it decidable?
Beyond self-affine tiles: affine IFS
I
Several contractions A1 , . . . , Ai instead of just A
I
Arbitrary affine mappings fi (x) = Ai x + vi
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
I
Interesting properties:
I
I
I
compute fractal dimensions (Hausdorff, packing, etc.),
topological properties (connectedness, nonempty interior, etc.)
tiling properties
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
I
Interesting properties:
I
I
I
I
compute fractal dimensions (Hausdorff, packing, etc.),
topological properties (connectedness, nonempty interior, etc.)
tiling properties
Notorious difficulty of study for specific examples/families
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
I
Interesting properties:
I
I
I
I
I
compute fractal dimensions (Hausdorff, packing, etc.),
topological properties (connectedness, nonempty interior, etc.)
tiling properties
Notorious difficulty of study for specific examples/families
Some “almost always”-type results
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
I
Interesting properties:
I
I
I
I
I
I
compute fractal dimensions (Hausdorff, packing, etc.),
topological properties (connectedness, nonempty interior, etc.)
tiling properties
Notorious difficulty of study for specific examples/families
Some “almost always”-type results
Application in number theory, dynamical systems, Fourier
analysis
Beyond self-affine tiles: affine IFS
I
I
Several contractions A1 , . . . , Ak instead of just A
Arbitrary affine mappings fi (x) = Ai x + vi
I
Interesting properties:
I
I
I
I
I
I
I
compute fractal dimensions (Hausdorff, packing, etc.),
topological properties (connectedness, nonempty interior, etc.)
tiling properties
Notorious difficulty of study for specific examples/families
Some “almost always”-type results
Application in number theory, dynamical systems, Fourier
analysis
GIFS: several sets X1 , . . . , Xn instead of just X (Graph-IFS)
Graph-IFS (GIFS), example 1
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
X = f1 (X) ∪ f2 (X) ∪ f3 (X)
f1
f2
f3
X
Graph-IFS (GIFS), example 1
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
f4 (x) = x/2 +
f5 (x) = x/2 +
f6 (x) = x/2 +
(
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ∪ f4 (Y )
Y = f5 (Y ) ∪ f6 (X)
f1
f2
f3
1/2
1/2
1/2
3/4
3/4
3/4
f4
Y
X
f6
f5
Graph-IFS (GIFS), example 1
f1 (x) = x/2
f2 (x) = x/2 +
f3 (x) = x/2 +
1/2
0
0
1/2
f4 (x) = x/2 +
f5 (x) = x/2 +
f6 (x) = x/2 +
(
X = f1 (X) ∪ f2 (X) ∪ f3 (X) ∪ f4 (Y )
Y = f5 (Y ) ∪ f6 (X)
f1
f2
f3
1/2
1/2
1/2
3/4
3/4
3/4
f4
Y
X
f6
f5
Graph-IFS (GIFS), example 2: Rauzy fractals



X1 = f (X1 ) ∪ f (X2 ) ∪ f (X3 )
X = g(X )
2
1


X = g(X )
3
2
Graph-IFS (GIFS), example 2: Rauzy fractals



X1 = f (X1 ) ∪ f (X2 ) ∪ f (X3 )
X = g(X )
2
1


X = g(X )
3
2
f
f
X1
X2
g
g
f
X3
f (x) = αx,
g(x) = αx + 1,
with
α = −0.419 + 0.606i ∈ C
root of x3 − x2 − x + 1
GIFS with 3 states
Undecidability result
Theorem [J-Kari 2013]
For 2D affine GIFS with 3 states (with coefficients in Q):
I
= [0, 1]2 is undecidable
I
empty interior is undecidable
Undecidability result
Theorem [J-Kari 2013]
For 2D affine GIFS with 3 states (with coefficients in Q):
I
= [0, 1]2 is undecidable
I
empty interior is undecidable
I
Also true with diagonal Ai
Undecidability result
Theorem [J-Kari 2013]
For 2D affine GIFS with 3 states (with coefficients in Q):
I
= [0, 1]2 is undecidable
I
empty interior is undecidable
I
Also true with diagonal Ai
I
Computational tools: multi-tape automata
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1|0
1 | 001
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
000
11
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
0001
110
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
000101
11000
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
000101000
1100011
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
0001010001
11000110
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
1|0
Accepted infinite word starting from X:
0001010001000
1100011011
A = {0, 1} × {0, 1}
Q = {X, Y }
Multi-tape automata
d-tape automaton:
I
alphabet A = A1 × · · · × Ad
I
states Q
I
+
transitions Q × (A+
1 × · · · × Ad ) → Q
I
acceptance: infinite run starting from any state
000 | 11
01 | 00
X
Y
1 | 001
A = {0, 1} × {0, 1}
Q = {X, Y }
1|0
Accepted infinite word starting from X:
0001010001000 . . .
∈ AN = ({0, 1} × {0, 1})N
1100011011 . . .
Multi-tape automaton 7−→ GIFS
u|v
Transition
(tape alphabets A1 , A2 )
Multi-tape automaton 7−→ GIFS
u|v
Transition
7−→ Mapping f
(tape alphabets A1 , A2 )
x
y
=
|A |−|u|
1
0
x 0.u . . . u 0
1
|u|
+
−|v|
y
0.v1 . . . v|v|
|A2 |
Multi-tape automaton 7−→ GIFS
u|v
Transition
(tape alphabets A1 , A2 )
7−→ Mapping f
x
y
=
|A |−|u|
1
0
Automaton:
x 0.u . . . u 0
1
|u|
+
−|v|
y
0.v1 . . . v|v|
|A2 |
000 | 11
01 | 00
X
Y
1|0
1 | 001
Multi-tape automaton 7−→ GIFS
u|v
Transition
(tape alphabets A1 , A2 )
7−→ Mapping f
x
y
=
|A |−|u|
1
0
Automaton:
x 0.u . . . u 0
1
|u|
+
−|v|
y
0.v1 . . . v|v|
|A2 |
000 | 11
01 | 00
X
1 | 001
Y
1|0
Associated GIFS:
1/4
0
0
1/4
x
y
+
0.01
0.00
1/8
0
0
1/4
x
y
+
X
1/2
0
0.000
0.11
Y
0
1/2
x
y
+
0.1
0.0
1/2
0
0
1/8
x
y
+
0.1
0.001
Multi-tape automaton 7−→ GIFS
u|v
Transition
7−→ Mapping f
(tape alphabets A1 , A2 )
x
|A1 |−|u|
=
y
0
Automaton
states
edges
#tapes
tape i
0
|A2 |−|v|
x
0.u1 . . . u|u|
+
y
0.v1 . . . v|v|
GIFS
fractal sets
contracting mappings
dimension
base-|Ai | representation of ith coordinate
Multi-tape automaton 7−→ GIFS
1011 | 11
I
I
f
x
y
=
1/16
0
0 0.x1 x2 . . . 0.1011 +
0.11
1/4 0.y1 y2 . . .
Multi-tape automaton 7−→ GIFS
1011 | 11
I
I
f
x
y
=
=
0 0.x1 x2 . . . 0.1011 +
0.11
0
1/4 0.y1 y2 . . .
0.0000x1 x2 . . .
0.1011
+
0.00y1 y2 . . .
0.11
1/16
Multi-tape automaton 7−→ GIFS
1011 | 11
I
I
f
x
y
=
=
=
0 0.x1 x2 . . . 0.1011 +
0.11
0
1/4 0.y1 y2 . . .
0.0000x1 x2 . . .
0.1011
+
0.00y1 y2 . . .
0.11
0.1011x x . . . 1 2
0.11y1 y2 . . .
1/16
Multi-tape automaton 7−→ GIFS
1011 | 11
I
I
f
x
y
=
=
=
0 0.x1 x2 . . . 0.1011 +
0.11
0
1/4 0.y1 y2 . . .
0.0000x1 x2 . . .
0.1011
+
0.00y1 y2 . . .
0.11
0.1011x x . . . 1 2
0.11y1 y2 . . .
1/16
Key correspondence
GIFS fractal associated with state X
=
n 0.x x . . . x x . . .
o
1 2
1 2
∈ R2 :
accepted by M starting at X
0.y1 y2 . . .
y1 y2 . . .
Multi-tape automaton 7−→ GIFS
Example:
1
2
0|0
1|0
1
2
0|1
Automaton
x
y
+
0
1/2
x
y
+
0
0
1
2
x
y
+
1/2
0
GIFS
=
n 0.x x . . . o
1 2
: (xn , yn ) 6= (1, 1), ∀n > 1
0.y1 y2 . . .
Multi-tape automaton 7−→ GIFS
Example:
0|0
0|1
1|0
10|10
X
Y
11|11
10|11
Multi-tape automaton ←→ GIFS
Automaton
states
edges
#tapes
alphabet Ai
GIFS
fractal sets
contracting mappings
dimension
base-|Ai | representation on tape i
Multi-tape automaton ←→ GIFS
Automaton
states
edges
#tapes
alphabet Ai
GIFS
fractal sets
contracting mappings
dimension
base-|Ai | representation on tape i
Languages properties
GIFS properties
∃ configurations with = tapes
Intersects the diagonal [Dube]
Is universal
Is equal to [0, 1]d
Has universal prefixes
Has nonempty interior
?
Is connected
?
Is totally disconnected
Compute language entropy
Compute fractal dimension
Multi-tape automaton ←→ GIFS
Theorem [Dube 1993]
For 1-state, 2D GIFS, it is undecidable if X intersects the diagonal.
Proof idea:
I
X ∩ {(x, x) : x ∈ [0, 1]} 6= ∅
⇐⇒ Automaton accepts a word of the form
I
0.x1 x2 . . .
0.x1 x2 . . .
Reduce the infinite Post Correspondence Problem:
I
PCP instance (u1 , v1 ), . . . , (un , vn )
I
Automaton
ui |vi
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I
Example (universal):
0|0, 0|1, 1|0, 1|1
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I
Example (universal):
I
Example (not universal):
0|0, 0|1, 1|0, 1|1
0|0, 0|1, 1|0
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I
Example (universal):
I
Example (not universal):
0|0, 0|1, 1|0, 1|1
0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I
Example (universal):
I
Example (not universal):
0|0, 0|1, 1|0, 1|1
0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I
Example (universal with prefix 1):
(one-dimensional; not universal)
f1 (x) = x/2 + 1/2
f2 (x) = x/4
f3 (x) = x/4 + 1/2
1, 10, 00
Undecidability results
Theorem [J-Kari 2013]
For 3-state, 2-tape automata:
I
universality is undecidable
I
prefix-universality is undecidable
Corollary
For 2D affine GIFS with 3 states (with coefficients in Q):
I
= [0, 1]2 is undecidable
I
empty interior is undecidable
Proof
Prefix-PCP
Input: (u1 , v1 ), . . . , (un , vn )
i , . . . , ik
such that ui1 · · · uik = vi1 · · · vi`
Question: ∃ 1
i1 , . . . , i `
and one of the words i1 · · · ik and i1 · · · i` is a prefix of the other
Proof
Prefix-PCP
Input: (u1 , v1 ), . . . , (un , vn )
i , . . . , ik
such that ui1 · · · uik = vi1 · · · vi`
Question: ∃ 1
i1 , . . . , i `
and one of the words i1 · · · ik and i1 · · · i` is a prefix of the other
Example:
I
(u1 , v1 ) = (a, abb), (u2 , v2 ) = (bb, aa)
I
Prefix-PCP solution: u1 u2 u1 u1 = v1 v2 = abbaa
I
No PCP solution (no (ui , vi ) ends with the same letter)
Proof
Prefix-PCP
Input: (u1 , v1 ), . . . , (un , vn )
i , . . . , ik
such that ui1 · · · uik = vi1 · · · vi`
Question: ∃ 1
i1 , . . . , i `
and one of the words i1 · · · ik and i1 · · · i` is a prefix of the other
Example:
I
(u1 , v1 ) = (a, abb), (u2 , v2 ) = (bb, aa)
I
Prefix-PCP solution: u1 u2 u1 u1 = v1 v2 = abbaa
I
No PCP solution (no (ui , vi ) ends with the same letter)
Reduction to (prefix-)universality of a 3-state automaton
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
IFS
?
?
2-state GIFS
?
?
> 3-state GIFS
?
Undecidable
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
I
IFS
?
?
2-state GIFS
?
?
dimension 1: we need new tools
> 3-state GIFS
?
Undecidable
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
I
I
IFS
?
?
2-state GIFS
?
?
> 3-state GIFS
?
Undecidable
dimension 1: we need new tools
Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
I
I
I
IFS
?
?
2-state GIFS
?
?
> 3-state GIFS
?
Undecidable
dimension 1: we need new tools
Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]
Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
I
I
I
I
IFS
?
?
2-state GIFS
?
?
> 3-state GIFS
?
Undecidable
dimension 1: we need new tools
Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]
Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?
Other topological properties:
I
I
Connectedness, ∼
= disk, . . .
int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH (x) = d
Conclusion & perspectives
Decidability of nonempty interior:
dimension 1
dimension > 2
I
I
I
I
IFS
?
?
2-state GIFS
?
?
> 3-state GIFS
?
Undecidable
dimension 1: we need new tools
Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]
Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?
Other topological properties:
I
I
Connectedness, ∼
= disk, . . .
int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH (x) = d
Thank you for your attention
References
I
Lagarias, Wang, Self-affine tiles in Rn , Adv. Math., 1996
I
Wang, Self-affine tiles, in book Advances in wavelets, 1999
(great survey, available online)
I
Lai, Lau, Rao, Spectral structure of digit sets of
self-similar tiles on R1 , Trans. Amer. Math. Soc., 2013
I
Dube, Undecidable problems in fractal geometry, Complex
Systems, 1993
I
Jolivet, Kari, Undecidable properties of self-affine sets
and multi-tape automata, MFCS 2014, arXiv:1401.0705