Counting Triangulations and other Crossing-free Structures via Onion Layers
Abstract
Let be a set of points in the plane. A crossing-free structure on is a plane graph with vertex set . Examples of crossing-free structures include triangulations of , spanning cycles of , also known as polygonalizations of , among others. In this paper we develop a general technique for computing the number of crossing-free structures of an input set . We apply the technique to obtain algorithms for computing the number of triangulations, matchings, and spanning cycles of . The running time of our algorithms is upper bounded by , where is the number of onion layers of . In particular, for our algorithms run in polynomial time. In addition, we show that our algorithm for counting triangulations is never slower than , even when . Given that there are several well-studied configurations of points with at least triangulations, and some even with triangulations, our algorithm asymptotically outperforms any enumeration algorithm for such instances. In fact, it is widely believed that any set of points must have at least triangulations. If this is true, then our algorithm is strictly sub-linear in the number of triangulations counted. We also show that our techniques are general enough to solve the "Restricted-Triangulation-Counting-Problem", which we prove to be -hard in the parameter . This implies a "no free lunch" result: In order to be fixed-parameter tractable, our general algorithm must rely on additional properties that are specific to the considered class of structures.
Keywords
Cite
@article{arxiv.1312.4628,
title = {Counting Triangulations and other Crossing-free Structures via Onion Layers},
author = {Victor Alvarez and Karl Bringmann and Radu Curticapean and Saurabh Ray},
journal= {arXiv preprint arXiv:1312.4628},
year = {2013}
}
Comments
33 pages, 10 figures, 9 tables. A preliminary version appeared at SoCG 2012. This version contains experimental results comparing algorithms for counting triangulations. This paper has been submitted to a journal