Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape - - PowerPoint PPT Presentation
Introduction Self avoiding and non-crossing paths About the shape - - PowerPoint PPT Presentation
Introduction Self avoiding and non-crossing paths About the shape Tilings Sre cko Brlek Words2011: words and digital geometry Introduction Self avoiding and non-crossing paths About the shape Tilings Discrete Applied Mathematics 139
Introduction Self avoiding and non-crossing paths About the shape Tilings Discrete Applied Mathematics 139 (2004) 197–230 www.elsevier.com/locate/dam
Digital straightness—a review
Reinhard Klettea;∗, Azriel Rosenfeldb
aCITR, University of Auckland, Tamaki Campus, Auckland 1005, New Zealand bCenter for Automation Research, University of Maryland, College Park, MA, USA
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
+
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
+ +
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
+ +
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
How can we recognize a tile ?
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
How can we recognize a tile ? How can we generate new tiles ?
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary Σ =
- a, a, b, b
- = {0, 2, 1, 3}
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
w =
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a w = a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a w = a a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a w = a a a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a w = a a a a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b w = a a a a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a w = a a a a b a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b w = a a a a b a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a w = a a a a b a b a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a a w = a a a a b a b a a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a a b w = a a a a b a b a a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a a b a w = a a a a b a b a a b a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a a b a b w = a a a a b a b a a b a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓
✈
a a a a b a b a a b a b Note : any conjugate w ≡ w′ codes the same polyomino. w = a a a a b a b a a b a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile representation
It is convenient to approximate tiles on square grids, and therefore to use the Freeman chain code on 4 letters for representing discrete figures (polyominoes) by their boundary a → b ↑ Σ =
- a, a, b, b
- = {0, 2, 1, 3}
a ← b ↓ a a a a b a b a a b a b Note : any conjugate w ≡ w′ codes the same polyomino. w ≡ a a a a b a b a a b a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile recognition : Given a word w ∈ Σ∗
- 1. check if it is a boundary word
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile recognition : Given a word w ∈ Σ∗
- 1. check if it is a boundary word : w is closed
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile recognition : Given a word w ∈ Σ∗
- 1. check if it is a boundary word : w is closed and does not
intersect itself
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings
Tile recognition : Given a word w ∈ Σ∗
- 1. check if it is a boundary word : w is closed and does not
intersect itself
- 2. check if it has the “right” shape : BN-factorization (later)
Tile generation :
- 1. Build a closed word having the BN-factorization
- 2. check that it does not intersect itself
1 self avoiding and non crossing paths 2 about the shape 3 tilings Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
Problem Given a path w ∈ Z × Z of length n, determine if w is self avoiding
- r intersects itself.
Many solutions : sparse n × n matrix = ⇒ O(n2) list of n sorted points in = ⇒ O(n log n) hash table = ⇒ O(n log n) worst case
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
Problem Given a path w ∈ Z × Z of length n, determine if w is self avoiding
- r intersects itself.
Many solutions : sparse n × n matrix = ⇒ O(n2) list of n sorted points in = ⇒ O(n log n) hash table = ⇒ O(n log n) worst case Problem Given a non-intersecting closed path encoded by a word w ∈ {a, b, ¯ a, ¯ b} of length n, determine whether w is written clockwise or counterclockwise. Solutions : left to the reader as an exercise
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The binary representation of numbers in N × N can be stored conveniently in a dictionary (trie, radix-tree) G = (N, R) : Root := (0, 0) the root has three child nodes : (00, 01), (01, 00), (01, 01) each other node n = (x, y), with x, y ∈ {0, 1}∗ has 4 child nodes : (x0, y0), (x0, y1), (x1, y0), (x1, y1)
7,6 1,0 0,2 0,3 1,2 1,3 6,6 6,7 2,2 7,7 1,1 2,3 3,2 3,3 3,1 0,0 4,2 4,3 5,3 5,2 3,0 0,1
(1,0) (1,1) (1,0) (0,0) (1,1) (0,1)
2,1
(1,1) (0,0) (1,0) (0,0) (0,1) (1,1) (0,1) (0,0) (0,1) (1,1) (1,1)
2,0
(0,0) (1,0) (0,1) (1,0) (1,0) (0,1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
Partioning the plane
Definition Two points p, q ∈ Z × Z are neighbors ⇐ ⇒ p − q ∈ − → Σ The neighborhood
level 0 level 1 level 2 level 3
Figure: Partition of the plane
relation T can be added
- n the tree G for every
point so that G becomes G = (N, R, T).
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The radix tree with the neighborhood relation
a b b a
4,2 4,3 1,0 2,2 5,3 5,2 3,1 0,0 1,1 2,0
(0,1) (1,1) (1,0) (0,1) (0,0) (1,1) (1,0) (0,1) (0,0) (1,1) (1,0)
2,1
(0,0) (0,1) (1,0) (1,1) Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
Observation For each coordinate, the father of each node xi is ⌊ xi
2 ⌋, and
consequently, when xi is odd, we have (xi + 1) = (⌊ xi
2 ⌋ + 1) · 0.
It leads to the following computation Lemma Let G (k) be the complete graph representing B≤k × B≤k for some k ≥ 1, ǫ ∈ Σ, and z = (x, y) be a node of Nk. If one of the four conditions holds : (i) ǫ = a and x[k] = 0, (ii) ǫ = a and x[k] = 1, (iii) ǫ = b and y[k] = 0, (iv) ǫ = b and y[k] = 1, then f ( z + ǫ) = f ( z ). Otherwise, f ( z + ǫ) = f ( z ) + ǫ.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
Propagating the carry
10111,01011 11000,01011
...
1011,0101 10110,01011 1100,0101
a a a
(0,1) (1,1) (0,1) (1,1) (0,1)
Figure: Adding 1 to the first coordinate in the radix tree representation.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
It remains to construct dynamically the graph Gw = (N, R, T) w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0) (0,1) (1,0)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0) (0,1) (1,0)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0) (0,1) (1,0)
(1,0)
(2,0)
(0,0) Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0) (0,1) (1,0)
(1,0)
(2,0) (2,1)
(0,1) (0,1) (0,0) Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0)
(0,0) (1,1)
(2,2) (0,1) (1,0)
(1,0)
(2,0) (2,1)
(0,1) (0,1) (0,0) (1,0) (0,1)
(1,1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0)
(0,0) (1,1)
(2,2) (0,1) (1,2)
(!1,0) (!1,0) (1,0)
(1,0)
(1,0)
(2,0) (2,1)
(0,1) (0,1) (0,0) (1,0) (0,1)
(1,1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0)
(0,0) (1,1)
(2,2) (0,1) (1,2)
(!1,0) (!1,0) (1,0)
(1,0)
(1,0)
(2,0) (2,1)
(0,1) (0,1) (0,0) (1,0) (0,!1) (0,!1) (0,1)
(1,1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Radix-trees with neighborhood links The linear algorithm
The linear algorithm
w = aabb¯ a¯ ba (0,0)
(1,0) (0,1) (1,0) (0,1)
(0,0)
(0,0) (1,1)
(2,2) (0,1) (1,2)
(!1,0) (!1,0) (1,0)
(1,0)
(1,0)
(2,0) (2,1)
(0,1) (0,1) (0,0) (1,0) (0,!1) (0,!1) (0,1) (1,0)
(1,1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Let w be a word on {a, b, a, b}, then
- a“left turn” of w is a factor of w in {ab, ba, ab, ba},
- a“right turn” of w is a factor of w in {ab, ba, ab, ba}.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Let w be a word on {a, b, a, b}, then
- a“left turn” of w is a factor of w in {ab, ba, ab, ba},
- a“right turn” of w is a factor of w in {ab, ba, ab, ba}.
Definition (Alternative) Let w be the counterclockwise boundary word of a polyomino. A salient corner is a left turn, and a reentrant corner is a right turn.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Lemma (Daurat and Nivat 2003) Let w be the counterclockwise boundary word of a polyomino. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) = 4.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Lemma (Daurat and Nivat 2003) Let w be the counterclockwise boundary word of a polyomino. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) = 4. Manhattan Taxi driver’s proof :
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Lemma (Daurat and Nivat 2003) Let w be the counterclockwise boundary word of a polyomino. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) = 4. Manhattan Taxi driver’s proof :
N S E W
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Lemma Let w be a closed non-crossing path written counterclockwise. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) = 4. Lemma Let w be a closed path. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) ≡ 0 mod 4.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Lemma Let w be a closed non-crossing path written counterclockwise. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) = 4. Lemma Let w be a closed path. Let R(ww1) be the set of its right turns and L(ww1) be the set of its left turns. Then L(ww1) − R(ww1) ≡ 0 mod 4. Exercice : hexagonal grids.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
x y
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Euclidean convexity) A subset S ⊂ r2 is said convex if for any pair of points x, y ∈ S, the line segment joining x to y is entirely included in S.
y x
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Minsky et Papert 1969, Slansky 1970) A subset S ⊂ Z2 is digitally convex if it is the discretization of a convex Euclidean figure.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Minsky et Papert 1969, Slansky 1970) A subset S ⊂ Z2 is digitally convex if it is the discretization of a convex Euclidean figure.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Minsky et Papert 1969, Slansky 1970) A subset S ⊂ Z2 is digitally convex if it is the discretization of a convex Euclidean figure.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Minsky et Papert 1969, Slansky 1970) A subset S ⊂ Z2 is digitally convex if it is the discretization of a convex Euclidean figure.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Minsky et Papert 1969, Slansky 1970) A subset S ⊂ Z2 is digitally convex if it is the discretization of a convex Euclidean figure. Remark : connexity may fail !
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition A discrete figure is a finite 8-connected subset of Z2, without holes.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition A discrete figure is a finite 8-connected subset of Z2, without holes.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition A discrete figure is a finite 8-connected subset of Z2, without holes.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition A discrete figure is a finite 8-connected subset of Z2, without holes.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Kim) A discrete figure F ⊂ Z2 is digitally convex if it is the digitization
- f its Euclidean convex hull.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Kim) A discrete figure F ⊂ Z2 is digitally convex if it is the digitization
- f its Euclidean convex hull.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Basics
Definition (Kim) A discrete figure F ⊂ Z2 is digitally convex if it is the digitization
- f its Euclidean convex hull.
Remark : 8-connexity is included in the hypothesis !
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
HV-convexity
Definition A subset S ⊂ Z2 is H-convex if all its rows are connected.
(b) (c) (a)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
HV-convexity
Definition A subset S ⊂ Z2 is H-convex if all its rows are connected. Definition A subset S ⊂ Z2 is V-convex if all its column are connected.
(b) (c) (a)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
HV-convexity
Definition A subset S ⊂ Z2 is H-convex if all its rows are connected. Definition A subset S ⊂ Z2 is V-convex if all its column are connected. Definition A subset S ⊂ Z2 is HV-convex if it is H-convex and V-convex.
(b) (c) (a)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Previous result
Theorem (Debled-Renneson, R´ emy and Rouyer-Degli) Given an HV-convex discrete figure F. Deciding if F is digitally convex is decidable in linear time.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Previous result
Theorem (Debled-Renneson, R´ emy and Rouyer-Degli) Given an HV-convex discrete figure F. Deciding if F is digitally convex is decidable in linear time. Algorithm based on the segmentation of curves in discrete lines, which requires only arithmetic computations.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1. = (1) · (0 1 0 1 1) · (0 0 1) · (0 0 0 0 1)2.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1. = (1) · ( 0 1 0 1 1 ) · (0 0 1) · (0 0 0 0 1)2.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1. = (1) · ( 0 1 0 1 1 ) · ( 0 0 1 ) · (0 0 0 0 1)2.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1. = (1) · ( 0 1 0 1 1 ) · ( 0 0 1 ) · ( 0 0 0 0 1 )2.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Here, the boundary word w is written clockwise. Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words.
0 1 1 1 1 1 1 1
w = 1 0 1 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1. = (1) · ( 0 1 0 1 1 ) · ( 0 0 1 ) · ( 0 0 0 0 1 )2.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Daurat-Nivat relation : R − S = 4 Lyndon+Christoffel = Digitally convex
Proposition A word w is NW-convex iff its Lyndon factorization w = ln1
1 ln2 2 · · · lnk k
is only composed of Christoffel words. In practice there are linear algorithms for building the Lyndon factorization of any word (J.P. Duval) checking if a word is a Christoffel word By combining the two, where each Lyndon factor must be a Christoffel word, this leads to a linear algorithm which is 10 times faster than previous ones. Then it suffices to check NE, ES, SW-convexity by permuting the alphabet NW : (0, 1) ; NE : (0, 3) ; ES (3, 2) ; SW (2, 1)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Figure: Maurits Cornelis Escher (1898-1972)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Figure: Hexagonal tiling
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Figure: Hexagonal and Square tilings
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Figure: Pure Square Tilings
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
The tiling problem
Problem Given a word w, does it represent a polyomino P which tiles the plane by translation ?
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
The tiling problem
Problem Given a word w, does it represent a polyomino P which tiles the plane by translation ? Complexity : let n be the length of w.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
The tiling problem
Problem Given a word w, does it represent a polyomino P which tiles the plane by translation ? Complexity : let n be the length of w. Lower bound : Ω(n)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
The tiling problem
Problem Given a word w, does it represent a polyomino P which tiles the plane by translation ? Complexity : let n be the length of w. Lower bound : Ω(n) Upper bound : ? ? ?
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Sreˇ
cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t ✛
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Beauquier and Nivat (1991)
- Characterization : A polyomino P tiles the plane
if and only if there exist X, Y , Z ∈ Σ∗ such that w ≡ XYZ X Y Z.
- · = · ◦
·
X = a a b a b a b
t ✻
- X = b a b a b a a
t ✛
Two words u, v such that u = v are called homologous.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Detecting squares
Let w be the boundary of P with |w| = n. Naive : O(n4) [Wijshof and Van Leeuven (1984)] O(n2) by using Beauquier-Nivat’s characterization [Gambini and Vuillon (2007)] .
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Detecting squares
Let w be the boundary of P with |w| = n. Naive : O(n4) [Wijshof and Van Leeuven (1984)] O(n2) by using Beauquier-Nivat’s characterization [Gambini and Vuillon (2007)] . O(n) optimal [B., Proven¸ cal (2006)] by using :
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Detecting squares
Let w be the boundary of P with |w| = n. Naive : O(n4) [Wijshof and Van Leeuven (1984)] O(n2) by using Beauquier-Nivat’s characterization [Gambini and Vuillon (2007)] . O(n) optimal [B., Proven¸ cal (2006)] by using :
- 1. Beauquier-Nivat’s characterization ;
- 2. computation of Longest Common
Right Extensions and Longest Common Left Extensions in constant time [Lothaire (2005)] conditional to a linear pre-processing of w for building its suffix tree [Gusfield (1997)]
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Theorem Let w ∈ Σ∗. Determining if w codes a square is decidable in linear time.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Theorem Let w ∈ Σ∗. Determining if w codes a square is decidable in linear time. Theorem Let w ∈ Σ∗ be a k-square-free word, with k ∈ O(√n). Determining if w codes a hexagon is decidable in linear time.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Generation of squares tiles
- A. Hexaustive and brute force
for each even n generate all polyominoes of length n ; check if the boundary w of each polyomino satisfies the
- factorization
w ≡ AB A B.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Generation of squares tiles
- A. Hexaustive and brute force
for each even n generate all polyominoes of length n ; check if the boundary w of each polyomino satisfies the
- factorization
w ≡ AB A B.
- B. Less brute force
Generate 2 self avoiding walks A, B of length n, m :
- 1. generate a walk of length n : O(n)
- 2. check if it intersects itself : ?
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Generation of squares tiles
- A. Hexaustive and brute force
for each even n generate all polyominoes of length n ; check if the boundary w of each polyomino satisfies the
- factorization
w ≡ AB A B.
- B. Less brute force
Generate 2 self avoiding walks A, B of length n, m :
- 1. generate a walk of length n : O(n)
- 2. check if it intersects itself : ?
Check if the final word AB A B does not intersect itself ;
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Observations : A tile may have both an hexagon and square factorization. A tile may have many distinct factorizations.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Observations : A tile may have both an hexagon and square factorization. A tile may have many distinct factorizations. Definition Call pure square a tile having only square BN-factorizations. Extensive computations suggest the following statement :
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Observations : A tile may have both an hexagon and square factorization. A tile may have many distinct factorizations. Definition Call pure square a tile having only square BN-factorizations. Extensive computations suggest the following statement : Theorem Every pure square has at most 2 distinct square BN-factorizations.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
..... search for pure double squares..... [WORDS 2009]
Solving equations of type AB A B ≡ XY X Y
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
..... search for pure double squares..... [WORDS 2009]
Solving equations of type AB A B ≡ XY X Y
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
..... search for pure double squares..... [WORDS 2009]
Solving equations of type AB A B ≡ XY X Y Nice cookies ! optimally packed, self assembling in two distinct ways ....
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Let B = {a, b}. We define a morphism λ : B∗ → F∗ by λ(a) = a¯ bab; λ(b) = ab.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Let B = {a, b}. We define a morphism λ : B∗ → F∗ by λ(a) = a¯ bab; λ(b) = ab. Two useful properties of λ are Lemma Let v, v′ ∈ B∗. Then (i) bλ(v) is a palindrome if and only if v is a palindrome. (ii) λ(v) ≡ λ(v′) if and only if v ≡ v′.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Definition We call linear tile a polyomino whose boundary word is given by λ(w)λ(w) where w = avb and v ∈ Pal(B∗). A linear tile is a square since λ(w)λ(w) = a¯ babλ(v)ab¯ ab¯ a¯ bλ(v)¯ a¯ b ≡ ¯ ba¯ b·abλ(v)a· ¯ ba¯ b· abλ(v)a. We say that a linear tile obtained from a lower Christoffel word w is a basic Christoffel tile.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Definition We call linear tile a polyomino whose boundary word is given by λ(w)λ(w) where w = avb and v ∈ Pal(B∗). A linear tile is a square since λ(w)λ(w) = a¯ babλ(v)ab¯ ab¯ a¯ bλ(v)¯ a¯ b ≡ ¯ ba¯ b·abλ(v)a· ¯ ba¯ b· abλ(v)a. We say that a linear tile obtained from a lower Christoffel word w is a basic Christoffel tile.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Definition We call linear tile a polyomino whose boundary word is given by λ(w)λ(w) where w = avb and v ∈ Pal(B∗). A linear tile is a square since λ(w)λ(w) = a¯ babλ(v)ab¯ ab¯ a¯ bλ(v)¯ a¯ b ≡ ¯ ba¯ b·abλ(v)a· ¯ ba¯ b· abλ(v)a. We say that a linear tile obtained from a lower Christoffel word w is a basic Christoffel tile.
Figure: Basic Christoffel tiles : (a) w = aaaab (b) w = abbbb and (c) w = aabaababaabab.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Christoffel Tiles, DGCI2009
Theorem Let P be a linear tile. Then P is a double square if and only if P is a basic Christoffel tile.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Fibonacci Tiles, DGCI2009
We define a sequence (qn)n∈N in {r, l}∗ by q0 = ε, q1 = r and qn =
- qn−1qn−2
if n ≡ 2 mod 3, qn−1qn−2 if n ≡ 0, 1 mod 3. The first terms of (qn)n∈N are
q0 = ε q3 = rl q6 = rllrllrr q1 = r q4 = rll q7 = rllrllrrlrrlr q2 = r q5 = rllrl q8 = rllrllrrlrrlrrllrllrr
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Fibonacci Tiles, DGCI2009
We define a sequence (qn)n∈N in {r, l}∗ by q0 = ε, q1 = r and qn =
- qn−1qn−2
if n ≡ 2 mod 3, qn−1qn−2 if n ≡ 0, 1 mod 3. The first terms of (qn)n∈N are
q0 = ε q3 = rl q6 = rllrllrr q1 = r q4 = rll q7 = rllrllrrlrrlr q2 = r q5 = rllrl q8 = rllrllrrlrrlrrllrllrr
Remark : the length of these words is given by the Fibonacci sequence : |qn| = F(n)
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Lemma Let n ∈ N and α ∈ {a, b, a, b}. (i) The path qn is self-avoiding. (ii) The path (q3n+1)4 is the boundary word of a polyomino.
Figure: Basic Fibonacci tiles of order n = 0, 1, 2, 3, 4.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
A tesselation......
Figure: A tesselation with a Fibonacci polyomino.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
A combinatorial result ......
The perimeter of Fibonacci snowflakes is given by 4F(3n + 1) while its area A(n) satisfies the recurrence formulas A(0) = 1, A(1) = 5; A(n) = 6A(n − 1) − A(n − 2), for n ≥ 2, whose first terms are 1, 5, 29, 169, 985, 5741, 33461, 195025, 1136689, 6625109, 38613965, . . . This sequence is the subsequence of odd index Pell numbers 0, 1, 2, 5, 12, 29, 70, 169, 408, 985, 2378, 5741, 13860, 33461, 80782, . . . defined by P(0) = 0, P(1) = 1; P(n) = 2P(n − 1) + P(n − 2), for n > 1.
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
Interactions between combinatorics on words and digital geometry
Sreˇ cko Brlek September 13, 2011
based on work with : Alexandre Blondin Mass´ e(1), Jean-Marc F´ edou (5)Ariane Garon(1), Michel Koskas(2), Annie Lacasse(1), S´ ebastien Labb´ e (1), Gilbert Labelle (1), Jacques-Olivier Lachaud (4),Michel Mend` es France (3), Xavier Proven¸ cal (4), Christophe Reutenauer (1)
(1) Laboratoire de Combinatoire et d’Informatique Math´
ematique, UQAM
(2)AgroParisTech, UMR518, 16 rue Claude Bernard, 75005 Paris Cedex (3)UMR 5251, Universit´
e de Bordeaux, 351 cours de la Lib´ eration, Talence
(4)LAMA (Un. de Savoie, Chamb´
ery)
(5)I3S, Un. Nice, Sophia-Antipolis
Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares Sreˇ cko Brlek Words2011: words and digital geometry
Introduction Self avoiding and non-crossing paths About the shape Tilings Escher tilings Tiling by translation Algorithms Double Squares
T HANK YOU!
with special thanks to Eliot - alias Marcel - and Val´ erie
Sreˇ cko Brlek Words2011: words and digital geometry