Jekyll2020-04-01T04:49:01+00:00https://11011110.github.io/blog/feed.xml11011110Geometry, graphs, algorithms, and moreDavid EppsteinLinkage2020-03-31T21:25:00+00:002020-03-31T21:25:00+00:00https://11011110.github.io/blog/2020/03/31/linkage<p>Still at home, hoping the coffee arrives tomorrow as scheduled.</p>
<ul>
<li>
<p><a href="https://twitter.com/scienceshitpost">Science diagrams that look like shitposts</a> (<a href="https://mathstodon.xyz/@11011110/103834852903279134"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://www.metafilter.com/186088/Science-diagrams-that-look-like-shitposts">via</a>).</p>
</li>
<li>
<p><a href="https://www.cambridge.org/core/what-we-publish/textbooks">All Cambridge University Press textbooks are free-to-read until May</a> (<a href="https://mathstodon.xyz/@JordiGH/103841002082854377"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p><a href="https://www.rweber.net/projects/non-gray-grayscales/">Non-gray grayscales</a> (<a href="https://mathstodon.xyz/@11011110/103848490584549963"><script type="math/tex">\mathbb{M}</script></a>). Rebecca Weber finds a method to produce off-gray colors in a range of lightness with visually-matching hues and saturations. It’s not just a matter of plotting a straight line in HSL colorspace. (Found while looking for more information on her book <em>Computability Theory</em>, but nowadays there isn’t much actual math on her website.)</p>
</li>
<li>
<p><a href="https://arxiv.org/abs/2003.08456">Convex hulls of random order types</a> (<a href="https://mathstodon.xyz/@11011110/103853512504928724"><script type="math/tex">\mathbb{M}</script></a>). This is one of my favorite papers in the list accepted to SoCG 2020, which now will be online-only. Point sets whose order type is uniformly random are different from randomly drawn points, and harder to study. Xavier Goaoc and Emo Welzl observe that the projective transformations of a random order type are equally likely, and use this idea to prove that these point sets typically have very small convex hulls.</p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Greedy_coloring">Greedy coloring</a> (<a href="https://mathstodon.xyz/@11011110/103856462402785120"><script type="math/tex">\mathbb{M}</script></a>). Now a Good Article on Wikipedia.</p>
</li>
<li>
<p><a href="https://www.theguardian.com/science/2019/oct/21/can-you-solve-it-the-four-points-two-distances-problem">The four points, two distances problem</a> (<a href="https://mathstodon.xyz/@11011110/103864906436854951"><script type="math/tex">\mathbb{M}</script></a>). Can you find all of the ways of arranging four distinct points in the plane so that they form only two distances? The link is not a spoiler but it has a separate link to the solution. “Nearly everyone misses at least one” says Peter Winkler; can you guess the one I missed?</p>
</li>
<li>
<p><a href="https://mastodon.social/@sarielhp/103853624792571796">Sariel Har-Peled makes some suggestions for online conferences</a>: all papers above threshold should be accepted, rather than imposing artificial acceptance rates, and authors should provide versions of their talks in multiple lengths.</p>
</li>
<li>
<p><a href="https://community.wolfram.com/groups/-/m/t/1904335">Minimal-stick examples of the knots <script type="math/tex">9_{35}</script>, <script type="math/tex">9_{39}</script>, <script type="math/tex">9_{43}</script>, <script type="math/tex">9_{45}</script>, and <script type="math/tex">9_{48}</script></a> (<a href="https://mathstodon.xyz/@shonk/103868182994018206"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p>Two linocut interpretations of a rhombic dodecahedron by the same artist, Josh Millard: <a href="https://mastodon.social/@joshmillard/103876129272051551">abstract</a> and <a href="https://mastodon.social/@joshmillard/103881150094999086">physical</a> <span style="white-space:nowrap">(<a href="https://mathstodon.xyz/@11011110/103887968806441789"><script type="math/tex">\mathbb{M}</script></a>).</span></p>
</li>
<li>
<p>Three recent “Did you know?” (<a href="https://mathstodon.xyz/@11011110/103893665729668173"><script type="math/tex">\mathbb{M}</script></a>):</p>
<ul>
<li>
<p>… that <a href="https://en.wikipedia.org/wiki/Chiara_Daraio">Chiara Daraio</a> used Newton’s cradle to create sound bullets, and ball bearing filled walls to create one-way sound barriers?</p>
</li>
<li>
<p>… that <a href="https://en.wikipedia.org/wiki/Heronian_tetrahedron">a tetrahedron with integer edge lengths, face areas, and volume</a> can be given integer coordinates?</p>
</li>
<li>
<p>… that former college basketball star <a href="https://en.wikipedia.org/wiki/Amy_Langville">Amy Langville</a> is an expert in ranking systems, and has applied her ranking expertise to basketball bracketology?</p>
</li>
</ul>
</li>
<li>
<p><a href="http://www.mi.sanu.ac.rs/vismath/mart.htm">VisMath MathArt</a> (<a href="https://mathstodon.xyz/@11011110/103898916402221482"><script type="math/tex">\mathbb{M}</script></a>). Many linked galleries of images of mathematical art, from the 1990s-style web (occasional broken links and all).</p>
</li>
<li>
<p><a href="https://blog.computationalcomplexity.org/2020/03/robin-thomas.html">Sadly, graph theorist Robin Thomas has died</a> (<a href="https://mathstodon.xyz/@11011110/103901957462987629"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p><a href="https://www.youtube.com/watch?v=IK7nBOLYzdE">What happens when half a cellular automaton runs Conway’s Game of Life and the other half runs a rolling version of Rule 30 pushing chaos across the border</a> (<a href="https://mathstodon.xyz/@11011110/103915202241542224"><script type="math/tex">\mathbb{M}</script></a>)? I wish I could see a larger scale of time and space to get an idea of how far the effects penetrate. If the boundary emitted gliders at a constant rate they’d collide far away in a form of ballistic annihilation but the boundary junk and glider-collision junk makes it more complicated.</p>
</li>
<li>
<p><a href="https://mathoverflow.net/q/356220/440">Monotone subsets of uncountable plane sets</a> (<a href="https://mathstodon.xyz/@11011110/103919594138003386"><script type="math/tex">\mathbb{M}</script></a>). I ask on MathOverflow about infinite generalizations of the Erdős–Szekeres theorem on the existence of square-root-sized monotone subsets of finite sets of points in the plane.</p>
</li>
</ul>David EppsteinStill at home, hoping the coffee arrives tomorrow as scheduled.Backyard sunlight2020-03-29T14:34:00+00:002020-03-29T14:34:00+00:00https://11011110.github.io/blog/2020/03/29/backyard-sunlight<p>A few photos from my garden:</p>
<div><table style="margin-left:auto;margin-right:auto">
<tr style="text-align:center;vertical-align:middle">
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/backyard/CrissCrossShadow.html"><img src="http://www.ics.uci.edu/~eppstein/pix/backyard/CrissCrossShadow-m.jpg" alt="Criss cross shadow" width="315" style="border-style:solid;border-color:black;" /></a></td>
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/backyard/DiagonalRosemary.html"><img src="http://www.ics.uci.edu/~eppstein/pix/backyard/DiagonalRosemary-m.jpg" alt="Diagonal rosemary" width="378" style="border-style:solid;border-color:black;" /></a></td>
</tr><tr style="text-align:center;vertical-align:middle">
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/backyard/RockAndTreeShadow.html"><img src="http://www.ics.uci.edu/~eppstein/pix/backyard/RockAndTreeShadow-m.jpg" alt="Rock and tree shadow" width="350" style="border-style:solid;border-color:black;" /></a></td>
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/backyard/TruffulaTree.html"><img src="http://www.ics.uci.edu/~eppstein/pix/backyard/TruffulaTree-m.jpg" alt="Truffula tree" width="252" style="border-style:solid;border-color:black;" /></a></td>
</tr></table></div>
<p>(<a href="https://mathstodon.xyz/@11011110/103908517022371423">Discuss on Mastodon</a>)</p>David EppsteinA few photos from my garden:UCI Ecological Preserve2020-03-22T15:28:00+00:002020-03-22T15:28:00+00:00https://11011110.github.io/blog/2020/03/22/uci-ecological-preserve<p>The <a href="http://ecopreserve.ucnrs.org/">UCI Ecological Preserve</a> is a 60-acre patch of <a href="https://en.wikipedia.org/wiki/Coastal_sage_scrub">coastal sage scrub</a>, adjoining <a href="https://en.wikipedia.org/wiki/University_Hills,_Irvine">the housing complex in which I live</a>.</p>
<p>Like most of the rest of the world, I’m stuck at home for an indefinite duration, but the level of lockdown that we’re under allows us to go for walks outside, and like many of my neighbors (keeping a safe distance from each other) I took advantage of the opportunity to do so yesterday in the preserve. It was a gorgeous day, with very clear air from the recent rains: so clear that I could see individual buildings in downtown Los Angeles, 40 miles away.</p>
<p>I brought my camera along, but chose to focus on the nearby brush rather than the more distant views. Here’s one of my shots:</p>
<p style="text-align:center"><img src="https://www.ics.uci.edu/~eppstein/pix/uciep/6-m.jpg" alt="UCI Ecological Preserve" style="border-style:solid;border-color:black;" /></p>
<p>The rest are in <a href="https://www.ics.uci.edu/~eppstein/pix/uciep/index.html">my online gallery</a>.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103869119505106054">Discuss on Mastodon</a>)</p>David EppsteinThe UCI Ecological Preserve is a 60-acre patch of coastal sage scrub, adjoining the housing complex in which I live.Stay-at-home linkage2020-03-15T16:40:00+00:002020-03-15T16:40:00+00:00https://11011110.github.io/blog/2020/03/15/stay-home-linkage<p>Looks like we’ll all be seeing a long time at home with little to do but go online. So here is my usual update of links I recently found interesting. (I’m deliberately not linking Coronavirus information, despite its importance, both because I’m not an expert and have neither useful original opinions to contribute nor adequate filters between information and misinformation, and because I suspect that many people’s mental health depends on not getting overloaded with that stuff while there’s so little to do but staying isolated and avoiding becoming part of the problem).</p>
<ul>
<li>
<p><a href="https://mathstodon.xyz/@11011110/103750490648260310">Claim: Any partition of a unit square into <script type="math/tex">k</script> rectangles has an axis-parallel line crossing a subset of rectangles with area <script type="math/tex">\Omega(1/\sqrt{k})</script></a>. Proof: Rectangles of area <script type="math/tex">\lt 1/2k</script> cover less than half the square, so larger ones cover at least half. Random axis-parallel lines cross rectangles with probability proportional to perimeter, <script type="math/tex">\Omega(1/\sqrt{k})</script> for large rectangles. Some line crosses at least the expected area: the sum over rectangles of area × probability.</p>
</li>
<li>
<p>Mary Beard is “Britain’s best known classicist, a Cambridge don with formidable intellect and a knack for getting people interested in all things ancient”. She was also a nominee for trustee of the British Museum, but (in the latest iteration of politicians sticking their nose where it isn’t wanted or needed) <a href="https://www.theguardian.com/books/2020/mar/01/british-museum-put-mary-beard-on-the-board-despite-downing-st-veto">was vetoed by the Tory government for opposing Brexit</a> (<a href="https://mathstodon.xyz/@11011110/103756819167366612"><script type="math/tex">\mathbb{M}</script></a>). Result: the museum will use one of the slots it controls to appoint her despite the veto.</p>
</li>
<li>
<p>If you really want to see some links I posted on US politics related to the Coronavirus, a couple weeks before we realized how immediate the problem was, see <a href="https://mathstodon.xyz/@11011110/103763260041701547">here</a>.</p>
</li>
<li>
<p><a href="https://emathgroup.github.io/blog/orchard-planting-problem">A Chinese blog on new solutions to the orchard planting problem with four trees per line</a> (<a href="https://mathstodon.xyz/@11011110/103769258677244712"><script type="math/tex">\mathbb{M}</script></a>, <a href="http://www.mathpuzzle.com/">via</a>, <a href="https://en.wikipedia.org/wiki/Orchard-planting_problem">see also</a>). It seems to be quite readable through Google translate.</p>
</li>
<li>
<p><a href="https://blog.cloudflare.com/when-bloom-filters-dont-bloom/">When Bloom filters don’t bloom</a> (<a href="https://mathstodon.xyz/@11011110/103774986303898695"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=22463979">via</a>). A cautionary tale by Marek Majkowski of how when your filter doesn’t fit into cache it can actually slow you down instead of speeding you up.</p>
</li>
<li>
<p><a href="https://www.johndcook.com/blog/2020/02/27/numerical-heron/">Computing the area of a thin triangle</a> (<a href="https://mathstodon.xyz/@jsiehler/103765201263486902"><script type="math/tex">\mathbb{M}</script></a>). How to avoid numerical accuracy issues when using Heron’s formula.</p>
</li>
<li>
<p><a href="https://www.theguardian.com/australia-news/2020/mar/08/melbourne-professor-quits-after-health-department-pressures-her-over-data-breach">Australian cryptographer Vanessa Teague resigns from her University of Melbourne professorship</a> (<a href="https://mathstodon.xyz/@11011110/103785134816639696"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=22515193">via</a>), in protest of the government refusal to notify citizens whose medical data was breached, pressure to silence her over the discovery of the breach, and efforts to prevent her from continuing to study the problem. See also <a href="https://twitter.com/VTeagueAus/status/1233241830994481152">Teague’s twitter post</a> and <a href="https://www.righttoknow.org.au/request/correspondence_on_re_identificat">government-university correspondence</a>.</p>
</li>
<li>
<p><a href="https://arxiv.org/abs/2003.04280">Adjacency labelling for planar graphs (and beyond)</a> (<a href="https://mathstodon.xyz/@patmorin/103796330052092318"><script type="math/tex">\mathbb{M}</script></a>). You can assign labels to the vertices of a planar graph, with <script type="math/tex">\bigl(1+o(1)\bigr)\log_2 n</script> bits per label, and test whether vertices are adjacent by looking over their label. This implies also that planar graphs are induced subgraphs of <a href="https://en.wikipedia.org/wiki/Universal_graph">universal graphs</a> of near-linear size. New preprint by Dujmović, Esperet, Joret, Gavoille, Micek, and Morin.</p>
</li>
<li>
<p><a href="https://terrytao.wordpress.com/2020/03/10/options-for-giving-math-talks-and-lectures-online/">Options for giving math talks and lectures online</a> (<a href="https://mathstodon.xyz/@11011110/103800856267350730"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://erikdemaine.org/classes/recording/">see also</a>). Now that we have to. Best choices for me at this point are looking like YuJa and Zoom.</p>
</li>
<li>
<p><a href="https://www.wunderlist.com/blog/join-us-on-our-new-journey/">My favorite shared to-do-list, Wunderlist, is going away</a> (<a href="https://mathstodon.xyz/@11011110/103810987800264328"><script type="math/tex">\mathbb{M}</script></a>) and being replaced by a Microsoft thing requiring a Microsoft account that I don’t want or have. All I want is multiple to-do lists, with or without deadlines; ability to share individual lists with other users; OS X, iPhone, and Android integration. Anyone have suggestions for replacements?</p>
</li>
<li>
<p><a href="https://mathstodon.xyz/@jsiehler/103810743052286323">Pair up!</a> @jsiehler posts an animation of a result from <a href="https://doi.org/10.4153%2FCMB-1959-013-x">Lambek and Moser (1959)</a>: the partition of the non-negative integers into <a href="https://en.wikipedia.org/wiki/Odious_number">odious numbers</a> and <a href="https://en.wikipedia.org/wiki/Evil_number">evil numbers</a> is uniquely determined by the property that the two subsets have equal multisets of pairwise sums.</p>
</li>
<li>
<p><a href="http://bit-player.org/2020/mathjax-turns-3-0">Brian Hayes converts to MathJax 3.0</a> (<a href="https://mathstodon.xyz/@11011110/103825076990194154"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=22582343">see also</a>). With an interesting discussion at the end about how, after initially seeming like a hack and a patchover of the failure of more principled solutions like MathML to actually work, browser-side MathJax is starting to seem like the right way to do things after all.</p>
</li>
<li>
<p><a href="https://mathstodon.xyz/@kimreece/103812593467637467">People with “and” in their names cause problems in BibTeX</a>. And they <a href="https://en.wikipedia.org/wiki/Alex_And">actually exist</a>. Probably you can work around it using extra curly brackets in the name.</p>
</li>
</ul>David EppsteinLooks like we’ll all be seeing a long time at home with little to do but go online. So here is my usual update of links I recently found interesting. (I’m deliberately not linking Coronavirus information, despite its importance, both because I’m not an expert and have neither useful original opinions to contribute nor adequate filters between information and misinformation, and because I suspect that many people’s mental health depends on not getting overloaded with that stuff while there’s so little to do but staying isolated and avoiding becoming part of the problem).More on uniqueness in Sudoku2020-03-11T00:06:00+00:002020-03-11T00:06:00+00:00https://11011110.github.io/blog/2020/03/11/more-uniqueness-sudoku<p><a href="/blog/2005/07/20/updated-python-library.html">My first post on this blog</a>, lo these nearly 15 years ago, discussed a program I had written to try to solve Sudoku puzzles deductively (rather than by the easier computational method, backtracking), with the goal of being able to automatically grade the puzzles and automatically generate explanations for how to solve a given puzzle. And a few months later I posted again, on <a href="/blog/2005/10/15/assuming-uniqueness-in.html">deduction rules that take advantage of the assumption that a puzzle has a unique solution</a>, by ruling out choices that would cause any solution consistent with them to become non-unique. Since then, that part of my solver has been relatively stable, although I have added other rules for <a href="/blog/2012/02/23/solving-single-digit-sudoku.html">Nishio</a> and <a href="/blog/2009/04/26/sudoku-and-2sat.html">2SAT</a> and posted here about <a href="/blog/2019/07/28/any-order-puzzle.html">more general uniqueness deduction rules in map-coloring puzzles</a>.</p>
<p>I’ve also occasionally been using my program to generate puzzles for me to work on, and today it found an interesting test case, a puzzle that it thought would be much more difficult than it turned out to be for me. This mis-rating happened because the uniqueness deduction rules I’m using in my own deductions are stronger than the ones in my program (although some of its other rules are stronger than I typically apply myself). In its initial state, the puzzle looks like:</p>
<p style="text-align:center"><img src="/blog/assets/2020/ambig-sudoku-givens.svg" alt="Sudoku puzzle" /></p>
<p>My program tells me that it’s at the second highest level of difficulty that it knows about: it has to resort to using 2SAT, but it can successfully solve it that way. (The highest level is for puzzles where it is forced to use backtracking.) Usually, for me, puzzles at that level require me to use written notes to keep track of the deductions, rather than doing it all in my head, but not this time. Using more-or-less standard reasoning, one can fill in the cells of the puzzle to reach the state:</p>
<p style="text-align:center"><img src="/blog/assets/2020/ambig-sudoku-partial.svg" alt="Partially solved Sudoku puzzle" /></p>
<p>This is where my program gets stuck and has to resort to more powerful deduction rules. But as a human solving this puzzle, here is what I see: In row 3, the two empty cells must contain the pair of digits 3 and 5. In the center right block of nine cells, the two empty cells must again be 3 and 5. And in the center block of cells, the 5 digit is confined to three cells aligned with those two pairs of empty cells. If the 3 digit were also confined to the same three cells in the center block, it and the five would have to occupy the two diagonally aligned cells out of the three, because otherwise they would line up and prevent one of the other pairs of 3-5 cells from having any value. But then the 3-5 cells in row 3, the center block, and column 7 would form a closed system (shown by the red squares below): nothing else outside those cells could affect which of those six cells contains 3, and which contains 5. Within that closed system, there are two solutions, obtained from each other by swapping the locations of the 3 and the 5. But that would violate the assumption of uniqueness.</p>
<p style="text-align:center"><img src="/blog/assets/2020/ambig-sudoku-closed.svg" alt="Closed system of cells in a partially solved Sudoku puzzle" /></p>
<p>Even if the 7 in the center cell weren’t there, the same reasoning would apply. Since this closed system with a non-unique solution would happen automatically if we confine the digit 3 to the same three center-block cells as the digit 5, the digit 3 must be elsewhere in the center block, which can only mean that it is in column 4. Once we make this deduction, the rest of the puzzle falls into place.</p>
<p>My program only has built into it a couple of ad-hoc rules to prevent closed systems of four cells with two solutions, and it misses the one in this example because it involves six cells. It’s making me think that I need a more general description of the possible closed systems (at least the ones involving only two digit values, like this), in order to match the deductions I’m making by hand and make my program’s difficulty estimates more accurate.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103803219892010865">Discuss on Mastodon</a>)</p>David EppsteinMy first post on this blog, lo these nearly 15 years ago, discussed a program I had written to try to solve Sudoku puzzles deductively (rather than by the easier computational method, backtracking), with the goal of being able to automatically grade the puzzles and automatically generate explanations for how to solve a given puzzle. And a few months later I posted again, on deduction rules that take advantage of the assumption that a puzzle has a unique solution, by ruling out choices that would cause any solution consistent with them to become non-unique. Since then, that part of my solver has been relatively stable, although I have added other rules for Nishio and 2SAT and posted here about more general uniqueness deduction rules in map-coloring puzzles.Mathematics books by women2020-03-08T11:40:00+00:002020-03-08T11:40:00+00:00https://11011110.github.io/blog/2020/03/08/mathematics-books-women<p>It’s International Women’s Day, and <em>The Aperiodical</em> has a new piece up on “<a href="https://aperiodical.com/2020/03/iwd-2020-books-about-maths-by-women/">Books about Maths by Women</a>”. One of my own projects for the last few weeks has been to create Wikipedia articles on noteworthy mathematics books, and so far roughly half of the creations have included at least one woman among their authors. They are (alphabetical by title):</p>
<ul>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/The_Calculating_Machines">The Calculating Machines</a></em> (1992), by Ernst Martin, translated and edited by <a href="https://en.wikipedia.org/wiki/Peggy_A._Kidwell">Peggy A. Kidwell</a> and Michael R. Williams. A history of pre-World-War-II mechanical calculators.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Closing_the_Gap:_The_Quest_to_Understand_Prime_Numbers">Closing the Gap: The Quest to Understand Prime Numbers</a></em> (2017), by <a href="https://en.wikipedia.org/wiki/Vicky_Neale">Vicky Neale</a>. History and recent developments in the twin prime conjecture.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Combinatorics_of_Finite_Geometries">Combinatorics of Finite Geometries</a></em> (1986; 2nd ed. 1997), by <a href="https://en.wikipedia.org/wiki/Lynn_Batten">Lynn Batten</a>. An undergraduate textbook on finite projective planes, finite affine planes, and other finite geometries.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Complexities:_Women_in_Mathematics">Complexities: Women in Mathematics</a></em> (2005), edited by <a href="https://en.wikipedia.org/wiki/Bettye_Anne_Case">Bettye Anne Case</a> and <a href="https://en.wikipedia.org/wiki/Complexities:_Women_in_Mathematics">Anne M. Leggett</a>. A celebration of women in mathematics featuring the stories of over 80 women.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Crocheting_Adventures_with_Hyperbolic_Planes">Crocheting Adventures with Hyperbolic Planes</a></em> (2009; 2nd ed. 2018), by <a href="https://en.wikipedia.org/wiki/Daina_Taimina">Daina Taimina</a>. How to make hyperbolic surfaces out of crochet, and what we can learn mathematically from tactile interactions with these surfaces.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Difference_Equations:_From_Rabbits_to_Chaos">Difference Equations: From Rabbits to Chaos</a></em> (2005), by Paul Cull, <a href="https://en.wikipedia.org/wiki/Mary_Flahive">Mary Flahive</a>, and Robby Robson, an undergraduate textbook on finite difference equations, population dynamics, and related topics.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/A_Guide_to_the_Classification_Theorem_for_Compact_Surfaces">A Guide to the Classification Theorem for Compact Surfaces</a></em> (2013), by Jean Gallier and <a href="https://en.wikipedia.org/wiki/Dianna_Xu">Dianna Xu</a>. An exposition of the result that the topology of a two-dimensional surface can be completely described by its orientability, Euler characteristic, and number of punctures.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Introduction_to_Tropical_Geometry">Introduction to Tropical Geometry</a></em> (2015) by <a href="https://en.wikipedia.org/wiki/Diane_Maclagan">Diane Maclagan</a> and Bernd Sturmfels. What happens if you do algebraic geometry in an arithmetic where the two basic operations are addition and minimization, instead of multiplication and addition?</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Mathematics_in_Ancient_Egypt:_A_Contextual_History">Mathematics in Ancient Egypt: A Contextual History</a></em> (2016), by <a href="https://en.wikipedia.org/wiki/Annette_Imhausen">Annette Imhausen</a>. The length of time covered by this history is greater than the length of time since it happened. Its focus is on putting Egyptian mathematics into the context of the society of the times, rather than (as in earlier studies) trying to translate it into modern mathematical concepts and analyze the mathematical foundations of Egyptian calculational methods.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Pearls_in_Graph_Theory">Pearls in Graph Theory: A Comprehensive Introduction</a></em> (1990), by Gerhard Ringel and <a href="https://www.legacy.com/obituaries/skagitvalleyherald/obituary.aspx?n=nora-anne-hartsfield&pid=153284332&fhid=5497">Nora Hartsfield</a>. A collection of the authors’ favorite topics in graph theory, although not as comprehensive as the title makes out.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Poincar%C3%A9_and_the_Three-Body_Problem">Poincaré and the Three-Body Problem</a></em> (1997), by <a href="https://en.wikipedia.org/wiki/June_Barrow-Green">June Barrow-Green</a>. The history surrounding Poincaré’s work on the the three-body problem, which led to chaos theory, began a long dispute between mathematicians and astronomers over the convergence of series, and was a big part of Poincaré’s own fame.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Proofs_That_Really_Count">Proofs That Really Count: the Art of Combinatorial Proof</a></em> (2003), by Arthur Benjamin and <a href="https://en.wikipedia.org/wiki/Jennifer_Quinn">Jennifer Quinn</a>. An exposition of the concept of bijective proofs, in which one proves the equality of two integer formulas by showing that both count the same set of mathematical objects.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Quasicrystals_and_Geometry">Quasicrystals and Geometry</a></em> (1995), by <a href="https://en.wikipedia.org/wiki/Marjorie_Senechal">Marjorie Senechal</a>. An investigation of the relation between the mathematical properties of aperiodic tilings like the Penrose tiling, and physical quasicrystals whose X-ray diffraction patterns show systems of Bragg peaks with five-way symmetry.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Symmetry_in_Mechanics">Symmetry in Mechanics: A Gentle, Modern Introduction</a></em> (2001), by <a href="https://en.wikipedia.org/wiki/Stephanie_Singer">Stephanie Singer</a>. How to use symplectic geometry to reduce the solution of the two-body problem from twelve dimensions (three for the position and momentum of each body) to two, leading to an elegant derivation of Kepler’s laws of planetary motion.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Taking_Sudoku_Seriously">Taking Sudoku Seriously: The math behind the world’s most popular pencil puzzle</a></em> (2011), by Jason Rosenhouse and <a href="https://en.wikipedia.org/wiki/Laura_Taalman">Laura Taalman</a>. An exploration of various topics in mathematics related to Sudoku puzzles and their solution, including Latin squares, graph coloring, algorithms for solving systems of polynomials, and extremal combinatorics.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/De_numeris_triangularibus_et_inde_de_progressionibus_arithmeticis:_Magisteria_magna">Thomas Harriot’s Doctrine of Triangular Numbers</a></em> (2009), by Thomas Harriot, edited and translated by <a href="https://en.wikipedia.org/wiki/Janet_Beery">Janet Beery</a> and <a href="https://en.wikipedia.org/wiki/Jackie_Stedall">Jackie Stedall</a>. An important precursor to the invention of calculus by Newton, using finite differences instead of infinitesimal differences.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Treks_Into_Intuitive_Geometry">Treks into Intuitive Geometry: The World of Polygons and Polyhedra</a></em> (2015), by Jin Akiyama and Kiyoko Matsunaga. A Socratic dialogue on tessellations, polyhedra, polygonal dissections, and polyhedral unfoldings.</p>
</li>
<li>
<p><em><a href="https://en.wikipedia.org/wiki/Viewpoints:_Mathematical_Perspective_and_Fractal_Geometry_in_Art">Viewpoints: Mathematical Perspective and Fractal Geometry in Art</a></em> (2011), by Marc Frantz and <a href="https://en.wikipedia.org/wiki/Annalisa_Crannell">Annalisa Crannell</a>. An undergraduate general-education textbook on perspective geometry and fractal structure in art.</p>
</li>
</ul>
<p>There are many more I could include, but haven’t yet (including most of the <em>Aperiodical</em> list). Many of these books are award-winners, but to a large extent inclusion in this list is driven by my personal taste in books, so many of these are somewhat specialized rather than being general-audience books. But the main criterion for inclusion on Wikipedia is that everything must have multiple in-depth sources, and everything in the article must come from those sources. For books those sources are not the book itself, but (typically) published book reviews. The bare minimum is two reviews, but I’ve been aiming for books with at least four. So for instance I would have liked to include <em>Geometry: The Line and the Circle</em> (2019), by Maureen T. Carroll and Elyn Rykken, but I could find only <a href="https://www.maa.org/press/maa-reviews/geometry-the-line-and-the-circle">one review of it</a>, and that’s not enough. To all the book reviewers out there: your efforts are appreciated, and helpful.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103788964314558993">Discuss on Mastodon</a>)</p>David EppsteinIt’s International Women’s Day, and The Aperiodical has a new piece up on “Books about Maths by Women”. One of my own projects for the last few weeks has been to create Wikipedia articles on noteworthy mathematics books, and so far roughly half of the creations have included at least one woman among their authors. They are (alphabetical by title):Leap day linkage2020-02-29T14:46:00+00:002020-02-29T14:46:00+00:00https://11011110.github.io/blog/2020/02/29/leap-day-linkage<ul>
<li>
<p><a href="https://mathstodon.xyz/@jeffgerickson/103671508553971700">Jeff Erickson links</a> one of the first non-trivial <a href="https://en.wikipedia.org/wiki/Straight_skeleton">straight skeletons</a> (as a roof model), from <em>Kotirte Ebenen (Kotirte Projektionen) und deren Anwendung</em> by Gustav A. von Peschka (1877).</p>
</li>
<li>
<p><a href="https://math.unice.fr/~indira/Mygifs.html">Indira Lara Chatterji has some nice open-licensed animated gifs of concepts in low-dimensional geometry and topology</a> (<a href="https://mathstodon.xyz/@11011110/103684262226520136"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p><a href="https://harvardmagazine.com/2012/11/absolutely-beautiful">Geometric art of Morton C. Bradley, Jr.</a> (<a href="https://mathstodon.xyz/@11011110/103695425477296068"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://www.georgehart.com/rp/MortonBradley/Morton-Bradley.html">see also</a>). As <a href="https://joelcooper.wordpress.com/2012/06/21/geometric-art-of-morton-c-bradley-jr/">Joel Cooper writes</a>, “I was fascinated first by the complex yet harmonious geometry of these forms, but it is really the use of color that makes these sculptures so transcendent. These sculptures are really exercises in color theory in three dimensions.”</p>
</li>
<li>
<p><a href="https://rjlipton.wordpress.com/2020/02/01/subliminal-graph-duals/">Subliminal graph duals</a> and <a href="https://rjlipton.wordpress.com/2020/02/11/using-negative-nodes-to-count/">using negative nodes to count</a> (<a href="https://mathstodon.xyz/@11011110/103701104439329493"><script type="math/tex">\mathbb{M}</script></a>). These posts abstract a graph to a 2-polymatroid, the function that maps a subset of edges to the number of vertices it touches. This resembles matroid rank, but a single edge has rank 2. This leads to a notion of a dual, which usually does not come from a graph, with an interesting operation of “exploding” edges dual to edge deletion.</p>
</li>
<li>
<p>The latest <em>Notices</em> has profiles of mathematicians <a href="http://www.ams.org/journals/notices/202003/rnoti-p327.pdf">Fan Chung</a>, <a href="http://www.ams.org/journals/notices/202003/rnoti-p345.pdf">Olga Taussky-Todd</a>, and <a href="http://www.ams.org/journals/notices/202003/rnoti-p368.pdf">Dorothy Hoover</a> (<a href="https://mathstodon.xyz/@mathcination/103690730215482537"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p>My graph algorithm lectures on stable matching have shifted their terminology and metaphors to stable matching from stable marriage (outdated, sexist, heteronormative, potentially offensive, and not a good fit for the applications) but so far Wikipedia hasn’t. Maybe the ngram below explains why: there’s a base level of colloquial usage of “stable marriage” masking the popularity of “matching” in technical usage. Google Scholar shows a clearer picture: 3940 hits for “stable matching” since 2016, 2710 for “stable marriage”. (<a href="https://mathstodon.xyz/@11011110/103717212351898100"><script type="math/tex">\mathbb{M}</script></a>).</p>
<p style="text-align:center"><img src="/blog/assets/2020/stable-marriage-vs-matching.png" alt="Stable matching vs stable marriage Google ngram" /></p>
</li>
<li>
<p><a href="https://divisbyzero.com/2019/05/01/braidtiles/">Braid tiles</a> (<a href="https://mathstodon.xyz/@11011110/103723728540456919"><script type="math/tex">\mathbb{M}</script></a>). Print your own onto cardstock, cut out, and rearrange, for all your hands-on braid-group experimental-mathematics needs.</p>
</li>
<li>
<p><a href="https://gendergapinscience.files.wordpress.com/2020/02/final_report_20200204-1.pdf">Final report of the international project “A Global Approach to the Gender Gap in Mathematical, Computing, and Natural Sciences: How to Measure It, How to Reduce It?”</a> (<a href="https://mathstodon.xyz/@11011110/103729947676143732"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://euro-math-soc.eu/news/20/02/26/preliminary-report-project-global-approach-gender-gap-mathematical-computing-and">via</a>), including recommendations for instructors and organizations.</p>
</li>
<li>
<p><a href="https://www.vice.com/en_us/article/4agamm/the-worlds-second-largest-wikipedia-is-written-almost-entirely-by-one-bot">The world’s second largest Wikipedia is written almost entirely by one bot</a> (<a href="https://mathstodon.xyz/@11011110/103735065395757430"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=22403626">via</a>). The language is Cebuano, from the Philippines. Consensus on the English Wikipedia is that automatic translation and automatic content generation are not good enough, but the different languages of Wikipedia are run independently and have different standards from each other.</p>
</li>
<li>
<p>You can encode complex numbers as pairs of real numbers, their real and imaginary parts, and perform complex arithmetic using only real-number operations. But can you go the other way, and encode real numbers somehow using complex arithmetic? <a href="http://jdh.hamkins.org/the-real-numbers-are-not-interpretable-in-the-complex-field/">Joel David Hamkins gives a simple proof of the folklore result that the answer is no</a> (<a href="https://mathstodon.xyz/@11011110/103738094179310308"><script type="math/tex">\mathbb{M}</script></a>). The short reason why not: there are too few equivalence classes of k-tuples of them to use as representatives of the reals.</p>
</li>
<li>
<p><a href="https://mathoverflow.net/q/351743/440">Polyhedra that can pack 3-space only in a non-vertex-to-vertex fashion</a> (<a href="https://mathstodon.xyz/@11011110/103744463137230104"><script type="math/tex">\mathbb{M}</script></a>). The tiling by congruent convex polyhedra in Michael Korn’s answer is very pretty, but a proof that it is the only possible tiling by these polyhedra is still lacking (although it appears very likely to be true).</p>
</li>
</ul>David EppsteinJeff Erickson links one of the first non-trivial straight skeletons (as a roof model), from Kotirte Ebenen (Kotirte Projektionen) und deren Anwendung by Gustav A. von Peschka (1877).Two applications of maximum matching2020-02-22T17:55:00+00:002020-02-22T17:55:00+00:00https://11011110.github.io/blog/2020/02/22/applications-maximum-matching<p>This quarter I’m teaching a course on graph algorithms (an upper-division elective, so only around 200 students; our required classes are much bigger) and we’ve reached the part of the course where we discuss <a href="https://en.wikipedia.org/wiki/Matching_(graph_theory)">matching</a>. Motivating bipartite matching, perfect matching, weighted matching, and stable matching are all easy enough but I wanted a few more examples of applications of non-bipartite <a href="Maximum cardinality matching">maximum-cardinality matching</a>, so I asked my colleague Vijay Vazirani who responded with two cute ones that I wasn’t already familiar with.</p>
<p>His first suggestion was two-processor scheduling. To keep things simple and concrete let’s assume that we have a collection of equal-length tasks, with a partial ordering (or DAG) describing their timing constraints. If we have one processor to perform them on (or one person to perform them), the obvious solution is to schedule them according to a linear extension of the partial order (a topological ordering of the DAG), allowing them to all be performed with no delays, in total time equal to the number of tasks. But now suppose that there are two processors or people performing the tasks, so we can process two tasks at a time and, ideally, finish twice as quickly. We would like to find a schedule with as many compatible pairs of tasks as we can, saving as many time slots as there are pairs. Two tasks are compatible if they are incomparable in the partial order (there is no path between them in the DAG), so it looks like we simply need to find a maximum matching in the incomparability graph of the partial order. This doesn’t quite work because two matched pairs can “cross”,
unable to both be used in the same schedule because each pair contains an element constrained to be earlier than an element of the other pair. But when this happens, it’s possible to uncross them and get another matching that’s at least as good, eventually reaching a matching without any crossings that can be topologically ordered to give an optimal schedule. The connection between this scheduling problem and matching appears to come from Fujii, Kasami, and Ninamiya, “<a href="https://doi.org/10.1137/0117070">Optimal sequencing of two equivalent processors</a>”, <em>SIAM J. Appl. Math.</em> 1969; for fast algorithms for this special case of matching see H. Gabow, “<a href="https://doi.org/10.1145/322326.322335">An almost-linear algorithm for two-processor scheduling</a>”, <em>JACM</em> 1982.</p>
<p>Another application, closer to the real world, comes from a problem of matching kidney donors to kidney donor recipients. But we don’t use the obvious bipartite graph of donors and recipients. Most kidney transplant recipients enter the matching process paired up already with a friend or relative who is willing to donote one of their kidneys, because otherwise there wouldn’t be enough kidneys to go around. But usually these donor-recipient pairs are incompatible with each other, so they need to find another donor-recipient pair such that the donors from each pair are compatible with the recipients from the other pair. Then, all four people get together at the same hospital and trade kidneys. More complicated exchanges of three or more pairs are not done, because that would require simultaneous operations with six or more people and significantly greater chances that one of them will back out at the last minute. So to save as many lives as possible, we need a maximum matching on a graph whose vertices are donor-recipient pairs and whose edges represent double compatibility of pairs. There’s a big literature on kidney exchange but the source for the connection to maximum matching appears to be A. E. Roth, T. Sönmez, and M. U. Ünver, “<a href="https://www.nber.org/papers/w10698.pdf">Pairwise kidney exchange</a>”, <em>J. Econ. Th.</em> 2005.
If pairwise compatibility is an equivalence relation then the matching part is trivial (it’s just matching in a <a href="https://en.wikipedia.org/wiki/Cluster_graph">disjoint union of cliques</a>) but this framework is flexible enough to handle arbitrary non-transitive compatibility relations.</p>
<p>I learned of the kidney donor matching application a little too late to incorporate it into my introductory lecture on matching, so I used the other one. But next time I’ll be prepared with both!</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103705828147671738">Discuss on Mastodon</a>)</p>David EppsteinThis quarter I’m teaching a course on graph algorithms (an upper-division elective, so only around 200 students; our required classes are much bigger) and we’ve reached the part of the course where we discuss matching. Motivating bipartite matching, perfect matching, weighted matching, and stable matching are all easy enough but I wanted a few more examples of applications of non-bipartite maximum-cardinality matching, so I asked my colleague Vijay Vazirani who responded with two cute ones that I wasn’t already familiar with.Snowflake spanners2020-02-19T23:01:00+00:002020-02-19T23:01:00+00:00https://11011110.github.io/blog/2020/02/19/snowflake-spanners<p><a href="/blog/2020/02/17/spanners-have-sparse.html">My previous post</a> gave an example of a largish random point set where the <a href="https://en.wikipedia.org/wiki/Greedy_geometric_spanner">greedy geometric spanner</a> for distance ratio 2 had no crossings, while the spanner for the lower distance ratio had many (linearly many) crossings. And you might think from that example that there is some threshold for which distance ratios above the threshold always have planar greedy spanners, or even that the threshold is at or below 2. But it’s not true.</p>
<p>To see why not, we have to turn to an idea from an earlier paper of mine, “<a href="https://arxiv.org/abs/cs.CG/9907031">Beta-skeletons have unbounded dilation</a>” (<em>CGTA</em> 2002). In it, I used a flattened variant of the <a href="https://en.wikipedia.org/wiki/Koch_snowflake">Koch snowflake fractal</a> to find bad examples for a different kind of spanner, and the same thing works here too. The intuitive idea is that these fractals form curves that, locally, look nice to a spanner algorithm (just connect consecutive pairs of points along the curve). But they pack a lot of length into a small area, forcing the spanner algorithm to eventually add some shortcuts to the curve. If we can control where it adds the shortcuts, maybe we can make pairs of shortcuts cross.</p>
<p>In fact the Koch snowflake itself almost works, but it has some closest pairs that are non-consecutive along the curve, allowing the greedy spanner algorithm to choose those pairs instead of the consecutive curve points that we want it to choose. If we flatten the snowflake just a little bit, that complication goes away. If we choose the distance ratio of the spanner large enough, we can make it so that the greedy spanner algorithm doesn’t add any shortcuts until it reaches pairs of points that are opposite each other on the curve. And if we make it just barely large enough for that to be true, it will be forced to add those shortcuts once it does reach that distance in the sorted ordering of the distances. For instance, here’s a point set and its non-planar greedy spanner generated in this way with spanning ratio 4:</p>
<p style="text-align:center"><img src="/blog/assets/2020/snowflake.svg" alt="Greedy spanner of snowflake-like curve with distance ratio 4" /></p>
<p>This pretty picture, with the three crossing shortcuts between opposite pairs of points, doesn’t quite generalize to arbitrary-order snowflake-like curves, unfortunately. It will always be possible to find a distance ratio <script type="math/tex">d</script> such that the greedy algorithm adds one of these three shortcuts, as the first shortcut it needs to add. But then once it has added it, that shortcut can make the other two opposite pairs of points closer to each other in the spanner than they were, so that the greedy algorithm doesn’t need to add them. We might only get one of these three crossing edges, instead of all three. (In fact, for the point set shown here, this is exactly what happens for spanning ratio 4.5.)</p>
<p>Instead, let’s look for a slightly lower distance ratio <script type="math/tex">d'</script>, for which the first shortcuts added by the greedy spanner algorithm cut off two lobes of the snowflake instead of three. For the same points as above, <script type="math/tex">d'=3.65</script> works:</p>
<p style="text-align:center"><img src="/blog/assets/2020/snowflake2.svg" alt="Greedy spanner of snowflake-like curve with distance ratio 3.5" /></p>
<p>These two-lobe shortcuts are shorter than the three-lobe shortcuts, so they’re considered earlier by the greedy algorithm. There are two crossing equilateral triangles of two-lobe shortcuts (forming a Star of David pattern) and the greedy algorithm has to include two edges from each equilateral triangle. This is because, for each of these potential shortcuts, the greedy spanner won’t include a better path between its endpoints until it has either that shortcut itself or the two other shortcuts of the same triangle. No matter which two shortcuts we choose from each of the two equilateral triangles, we get either two crossings or, as here, three crossings.</p>
<p>For any order of flattened Koch snowflake, there’s a distance ratio <script type="math/tex">d'</script> producing a greedy spanner that looks like this picture, with two or three crossings. And by choosing a snowflake of high-enough order, we can make <script type="math/tex">d'</script> become arbitrarily large. Or, to put it another way, the greedy spanner algorithm can generate crossings for arbitrarily large distance ratios.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103689972863017904">Discuss on Mastodon</a>)</p>David EppsteinMy previous post gave an example of a largish random point set where the greedy geometric spanner for distance ratio 2 had no crossings, while the spanner for the lower distance ratio had many (linearly many) crossings. And you might think from that example that there is some threshold for which distance ratios above the threshold always have planar greedy spanners, or even that the threshold is at or below 2. But it’s not true.Spanners have sparse crossings2020-02-17T18:01:00+00:002020-02-17T18:01:00+00:00https://11011110.github.io/blog/2020/02/17/spanners-have-sparse<p>In a <a href="https://arxiv.org/abs/1709.06113">2017 SIGSPATIAL paper</a> with Sid Gupta, Sid and I <a href="/blog/2017/09/19/graphs-with-sparse.html">modeled non-planar road networks as graph drawings whose edges intersect sparsely, and showed that this implies that these graphs have small separators</a>, allowing algorithms designed for planar graphs (such as linear-time shortest paths) to be extended to them. My latest preprint, with UCI student Hadi Khodabandeh, uses similar ideas of sparse edge intersections to show that <a href="https://en.wikipedia.org/wiki/Greedy_geometric_spanner">greedy geometric spanners</a> also have small separators. The paper is <a href="https://arxiv.org/abs/2002.05854">“On the edge crossings of the greedy spanner” (arXiv:2002.05854)</a>.</p>
<p>Here, a spanner is a graph whose vertices are a given finite set of points in the plane, with the property that shortest paths in the graph (with distance measured geometrically along each edge) are a good approximation to shortest paths in the plane, the straight line segments between two given points. The graph is not allowed to have extra vertices, and we don’t care about distances between points that are not in the given set. These things have all sorts of applications, for instance in approximation algorithms (you can approximate a geometric problem involving distances by solving a graph problem on the spanner). Of course, a <a href="https://en.wikipedia.org/wiki/Complete_graph">complete graph</a> is a spanner in this sense, but it has a lot of edges. We’d like spanners that are sparser, and still accurately approximate all the distances.</p>
<p>You can get a constant-factor approximation with some planar graphs (like the Delaunay triangulation), and planar graphs are sparse and have <a href="https://en.wikipedia.org/wiki/Planar_separator_theorem">good separators</a>, among other properties. But the example of four points in a square shows that to get a distance ratio better than <script type="math/tex">\sqrt 2</script> we need to allow edges to cross each other. A standard way of doing this is to use a greedy algorithm: just consider all pairs of points, in order by distance, and add an edge when the graph you’ve built so far doesn’t include a short-enough path between them. For any target distance ratio, this turns out to give spanners that are sparse (a linear rather than quadratic number of edges, and more strongly having bounded degree at each vertex) and low weight (within a constant factor of the minimum spanning tree). Versions of these spanners can be constructed in near-linear time, and work in Euclidean spaces of any bounded dimension.</p>
<p>Here, for instance, is a greedy spanner of 100 random points with distance ratio 2 (big enough that, in this example, there are no crossings):</p>
<p style="text-align:center"><img src="/blog/assets/2020/greedy2.svg" alt="Greedy spanner with distance ratio 2" /></p>
<p>And here is a much more accurate greedy spanner on the same points, one with distance ratio 1.1:</p>
<p style="text-align:center"><img src="/blog/assets/2020/greedy1.1.svg" alt="Greedy spanner with distance ratio 1.1" /></p>
<p>What we show is that for greedy spanners in the plane, each spanner edge is crossed by a bounded number of longer or equal-length edges. An edge can be crossed by an unbounded number of shorter edges, but our result implies that the <a href="https://en.wikipedia.org/wiki/Intersection_graph">intersection graph</a> of the edges is itself a sparse graph. (In any subgraph of the intersection graph, the longest edge has bounded degree, so the graph as a whole has bounded <a href="https://en.wikipedia.org/wiki/Degeneracy_(graph_theory)">degeneracy</a>.) And that, in combination with the results of the SIGSPATIAL paper, implies that these graphs also have small separators: any <script type="math/tex">n</script>-vertex subgraph of a greedy spanner can be split into two smaller graphs of at most <script type="math/tex">2n/3</script> vertices each by the removal of <script type="math/tex">O(\sqrt{n})</script> vertices.</p>
<p>Unlike many of the other known results on greedy spanners, this works only in the plane. It doesn’t make sense to talk about crossings in higher-dimensional greedy spanners, because for points in general position there won’t be any crossings, even in the complete graph. So we don’t know whether higher-dimensional greedy spanners have sublinear separators or not; it would be of interest to find out.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/103677400632411777">Discuss on Mastodon</a>)</p>David EppsteinIn a 2017 SIGSPATIAL paper with Sid Gupta, Sid and I modeled non-planar road networks as graph drawings whose edges intersect sparsely, and showed that this implies that these graphs have small separators, allowing algorithms designed for planar graphs (such as linear-time shortest paths) to be extended to them. My latest preprint, with UCI student Hadi Khodabandeh, uses similar ideas of sparse edge intersections to show that greedy geometric spanners also have small separators. The paper is “On the edge crossings of the greedy spanner” (arXiv:2002.05854).