Macaulay2 » Documentation
Packages » Triangulations :: bistellarFlip
next | previous | forward | backward | up | index | toc

bistellarFlip -- perform a bistellar flip on a triangulation

Description

A circuit on $d{+}1$ points admits two triangulations of its convex hull: $T_-$, omitting each vertex listed in neg, and $T_+$, omitting each vertex listed in pos. Exactly one of these (say $T_-$) sits inside $T$, supported on a common link $L$; the bistellar flip replaces $L \star T_-$ with $L \star T_+$.

If neither side has a common link in $T$ -- for example, the simplices of one side appear with mismatched links, or one side is only partially present -- the flip is undefined and this returns null.

i1 : A = transpose matrix {{0,3},{0,1},{-1,-1},{1,-1},{-4,-2},{4,-2}}

o1 = | 0 0 -1 1  -4 4  |
     | 3 1 -1 -1 -2 -2 |

              2       6
o1 : Matrix ZZ  <-- ZZ
i2 : T = regularFineTriangulation A

o2 = triangulation {{0, 1, 2}, {0, 1, 3}, {0, 2, 4}, {0, 3, 5}, {1, 2, 3}, {2, 3, 4}, {3, 4, 5}}

o2 : Triangulation
i3 : cs = flipCandidates T

o3 = {{{1}, {0, 2, 3}}, {{1, 4}, {0, 2}}, {{1, 5}, {0, 3}}, {{2}, {0, 3, 4}},
     ------------------------------------------------------------------------
     {{2}, {1, 3, 4}}, {{3}, {0, 4, 5}}, {{3, 4}, {2, 5}}}

o3 : List
i4 : T' = bistellarFlip(T, cs#0)

o4 = triangulation {{0, 2, 3}, {0, 2, 4}, {0, 3, 5}, {2, 3, 4}, {3, 4, 5}}

o4 : Triangulation
i5 : max T'

o5 = {{0, 2, 3}, {0, 2, 4}, {0, 3, 5}, {2, 3, 4}, {3, 4, 5}}

o5 : List
i6 : isWellDefined T'

o6 = true

Many candidate circuits returned by flipCandidates are not flippable in any given $T$; those return null.

i7 : for c in cs list bistellarFlip(T, c)

o7 = {triangulation {{0, 2, 3}, {0, 2, 4}, {0, 3, 5}, {2, 3, 4}, {3, 4, 5}},
     ------------------------------------------------------------------------
     triangulation {{0, 1, 3}, {0, 1, 4}, {0, 3, 5}, {1, 2, 3}, {1, 2, 4},
     ------------------------------------------------------------------------
     {2, 3, 4}, {3, 4, 5}}, triangulation {{0, 1, 2}, {0, 1, 5}, {0, 2, 4},
     ------------------------------------------------------------------------
     {1, 2, 3}, {1, 3, 5}, {2, 3, 4}, {3, 4, 5}}, , , , triangulation {{0, 1,
     ------------------------------------------------------------------------
     2}, {0, 1, 3}, {0, 2, 4}, {0, 3, 5}, {1, 2, 3}, {2, 3, 5}, {2, 4, 5}}}

o7 : List

See also

Ways to use bistellarFlip:

  • bistellarFlip(List,List)
  • bistellarFlip(Triangulation,List)

For the programmer

The object bistellarFlip is a method function.


The source of this document is in /build/reproducible-path/macaulay2-1.26.06+ds/M2/Macaulay2/packages/Triangulations.m2:2103:0.