Algorithms for Constructing Even-Sided Selfagons

Algorithms for Constructing
Even-Sided Selfagons
Frances Worek
[email protected]
Mount Holyoke College REU 2005
– p.1/25
Studying the Selfatope!
MHC REU 2005 Research Goals:
• study the selfatope, a special type of polytope
used in a paper by Jessica Sidman and David Cox
• relate selfatope to toric varieties
– p.2/25
What is a polytope?
•
Def: The convex hull of a set A is the intersection
of all convex sets containing A; ie, the smallest
convex set containing A.
– p.3/25
What is a polytope?
•
Def: The convex hull of a set A is the intersection
of all convex sets containing A; ie, the smallest
convex set containing A.
•
Def: A polytope is a convex hull of a finite
number of points.
– p.3/25
What is a polytope?
•
Def: The convex hull of a set A is the intersection
of all convex sets containing A; ie, the smallest
convex set containing A.
•
Def: A polytope is a convex hull of a finite
number of points.
•
Ex:
Set of Points
Polytope
– p.3/25
What is a selfatope?
•
Def: Selfatope - smooth, lattice polytope with
lattice-free edges!
A selfatope in R2 is called a selfagon.
– p.4/25
What is a selfatope?
•
Def: Selfatope - smooth, lattice polytope with
lattice-free edges!
A selfatope in R2 is called a selfagon.
•
Def: Lattice Polytope - a polytope with
integer valued vertices
– p.4/25
What is a selfatope?
•
Def: Selfatope - smooth, lattice polytope with
lattice-free edges!
A selfatope in R2 is called a selfagon.
•
•
Def: Lattice Polytope - a polytope with
integer valued vertices
Def: Lattice-free Edges - no lattice points on
an edge between vertices
– p.4/25
Defining Smooth
•
Def: P ∈ Rn - lattice polytope
v vertex in P
wi first lattice point along i-th edge incident to v
– p.5/25
Defining Smooth
•
•
Def: P ∈ Rn - lattice polytope
v vertex in P
wi first lattice point along i-th edge incident to v
P is smooth if for every v ∈ P
{wi − v} forms a Z-basis for Zn
– p.5/25
Defining Smooth
•
•
•
Def: P ∈ Rn - lattice polytope
v vertex in P
wi first lattice point along i-th edge incident to v
P is smooth if for every v ∈ P
{wi − v} forms a Z-basis for Zn
ie
w − v 1
.. . = ±1.
wk − v – p.5/25
Example of Smooth Polytope
(0, 1)
(0, 0)
(1, 0)
˛ ˛
˛
˛ ˛
˛
˛(1, 0) − (0, 0)˛ ˛1
˛=˛
˛
˛ ˛
˛
˛(0, 1) − (0, 0)˛ ˛0
˛ ˛
˛
˛ ˛
˛
˛(0, 0) − (1, 0)˛ ˛−1
˛=˛
˛
˛ ˛
˛
˛(0, 1) − (1, 0)˛ ˛−1
˛ ˛
˛
˛ ˛
˛
˛(1, 0) − (0, 1)˛ ˛1
˛=˛
˛
˛ ˛
˛
˛(0, 0) − (0, 1)˛ ˛0
˛
˛
0˛
˛=1
˛
1˛
˛
˛
0˛
˛ = −1
˛
1˛
˛
˛
−1˛
˛ = −1
˛
−1˛
– p.6/25
Questions
•
Given a particular n, can you construct a selfagon
with n edges?
– p.7/25
Questions
•
•
Given a particular n, can you construct a selfagon
with n edges?
Given two selfagons with n edges, are they
equivalent?
– p.7/25
Outline of Presentation
•
Algorithm for constructing n-gon, 2 | n, 4 - n
– p.8/25
Outline of Presentation
•
Algorithm for constructing n-gon, 2 | n, 4 - n
•
Algorithm for constructing n-gon, 4 | n
– p.8/25
Outline of Presentation
•
Algorithm for constructing n-gon, 2 | n, 4 - n
•
Algorithm for constructing n-gon, 4 | n
•
Algorithm for constructing n-gon, 2 | n
– p.8/25
Outline of Presentation
•
Algorithm for constructing n-gon, 2 | n, 4 - n
•
Algorithm for constructing n-gon, 4 | n
•
Algorithm for constructing n-gon, 2 | n
• equivalence to Lyzinski Algorithm
– p.8/25
Algorithm 1
Algorithm for n-gon, 2 | n, 4 - n
•
v0 = (0, 0)
•
v1 = (0, 1)
•
vi = vi−1 + (1, n−2
4 − i + 2), 2 ≤ i ≤
•
n+2 .
Reflect about y = x and y = −(x − x n−2
)
+
y
4
4
n+2
4
– p.9/25
Algorithm 1 - 14-gon
Ex:
•
v0 = (0, 0)
•
v1 = (0, 1)
n+2
4 = 4 ⇒ compute v2 , v3 , and v4
•
v2 = v1 + (1, 3) = (1, 4)
•
v3 = v2 + (1, 2) = (2, 6)
•
v4 = v3 + (1, 1) = (3, 7)
Reflect about y = x and y = −x + 9.
•
v4
v
3
v
2
v
1
v
0
– p.10/25
Algorithm 2
Algorithm for n-gon, 4 | n
•
v0 = (0, 0)
•
v1 = (0, 1)
•
vi = vi−1 + (1, n4 + 2 − i), 2 ≤ i ≤
•
vi = vi−1 + (i − n4 , 1),
•
v n2 = v n−2
+
(1,
0).
2
•
Reflect about y = 12 y n2 , x = 12 x n2 .
n+8
4
≤i≤
n+4
4
n−2
2
– p.11/25
Algorithm 2 - 12-gon
Ex:
•
v0 = (0, 0)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
v0 = (0, 0)
v1 = (0, 1)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
•
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
v3 = v2 + (1, 2) = (2, 6)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
•
•
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
v3 = v2 + (1, 2) = (2, 6)
v4 = v3 + (1, 1) = (3, 7)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
•
•
•
n−2
2
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
v3 = v2 + (1, 2) = (2, 6)
v4 = v3 + (1, 1) = (3, 7)
= 5 ⇒ use vi = vi−1 + (i − 3, 1) for v5
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
•
•
•
n−2
2
•
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
v3 = v2 + (1, 2) = (2, 6)
v4 = v3 + (1, 1) = (3, 7)
= 5 ⇒ use vi = vi−1 + (i − 3, 1) for v5
v5 = v4 + (2, 1) = (5, 8)
– p.12/25
Algorithm 2 - 12-gon
Ex:
•
•
•
v0 = (0, 0)
v1 = (0, 1)
n+4
4
•
•
•
•
n−2
2
•
•
= 4 ⇒ compute vi for i = 2, . . . , 4 using vi = vi−1 + (1, 5 − i)
v2 = v1 + (1, 3) = (1, 4)
v3 = v2 + (1, 2) = (2, 6)
v4 = v3 + (1, 1) = (3, 7)
= 5 ⇒ use vi = vi−1 + (i − 3, 1) for v5
v5 = v4 + (2, 1) = (5, 8)
v6 = v5 + (1, 0) = (6, 8)
– p.12/25
Algorithm 3
Algorithm for n-gon, n even
• v0 = (0, 0)
•
For i = 1, . . . , n−4
2 , let vi = vi−1 + (i − 1, i).
•
n−4 + (1, 1) .
v n−4
=
v
+1
2
2
•
n−4
v n−4
=
v
+
(1,
0).
+2
+1
2
2
•
Reflect about y = 12 y n2 , x = 12 x n2 .
– p.13/25
Algorithm 3 - 12-gon
i
vi
0 (0, 0)
1 (0, 1)
2 (1, 3)
3 (3, 6)
4 (6, 10)
5 (7, 11)
6 (8, 11)
The lines of reflection are y =
11
2 ,x
= 4.
– p.14/25
Comparison of our two 12-gons
•
Equivalent?
– p.15/25
Comparison of our two 12-gons
•
Equivalent?
• Def: polytopes P , Q, are equivalent if there
exists a linear transformation A ∈ GLn (Z)
such that AP = Q
– p.15/25
Comparison of our two 12-gons
•
•
Equivalent?
• Def: polytopes P , Q, are equivalent if there
exists a linear transformation A ∈ GLn (Z)
such that AP = Q
Not equivalent! - 33 lattice points (Algorithm 2)
vs. 32 lattice points (Algorithm 3)
– p.15/25
So Algorithm 3 and Algorithm 2 don’t always
produce equivalent selfagons.
However, Algorithm 3 and the Lyzinski Algorithm do.
– p.16/25
Lyzinski algorithm 4 | n
•
v0 = (0, 0)
– p.17/25
Lyzinski algorithm 4 | n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1), 1 ≤ i ≤
n
4
– p.17/25
Lyzinski algorithm 4 | n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1), 1 ≤ i ≤
•
n + (1, 0)
v n+4
=
v
4
4
n
4
– p.17/25
Lyzinski algorithm 4 | n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1), 1 ≤ i ≤
•
n + (1, 0)
v n+4
=
v
4
4
•
Reflect this segment about the line y =
1
y = x n+4
−
.
2
4
n
4
1
2
and
– p.17/25
Lyzinski Algorithm, 12-gon
i
0
1
2
3
4
vi
(0, 0)
(0, 1)
(1, 2)
(3, 3)
(4, 3)
– p.18/25
Lyzinski Algorithm, 2 | n, 4 - n
•
v0 = (0, 0)
– p.19/25
Lyzinski Algorithm, 2 | n, 4 - n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1) for 1 ≤ i ≤
n+2
4
– p.19/25
Lyzinski Algorithm, 2 | n, 4 - n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1) for 1 ≤ i ≤
•
n+2 + (1, 0)
v n+6
=
v
4
4
n+2
4
– p.19/25
Lyzinski Algorithm, 2 | n, 4 - n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1) for 1 ≤ i ≤
•
n+2 + (1, 0)
v n+6
=
v
4
4
•
vj = vj−1 + ( n2 + 1 − j, −1),
n+10
4
n+2
4
≤j≤
n
2
– p.19/25
Lyzinski Algorithm, 2 | n, 4 - n
•
v0 = (0, 0)
•
vi = vi−1 + (i − 1, 1) for 1 ≤ i ≤
•
n+2 + (1, 0)
v n+6
=
v
4
4
•
vj = vj−1 + ( n2 + 1 − j, −1),
•
Rotate this segment to complete the selfagon.
n+10
4
n+2
4
≤j≤
n
2
– p.19/25
Lyzinski Algorithm, 14-gon
i
vi
0 (0, 0)
1 (0, 1)
2 (1, 2)
3 (3, 3)
4 (6, 4)
5 (7, 4)
6 (9, 3)
7 (10, 2)
– p.20/25
Equivalence of Algorithms
P - Lyzinski selfagon, Q Algorithm 3 selfagon
Sketch of proof:
• want to find linear trans. A s.t. AP = Q
– p.21/25
Equivalence of Algorithms
P - Lyzinski selfagon, Q Algorithm 3 selfagon
Sketch of proof:
• want to find linear trans. A s.t. AP = Q
• problem - to which vertices in Q can we map a
given vertex in P and find this A?
– p.21/25
Equivalence of Algorithms
P - Lyzinski selfagon, Q Algorithm 3 selfagon
Sketch of proof:
• want to find linear trans. A s.t. AP = Q
• problem - to which vertices in Q can we map a
given vertex in P and find this A?
• use inner normal fans to solve this problem
– p.21/25
Inner Normal Fan
Example of Inner normal fan of polytope:
Thm (Fulton)ri ray of inner normal fan
ai ri = ri−1 + ri+1 ,
ai constant, invariant under linear transformation
– p.22/25
Equivalence of Algorithms
Sketch of proof, ctd:
• Consider inner normal fans of the two selfagons.
– p.23/25
Equivalence of Algorithms
Sketch of proof, ctd:
• Consider inner normal fans of the two selfagons.
• Determine linear transformation B between
fans, using the invariants ai to determine
which rays in the first fan map to which rays
in the second fan.
– p.23/25
Equivalence of Algorithms
Sketch of proof, ctd:
• Consider inner normal fans of the two selfagons.
• Determine linear transformation B between
fans, using the invariants ai to determine
which rays in the first fan map to which rays
in the second fan.
• Use that A = (B −1 )T to find A, the
transformation between the selfagons.
– p.23/25
Equivalence of Algorithms
We find that transformations between P generated by
Lyzinski Alg. and Q generated by 3rd Alg is:
n−8 1
4
• For n-gons with 4 | n, A =
n−4 .
1 4
– p.24/25
Equivalence of Algorithms
We find that transformations between P generated by
Lyzinski Alg. and Q generated by 3rd Alg is:
n−8 1
4
• For n-gons with 4 | n, A =
n−4 .
1 4
•
For n-gons with 2 | n, 4 - n,
n−10
−1 − 4
A=
.
n−6
−1 − 4
– p.24/25
Acknowledgements
Thank you to:
• Dr. Jessica Sidman
• Dr. Margaret Robinson
• Fellow REU participants, especially Joanna Miles
for her help with Prosper
• NSF, for funding this REU
– p.25/25