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
Undecidable properties of self-affine setsand multitape automata
Timo JolivetInstitut de Mathématiques de Toulouse
Université Paul Sabatier
In collaboration with Jarkko Kari
Verification seminarUniversity of OxfordThursday 18 June
Example: the Cantor set
Example: the Cantor set
X⊆[0,1]︷ ︸︸ ︷
Example: the Cantor set
X⊆[0,1]︷ ︸︸ ︷︸ ︷︷ ︸13 X
︸ ︷︷ ︸13 X+ 2
3
Example: the Cantor set
X⊆[0,1]︷ ︸︸ ︷︸ ︷︷ ︸13 X
︸ ︷︷ ︸13 X+ 2
3
I X = f1(X) ∪ f2(X) ⊆ RI f1(x) = 1
3x
I f2(x) = 13x+ 2
3
ExampleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/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.
Theorem (Hutchinson 1981)There is a unique, nonemtpy, compact set X ⊆ Rd such that
X = f1(X) ∪ · · · ∪ fn(X).
I Definition of a fractal
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
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 triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
Example: Sierpiński’s triangleI f1(x) = x/2I f2(x) = x/2 +
(1/20
)I f3(x) = x/2 +
(01/2
)X = f1(X) ∪ f2(X) ∪ f3(X) ⊆ R2
A particular family of IFS: self-affine setsI Let A ∈ Zd×d be an expanding matrixI 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 mapsI Integer coefficientsI Same matrix A for each fd
A particular family of IFS: self-affine setsI Let A ∈ Zd×d be an expanding matrixI 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 mapsI Integer coefficientsI Same matrix A for each fd
A particular family of IFS: self-affine setsI Let A ∈ Zd×d be an expanding matrixI 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 mapsI Integer coefficientsI Same matrix A for each fd
Example 0I A = (10)I D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I X =9⋃
d=0
110(X + d)
I X = [0, 1] (base 10 representation)
Meaning of “digits”:
X ={ ∞∑
k=1A−kdk : (dk)k>1 ∈ DN
}
Example 0I A = (10)I D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I X =9⋃
d=0
110(X + d)
I X = [0, 1] (base 10 representation)
Meaning of “digits”:
X ={ ∞∑
k=1A−kdk : (dk)k>1 ∈ DN
}
Example 0I A = (10)I D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I X =9⋃
d=0
110(X + d)
I X = [0, 1] (base 10 representation)
Meaning of “digits”:
X ={ ∞∑
k=1A−kdk : (dk)k>1 ∈ DN
}
Example 0I A = (10)I D = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
I X =9⋃
d=0
110(X + d)
I X = [0, 1] (base 10 representation)
Meaning of “digits”:
X ={ ∞∑
k=1A−kdk : (dk)k>1 ∈ DN
}
Example: Sierpiński’s triangle againI A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1)}
( 2 00 2)X = X ∪
(X +
( 10))∪(X +
( 01))
Example: Sierpiński’s triangle againI A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1)}
( 2 00 2)X = X ∪
(X +
( 10))∪(X +
( 01))
Sierpiński variant 1I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 1
1)}
Sierpiński variant 1I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 1
1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 2I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),(−1−1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Sierpiński variant 3I A =
( 2 00 2)
I D ={( 0
0),( 1
0),( 0
1),( 3
1)}
Self-affine tiles
DefinitionD 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 interiorI X is the closure of its interiorI µ(∂X) = 0I X tiles Rd by translation
I Many good properties and algorithms
Self-affine tiles
DefinitionD 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 interiorI X is the closure of its interiorI µ(∂X) = 0I X tiles Rd by translation
I Many good properties and algorithms
Self-affine tiles
DefinitionD 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 interiorI X is the closure of its interiorI µ(∂X) = 0I X tiles Rd by translation
I Many good properties and algorithms
Self-affine tiles
DefinitionD 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 interiorI X is the closure of its interiorI µ(∂X) = 0I X tiles Rd by translation
I Many good properties and algorithms
Nonstandard D
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
1),( 1
2)}
X has empty interior (why?)
Nonstandard D
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
1),( 1
2)}
X has empty interior (why?)
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2)}
+{( 0
0),( 2
0),( 0
2),( 2
4)}
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2)}
+{( 0
0),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2),( 2
0),( 3
0),( 2
1),( 3
2),( 0
2),( 1
2),( 0
3),( 1
4),( 2
4),( 3
4),( 2
5),( 3
6)}
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2)}
+{( 0
0),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2),( 2
0),( 3
0),( 2
1),( 3
2),( 0
2),( 1
2),( 0
3),( 1
4),( 2
4),( 3
4),( 2
5),( 3
6)}
so 16µ(X) 6 15µ(X)
Nonstandard DIndeed, ( 2 0
0 2)X = X +
{( 00),( 1
0),( 0
1),( 1
2)}
so ( 4 00 4)X =
( 2 00 2)X +
{( 00),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2)}
+{( 0
0),( 2
0),( 0
2),( 2
4)}
= X +{( 0
0),( 1
0),( 0
1),( 1
2),( 2
0),( 3
0),( 2
1),( 3
2),( 0
2),( 1
2),( 0
3),( 1
4),( 2
4),( 3
4),( 2
5),( 3
6)}
so 16µ(X) 6 15µ(X)so µ(X) = 0
Nonstandard D
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
1),( 1
2)}
X has empty interior
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
2),( 1
2)}
X has nonempty interior
Nonstandard D
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
1),( 1
2)}
X has empty interior
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
2),( 1
2)}
X has nonempty interior
Nonstandard D
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
1),( 1
2)}
X has empty interior
A =( 2 0
0 2)
D ={( 0
0),( 1
0),( 0
2),( 1
2)}
X has nonempty interior
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]
I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |D| = |det(A)| if A = (p) with p prime [Kenyon 1992]I Related works [Lagarias-Wang 1996], [Lau-Rao 2003], . . .
I Is it decidable?
Nonstandard DWe 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(Xo)µ(∂(X)) = 0
⇔ #{∑N
k=1A−kdk : (dk) ∈ DN
}= |D|N for all N > 1
⇔ |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 IFSI Several contractions A1, . . . , Ai instead of just AI Arbitrary affine mappings fi(x) = Aix+ 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 IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/familiesI Some “almost always”-type resultsI Application in number theory, dynamical systems, Fourier
analysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Beyond self-affine tiles: affine IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/familiesI Some “almost always”-type resultsI Application in number theory, dynamical systems, Fourier
analysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Beyond self-affine tiles: affine IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/families
I Some “almost always”-type resultsI Application in number theory, dynamical systems, Fourier
analysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Beyond self-affine tiles: affine IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/familiesI Some “almost always”-type results
I Application in number theory, dynamical systems, Fourieranalysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Beyond self-affine tiles: affine IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/familiesI Some “almost always”-type resultsI Application in number theory, dynamical systems, Fourier
analysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Beyond self-affine tiles: affine IFSI Several contractions A1, . . . , Ak instead of just AI Arbitrary affine mappings fi(x) = Aix+ vi
I Interesting properties:I compute fractal dimensions (Hausdorff, packing, etc.),I topological properties (connectedness, nonempty interior, etc.)I tiling properties
I Notorious difficulty of study for specific examples/familiesI Some “almost always”-type resultsI Application in number theory, dynamical systems, Fourier
analysis
I GIFS: several sets X1, . . . , Xn instead of just X (Graph-IFS)
Graph-IFS (GIFS), example 1f1(x) = x/2
f4(x) = x/2 +(1/2
1/2
)
f2(x) = x/2 +(1/2
0
)
f5(x) = x/2 +(1/2
3/4
)
f3(x) = x/2 +(0
1/2
)
f6(x) = x/2 +(3/4
3/4
){
X = f1(X) ∪ f2(X) ∪ f3(X)
∪ f4(Y )Y = f5(Y ) ∪ f6(X)
X
Y
f1f2f3
f5
f4
f6
Graph-IFS (GIFS), example 1f1(x) = x/2 f4(x) = x/2 +
(1/21/2
)f2(x) = x/2 +
(1/20
)f5(x) = x/2 +
(1/23/4
)f3(x) = x/2 +
(01/2
)f6(x) = x/2 +
(3/43/4
){X = f1(X) ∪ f2(X) ∪ f3(X) ∪ f4(Y )Y = f5(Y ) ∪ f6(X)
X Y
f1f2f3
f5
f4
f6
Graph-IFS (GIFS), example 1f1(x) = x/2 f4(x) = x/2 +
(1/21/2
)f2(x) = x/2 +
(1/20
)f5(x) = x/2 +
(1/23/4
)f3(x) = x/2 +
(01/2
)f6(x) = x/2 +
(3/43/4
){X = f1(X) ∪ f2(X) ∪ f3(X) ∪ f4(Y )Y = f5(Y ) ∪ f6(X)
X Y
f1f2f3
f5
f4
f6
Graph-IFS (GIFS), example 2: Rauzy fractalsX1 = f(X1) ∪ f(X2) ∪ f(X3)X2 = g(X1)X3 = g(X2)
X1
X3
X2
f
f
f
g g
f(x) = αx,g(x) = αx+ 1,withα = −0.419 + 0.606i ∈ Croot of x3 − x2 − x+ 1
GIFS with 3 states
Graph-IFS (GIFS), example 2: Rauzy fractalsX1 = f(X1) ∪ f(X2) ∪ f(X3)X2 = g(X1)X3 = g(X2)
X1
X3
X2
f
f
f
g g
f(x) = αx,g(x) = αx+ 1,withα = −0.419 + 0.606i ∈ Croot 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 undecidableI empty interior is undecidable
I Also true with diagonal Ai
I Computational tools: multi-tape automata
Undecidability result
Theorem [J-Kari 2013]For 2D affine GIFS with 3 states (with coefficients in Q):
I = [0, 1]2 is undecidableI empty interior is undecidable
I Also true with diagonal Ai
I Computational tools: multi-tape automata
Undecidability result
Theorem [J-Kari 2013]For 2D affine GIFS with 3 states (with coefficients in Q):
I = [0, 1]2 is undecidableI 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 QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
X Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001010001000 . . .1100011011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
XX Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001010001000 . . .1100011011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
X YY01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
000
1010001000 . . .
11
00011011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
XX Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001
010001000 . . .
110
0011011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
XX Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
000101
0001000 . . .
11000
11011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
X YY01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
000101000
1000 . . .
1100011
011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
XX Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001010001
000 . . .
11000110
11 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
X YY01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001010001000
. . .
1100011011
. . .∈ AN = ({0, 1} × {0, 1})N
Multi-tape automata
d-tape automaton:I alphabet A = A1 × · · · ×Ad
I states QI transitions Q× (A+
1 × · · · ×A+d )→ Q
I acceptance: infinite run starting from any state
X Y01 | 00 1 | 001
000 | 11
1 | 0
A = {0, 1} × {0, 1}Q = {X,Y }
Accepted infinite word starting from X:
0001010001000 . . .1100011011 . . . ∈ AN = ({0, 1} × {0, 1})N
Multi-tape automaton 7−→ GIFS
Transitionu | v
(tape alphabets A1, A2)
7−→ Mapping f(xy
)=( |A1|−|u| 0
0 |A2|−|v|)(xy
)+(0.u1 . . . u|u|
0.v1 . . . v|v|
)Automaton:
X Y01 | 00 1 | 001
000 | 11
1 | 0
Associated GIFS:
X Y(1/4 0
0 1/4
)(xy
)+(0.01
0.00
) (1/2 00 1/8
)(xy
)+(0.1
0.001
)(1/8 0
0 1/4
)(xy
)+(0.000
0.11
)(1/2 0
0 1/2
)(xy
)+(0.1
0.0
)
Multi-tape automaton 7−→ GIFS
Transitionu | v
(tape alphabets A1, A2)
7−→ Mapping f(xy
)=( |A1|−|u| 0
0 |A2|−|v|)(xy
)+(0.u1 . . . u|u|
0.v1 . . . v|v|
)
Automaton:
X Y01 | 00 1 | 001
000 | 11
1 | 0
Associated GIFS:
X Y(1/4 0
0 1/4
)(xy
)+(0.01
0.00
) (1/2 00 1/8
)(xy
)+(0.1
0.001
)(1/8 0
0 1/4
)(xy
)+(0.000
0.11
)(1/2 0
0 1/2
)(xy
)+(0.1
0.0
)
Multi-tape automaton 7−→ GIFS
Transitionu | v
(tape alphabets A1, A2)
7−→ Mapping f(xy
)=( |A1|−|u| 0
0 |A2|−|v|)(xy
)+(0.u1 . . . u|u|
0.v1 . . . v|v|
)Automaton:
X Y01 | 00 1 | 001
000 | 11
1 | 0
Associated GIFS:
X Y(1/4 0
0 1/4
)(xy
)+(0.01
0.00
) (1/2 00 1/8
)(xy
)+(0.1
0.001
)(1/8 0
0 1/4
)(xy
)+(0.000
0.11
)(1/2 0
0 1/2
)(xy
)+(0.1
0.0
)
Multi-tape automaton 7−→ GIFS
Transitionu | v
(tape alphabets A1, A2)
7−→ Mapping f(xy
)=( |A1|−|u| 0
0 |A2|−|v|)(xy
)+(0.u1 . . . u|u|
0.v1 . . . v|v|
)Automaton:
X Y01 | 00 1 | 001
000 | 11
1 | 0
Associated GIFS:
X Y(1/4 0
0 1/4
)(xy
)+(0.01
0.00
) (1/2 00 1/8
)(xy
)+(0.1
0.001
)(1/8 0
0 1/4
)(xy
)+(0.000
0.11
)(1/2 0
0 1/2
)(xy
)+(0.1
0.0
)
Multi-tape automaton 7−→ GIFS
Transitionu | v
(tape alphabets A1, A2)
7−→ Mapping f(xy
)=( |A1|−|u| 0
0 |A2|−|v|)(xy
)+(0.u1 . . . u|u|
0.v1 . . . v|v|
)
Automaton GIFSstates fractal setsedges contracting mappings#tapes dimensiontape i base-|Ai| representation of ith coordinate
Multi-tape automaton 7−→ GIFS
I
1011 | 11
I f(xy
)=
(1/16 00 1/4
)(0.x1x2 . . .0.y1y2 . . .
)+(0.1011
0.11)
=(0.0000x1x2 . . .
0.00y1y2 . . .
)+(0.1011
0.11)
=(0.1011x1x2 . . .
0.11y1y2 . . .
)Key correspondence
GIFS fractal associated with state X
={(0.x1x2 . . .0.y1y2 . . .
)∈ R2 :
(x1x2 . . .y1y2 . . .
)accepted byM starting at X
}
Multi-tape automaton 7−→ GIFS
I
1011 | 11
I f(xy
)=
(1/16 00 1/4
)(0.x1x2 . . .0.y1y2 . . .
)+(0.1011
0.11)
=(0.0000x1x2 . . .
0.00y1y2 . . .
)+(0.1011
0.11)
=(0.1011x1x2 . . .
0.11y1y2 . . .
)Key correspondence
GIFS fractal associated with state X
={(0.x1x2 . . .0.y1y2 . . .
)∈ R2 :
(x1x2 . . .y1y2 . . .
)accepted byM starting at X
}
Multi-tape automaton 7−→ GIFS
I
1011 | 11
I f(xy
)=
(1/16 00 1/4
)(0.x1x2 . . .0.y1y2 . . .
)+(0.1011
0.11)
=(0.0000x1x2 . . .
0.00y1y2 . . .
)+(0.1011
0.11)
=(0.1011x1x2 . . .
0.11y1y2 . . .
)
Key correspondenceGIFS fractal associated with state X
={(0.x1x2 . . .0.y1y2 . . .
)∈ R2 :
(x1x2 . . .y1y2 . . .
)accepted byM starting at X
}
Multi-tape automaton 7−→ GIFS
I
1011 | 11
I f(xy
)=
(1/16 00 1/4
)(0.x1x2 . . .0.y1y2 . . .
)+(0.1011
0.11)
=(0.0000x1x2 . . .
0.00y1y2 . . .
)+(0.1011
0.11)
=(0.1011x1x2 . . .
0.11y1y2 . . .
)Key correspondence
GIFS fractal associated with state X
={(0.x1x2 . . .0.y1y2 . . .
)∈ R2 :
(x1x2 . . .y1y2 . . .
)accepted byM starting at X
}
Multi-tape automaton 7−→ GIFSExample:
0|0
1|0 0|1
12(
xy
)+(0
0
)12(
xy
)+(0
1/2
) 12(
xy
)+(1/2
0
)Automaton GIFS
={(0.x1x2 . . .
0.y1y2 . . .
): (xn, yn) 6= (1, 1), ∀n > 1
}
Multi-tape automaton 7−→ GIFSExample:
X Y
0|00|11|0
10|1110|10
11|11
Multi-tape automaton ←→ GIFS
Automaton GIFSstates fractal setsedges contracting mappings#tapes dimensionalphabet Ai 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 disconnectedCompute language entropy Compute fractal dimension
Multi-tape automaton ←→ GIFS
Automaton GIFSstates fractal setsedges contracting mappings#tapes dimensionalphabet Ai 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 disconnectedCompute 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(0.x1x2 . . .
0.x1x2 . . .
)I 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
I Example (universal): 0|0, 0|1, 1|0, 1|1I Example (not universal): 0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I Example (universal with prefix 1): 1, 10, 00(one-dimensional; not universal)
f1(x) = x/2 + 1/2f2(x) = x/4f3(x) = x/4 + 1/2
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I Example (universal): 0|0, 0|1, 1|0, 1|1
I Example (not universal): 0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I Example (universal with prefix 1): 1, 10, 00(one-dimensional; not universal)
f1(x) = x/2 + 1/2f2(x) = x/4f3(x) = x/4 + 1/2
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I Example (universal): 0|0, 0|1, 1|0, 1|1I Example (not universal): 0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I Example (universal with prefix 1): 1, 10, 00(one-dimensional; not universal)
f1(x) = x/2 + 1/2f2(x) = x/4f3(x) = x/4 + 1/2
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I Example (universal): 0|0, 0|1, 1|0, 1|1I Example (not universal): 0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I Example (universal with prefix 1): 1, 10, 00(one-dimensional; not universal)
f1(x) = x/2 + 1/2f2(x) = x/4f3(x) = x/4 + 1/2
Language universality ⇐⇒ nonempty interior
Fact 1: M is universal ⇐⇒ X = [0, 1]d
I Example (universal): 0|0, 0|1, 1|0, 1|1I Example (not universal): 0|0, 0|1, 1|0
Fact 2: M is prefix-universal ⇐⇒ X has nonempty interior
I Example (universal with prefix 1): 1, 10, 00(one-dimensional; not universal)
f1(x) = x/2 + 1/2f2(x) = x/4f3(x) = x/4 + 1/2
Undecidability results
Theorem [J-Kari 2013]For 3-state, 2-tape automata:
I universality is undecidableI prefix-universality is undecidable
CorollaryFor 2D affine GIFS with 3 states (with coefficients in Q):
I = [0, 1]2 is undecidableI empty interior is undecidable
Proof
Prefix-PCPInput: (u1, v1), . . . , (un, vn)
Question: ∃{i1, . . . , iki1, . . . , i`
such that ui1 · · ·uik= vi1 · · · vi`
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: u1u2u1u1 = v1v2 = abbaa
I No PCP solution (no (ui, vi) ends with the same letter)
Reduction to (prefix-)universality of a 3-state automaton
Proof
Prefix-PCPInput: (u1, v1), . . . , (un, vn)
Question: ∃{i1, . . . , iki1, . . . , i`
such that ui1 · · ·uik= vi1 · · · vi`
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: u1u2u1u1 = v1v2 = abbaa
I No PCP solution (no (ui, vi) ends with the same letter)
Reduction to (prefix-)universality of a 3-state automaton
Proof
Prefix-PCPInput: (u1, v1), . . . , (un, vn)
Question: ∃{i1, . . . , iki1, . . . , i`
such that ui1 · · ·uik= vi1 · · · vi`
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: u1u2u1u1 = v1v2 = abbaa
I No PCP solution (no (ui, vi) ends with the same letter)
Reduction to (prefix-)universality of a 3-state automaton
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new toolsI Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]I Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?I Other topological properties:
I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new tools
I Case A = kId: “Presburger brute-forcing”,links with automatic sequences [Charlier-Leroy-Rigo]
I Reachability problems: can we reinterpret these problems interms of matrix/vector products?
I Other topological properties:I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new toolsI Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]
I Reachability problems: can we reinterpret these problems interms of matrix/vector products?
I Other topological properties:I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new toolsI Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]I Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?
I Other topological properties:I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new toolsI Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]I Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?I Other topological properties:
I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
Conclusion & perspectivesDecidability of nonempty interior:
IFS 2-state GIFS > 3-state GIFSdimension 1 ? ? ?
dimension > 2 ? ? Undecidable
I dimension 1: we need new toolsI Case A = kId: “Presburger brute-forcing”,
links with automatic sequences [Charlier-Leroy-Rigo]I Reachability problems: can we reinterpret these problems in
terms of matrix/vector products?I Other topological properties:
I Connectedness, ∼= disk, . . .I int(X) 6= ∅ ⇒ µ(X) > 0 ⇒ dimH(x) = d
Thank you for your attention
ReferencesI Lagarias, Wang, Self-affine tiles in Rn, Adv. Math., 1996I Wang, Self-affine tiles, in book Advances in wavelets, 1999
(great survey, available online)I Lai, Lau, Rao, Spectral structure of digit sets ofself-similar tiles on R1, Trans. Amer. Math. Soc., 2013
I Dube, Undecidable problems in fractal geometry, ComplexSystems, 1993
I Jolivet, Kari, Undecidable properties of self-affine setsand multi-tape automata, MFCS 2014, arXiv:1401.0705