Jekyll2019-07-16T04:58:02+00:00https://11011110.github.io/blog/feed.xml11011110Geometry, graphs, algorithms, and moreDavid EppsteinLinkage2019-07-15T21:57:00+00:002019-07-15T21:57:00+00:00https://11011110.github.io/blog/2019/07/15/linkage<ul>
<li>
<p><a href="https://www.insidehighered.com/news/2019/07/01/about-700-academics-have-been-criminally-charged-turkey-their-signatures-petition">Turkey has charged over 700 academics with terrorism for signing a peace petition</a> (<a href="https://mathstodon.xyz/@11011110/102367088461002886"><script type="math/tex">\mathbb{M}</script></a>). Among the most severely penalized is <a href="https://en.wikipedia.org/wiki/Tuna_Alt%C4%B1nel">Tuna Altınel</a>, a mathematician in France who was arrested visiting family in Turkey, and who <a href="http://math.univ-lyon1.fr/SoutienTunaAltinel/?lang=en">has now been imprisoned for over 50 days</a> (<a href="https://cameroncounts.wordpress.com/2019/05/31/tuna-altnel/">via</a>).</p>
</li>
<li>
<p><a href="http://web.cs.elte.hu/~lovasz/bookxx/geomgraphbook/geombook2019.01.11.pdf">László Lovász’s book “Graphs and Geometry”, on geometric representations of graphs</a> (<a href="https://mathstodon.xyz/@11011110/102374639115017977"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20317825">via</a>). <a href="https://bookstore.ams.org/coll-65">The print version</a> should appear in a month or so from the AMS.</p>
</li>
<li>
<p><a href="https://www.insidehighered.com/quicktakes/2019/06/28/huge-budget-cut-university-alaska">University of Alaska budget gutted by 40%</a> (<a href="https://mathstodon.xyz/@11011110/102381510293748063"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://www.metafilter.com/181768/We-dont-need-no-stinkin-edumaction">see also</a>). The total amount cut over the past five years (including this new biggest cut) is <a href="https://www.chronicle.com/article/Unprecedented-in-Our/246596">more like 63%, from $522M to $192M</a>. And <a href="https://www.npr.org/2019/07/03/738569508/university-of-alaska-readies-for-budget-slash-we-may-likely-never-recover">the likely response is to close one of its three main campuses and all 13 smaller community campuses</a>. Ironically, the cause is right-wing insistence on a universal basic income of $3000/person from fuel extraction revenues.</p>
</li>
<li>
<p><a href="https://aperiodical.com/category/the-big-internet-math-off/">The annual Big Internet Math-off — view and vote on your favorites!</a> (<a href="https://mathstodon.xyz/@11011110/102385386477969762"><script type="math/tex">\mathbb{M}</script></a>).
The first few matches include <a href="https://aperiodical.com/2019/07/the-big-internet-math-off-2019-group-1-alex-corner-vs-lucy-rycroft-smith/">commutativity of log-exponentiation vs weather infovis</a>, the <a href="https://aperiodical.com/2019/07/the-big-internet-math-off-2019-group-2-marianne-rachel-vs-vincent-pantaloni/">geometry of the Sydney Opera House vs straight lines on a donut</a>, <a href="https://aperiodical.com/2019/07/the-big-internet-math-off-2019-group-3-vicky-neale-vs-jim-propp/">multiplication tables and muffins</a> and <a href="https://aperiodical.com/2019/07/the-big-internet-math-off-2019-group-4-colin-beveridge-vs-kyle-d-evans/">a video on shapes in La Sagrada Familia (shot on location?!) vs an introduction to fractals</a>. More daily for roughly a month.</p>
</li>
<li>
<p><a href="https://www.scmp.com/magazines/post-magazine/long-reads/article/3016267/chinese-scientists-guilty-researching-while">Chinese scientists guilty of “researching while Asian” in Trump’s America</a> (<a href="https://mathstodon.xyz/@11011110/102390640744960409"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20319936">via</a>, <a href="https://www.bloomberg.com/news/features/2019-06-13/the-u-s-is-purging-chinese-americans-from-top-cancer-research">see also</a>). The story focuses on star cancer researcher <a href="https://en.wikipedia.org/wiki/Xifeng_Wu">Xifeng Wu</a>, forced to resign from the University of Texas, apparently because she fostered collaboration with Chinese cancer research institutions at the behest of her higher administration.</p>
</li>
<li>
<p><a href="https://mathstodon.xyz/@ccppurcell/102133405425258779">Chris Purcell thinks about graphs with degree sequence <script type="math/tex">1,3,3,3,\dots</script></a>. They have to have at least one cycle of each parity.</p>
</li>
<li>
<p><a href="https://petapixel.com/2019/07/05/goodbye-aberration-physicist-solves-2000-year-old-optical-problem/">A formula for designing lenses with no spherical aberration</a> (<a href="https://mathstodon.xyz/@11011110/102401888807980335"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20369960">via</a>). This seems to have little practical value as there was already a numerical solution, and I don’t think it handles chromatic aberration, but it’s interesting that there is an analytic formula for these shapes.</p>
</li>
<li>
<p>Last week I traveled to Milan for the <a href="https://sgp2019.di.unimi.it/">Symposium on Geometry Processing</a> (<a href="https://mathstodon.xyz/@11011110/102407039766140849"><script type="math/tex">\mathbb{M}</script></a>). They also have an <a href="https://twitter.com/geometryprocess">official twitter stream</a>, mostly consisting of event photos. The sightseeing highlight of my trip was seeing pages of <a href="https://www.ambrosiana.it/en/discover/codex-atlanticus/">Da Vinci’s Codex Atlanticus at the Ambrosian Library</a>.</p>
</li>
<li>
<p><a href="https://boingboing.net/2019/07/08/check-out-this-cool-synthesize.html">Evoboxx</a> (<a href="https://mathstodon.xyz/@11011110/102412280507996705"><script type="math/tex">\mathbb{M}</script></a>), a retro-styled portable device that does only two things: run Conway’s Game of Life and generate sounds from it. Not very practical in these days of cell phones but then maybe that’s what makes it a fun project.</p>
</li>
<li>
<p><a href="http://jdh.hamkins.org/modal-model-theory/">Modal model theory</a> (<a href="https://mathstodon.xyz/@11011110/102418646790775178"><script type="math/tex">\mathbb{M}</script></a>). For graphs, this extends first order logic (where the only quantification is over vertices and the only predicate is adjacency) with operators <script type="math/tex">\Diamond</script> and <script type="math/tex">\Box</script>. <script type="math/tex">\Box(F)</script> is true when all supergraphs model <script type="math/tex">F</script> and <script type="math/tex">\Diamond(F)</script> is true when at least one supergraph models <script type="math/tex">F</script>. This can express nontrivial graph properties like <script type="math/tex">k</script>-colorability, and comes in two variants depending on whether you can quantify outside the operators.</p>
</li>
<li>
<p><a href="https://www.instagram.com/p/ByH-R4Ql-NA/">Very quick video tutorial on how to make the Miura-ori fold</a>, by Polly Verity (<a href="https://mathstodon.xyz/@11011110/102429787082169299"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://www.thisiscolossal.com/2019/07/new-polly-verity/">via</a>).</p>
</li>
<li>
<p><a href="http://jtra.cz/stuff/essays/math-self-reference-smooth/index.html">Trávník’s smooth self-referential formula</a> (<a href="https://mathstodon.xyz/@11011110/102435762025301458"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://twitter.com/johncarlosbaez/status/1141376710551601152">via</a>). It is actually a linked set of formulas, described in a typeset image, that when plotted as described in the image produces the image itself. It follows the same ideas as earlier self-referential formulas like <a href="https://en.wikipedia.org/wiki/Tupper%27s_self-referential_formula">Tupper’s self-referential formula</a> but unlike them describes a smooth vector image based on splines instead of a pixelated bitmap.</p>
</li>
<li>
<p><a href="http://muurformules.nl/">Leiden wall formulas</a> (<a href="https://mathstodon.xyz/@11011110/102444110227078604"><script type="math/tex">\mathbb{M}</script></a>). The last time I was in Leiden they were decorating the exterior walls of all their buildings with poems of many different languages. Now they’ve moved on to the language of mathematics.</p>
</li>
<li>
<p><a href="https://www.youtube.com/watch?v=eYfpSAxGakI">Numberphile video on Dehn invariants</a> (15-minutes; <a href="https://mathstodon.xyz/@11011110/102448538574760818"><script type="math/tex">\mathbb{M}</script></a>). The Dehn invariant is a value derived from a polyhedron that doesn’t change if you cut up the polyhedron into smaller polyhedral pieces and rearrange them into a different polyhedron. It’s 0 for the cube and nonzero for other Platonic solids, proving that they can’t be cut and rearranged into a cube. See <a href="https://en.wikipedia.org/wiki/Dehn_invariant">the Wikipedia article</a> for more technical details.</p>
</li>
</ul>David EppsteinTurkey has charged over 700 academics with terrorism for signing a peace petition (). Among the most severely penalized is Tuna Altınel, a mathematician in France who was arrested visiting family in Turkey, and who has now been imprisoned for over 50 days (via).Connectivity and finiteness in modal graph logic2019-07-13T21:57:00+00:002019-07-13T21:57:00+00:00https://11011110.github.io/blog/2019/07/13/connectivity-finiteness-modal<p>I read with interest Joel David Hamkins’ recent blog post on <a href="http://jdh.hamkins.org/modal-model-theory/">modal model theory</a>.
This week, on a long plane flight home from Italy, I was inspired to play with the modal logic of graphs, in which one describes properties of graphs by simpler properties of their (induced) supergraphs. My interest is less in what this says about set theory and model theory, and more in how expressive this language is: which graph properties can it describe? Joel showed in his post how to describe <script type="math/tex">k</script>-colorability in this theory, but I thought it would be of interest to start with something simpler than an <script type="math/tex">\mathsf{NP}</script>-complete problem. And what could be simpler for graphs than testing whether a graph is connected or finite?</p>
<h1 id="the-basics-of-modal-graph-logic">The basics of modal graph logic</h1>
<p><a href="https://en.wikipedia.org/wiki/Modal_logic">Modal logic</a> is a logic of “possible worlds” with two operators on formulas, <script type="math/tex">\Diamond F</script> (it is possible for <script type="math/tex">F</script> to be true, in at least one possible world) and <script type="math/tex">\Box F</script> (it is necessary for <script type="math/tex">F</script> to be true, in all possible worlds).
Modal graph logic applies this idea to the first-order <a href="https://en.wikipedia.org/wiki/Logic_of_graphs">logic of graphs</a>, in which one can quantify over variables that represent graph vertices and use a binary predicate <script type="math/tex">\sim</script> representing adjacency of pairs of vertices. I’ll assume here that all graphs are simple and undirected (i.e., <script type="math/tex">\sim</script> is irreflexive and commutative). A given graph <script type="math/tex">G</script> models a given first-order formula <script type="math/tex">F</script> (written as <script type="math/tex">G\models F</script>) if the formula becomes true when you evaluate it in the obvious way for the given graph. In the modal logic of graphs, the possible worlds are graphs containing <script type="math/tex">G</script> as an induced subgraph. So <script type="math/tex">\Diamond F</script> means that it is possible for <script type="math/tex">F</script> to be modeled by one of these larger graphs and <script type="math/tex">\Box F</script> means that it is necessary for <script type="math/tex">F</script> to be modeled by all of these larger graphs. If we apply a modal operator to a formula <script type="math/tex">F</script> that is itself modal, the possible worlds of the modal operators within <script type="math/tex">F</script> are supergraphs of these larger graphs, in the same way (in modal logic terminology, we are assuming S4 accessibility of possible worlds).</p>
<p>In some ways this is enormously powerful: the class of all graphs containing <script type="math/tex">G</script> is so big that it’s not even a set, and it can encode arbitrarily complicated structures. In other ways this is more highly constrained than other graph logics like monadic second-order logic (in which one can describe and quantify sets of vertices or edges, but not more complicated structures like sequences of vertices or strategy trees over games defined on the graph). The issue is that in a possible world, one can’t tell the vertices that were part of the base graph apart from the ones that were added later, except possibly for a finite set of vertices named in variables outside the modal operator. So while the possible worlds that model a given formula can be very large and complicated, it can be difficult to anchor these castles in the air to the base graph that you started with.</p>
<p>Joel’s description of how to express <script type="math/tex">k</script>-colorability suggests a path around this difficulty: Suppose we want to test a hereditary property <script type="math/tex">P</script> of graphs (one that extends from any graph to its induced subgraphs) such as colorability. Then we should look for a family of self-verifyingly-<script type="math/tex">P</script> graphs: a family of graphs with property <script type="math/tex">P</script> such that membership in the family can be tested by a first-order formula <script type="math/tex">F</script> and such that every graph with property <script type="math/tex">P</script> is an induced subgraph of a larger graph in this family. If we can find such a family and first-order formula <script type="math/tex">F</script>, then <script type="math/tex">\diamond F</script> will describe property <script type="math/tex">P</script> itself. For instance, for colorability, the self-verifyingly-<script type="math/tex">k</script>-colorable graphs are graphs in which each color class has a universal vertex, every vertex is adjacent to all but one of the universal vertices, and no two adjacent vertices are both non-adjacent to the same universal vertex.</p>
<p>Similar ideas can also work when the property is not hereditary (for instance, a graph has chromatic number 3 when it is 3-colorable but not 2-colorable) or when checking membership in the family of self-verifying graphs itself involves modal logic (as we’ll see for testing finiteness).</p>
<h1 id="connectivity">Connectivity</h1>
<p>Connectivity is not hereditary: every connected graph is part of a larger disconnected graph and vice versa. But the property that some particular pair of vertices <script type="math/tex">u,v</script> is separated is hereditary: if <script type="math/tex">u</script> is separated from <script type="math/tex">v</script>, the two vertices remain separated in any induced subgraph that contains them both. And while it’s not possible to verify this directly in a first order formula, for all graphs, it is possible in a special family of disconnected graphs, the ones containing a <em>transitive vertex</em>, one whose neighborhood forms a connected component of the graph. We can define a formula</p>
<script type="math/tex; mode=display">\operatorname{transitive}(w)\equiv \forall x\forall y\bigl((w\sim x\wedge x\sim y)\rightarrow w\sim y\bigr)</script>
<p>which characterizes these transitive vertices. (Here I am using <script type="math/tex">\equiv</script> to mean syntactic equivalence of formulas or definition of the name of a formula, rather than its meaning in Joel’s post, equivalence of models.) Then we can test whether <script type="math/tex">u</script> is separated from <script type="math/tex">v</script> by the formula</p>
<script type="math/tex; mode=display">\operatorname{separated}(u,v)\equiv\Diamond\exists w\bigl(\operatorname{transitive}(w)\wedge u\sim w\wedge\lnot(v\sim w)\bigr).</script>
<p>(Here, the instance of “transitive” on the right hand side is not a unary predicate, even though it looks like one; it should be expanded by the definition of the “transitive” formula to produce the resulting “separated” formula. Think of it as being like a C preprocessor macro.)
If <script type="math/tex">u</script> is indeed separated from <script type="math/tex">v</script>, there is a possible world modeling the formula, in which we add an extra vertex <script type="math/tex">w</script> to the starting graph, adjacent to everything in the connected component of <script type="math/tex">u</script>. And in any possible world modeling the formula, <script type="math/tex">u</script> is separated from <script type="math/tex">v</script>, and this must remain true in every induced subgraph of this possible world, including the base graph. Finally, a graph is connected if and only if it has no separated pair:</p>
<script type="math/tex; mode=display">\operatorname{connected}\equiv\lnot\exists u\exists v\,\operatorname{separated}(u,v).</script>
<p>In MSO logic, one of the standard tools is the <em>method of syntactic interpretations</em>. This allows you to modify your base graph <script type="math/tex">G</script> to form a different graph <script type="math/tex">G'</script> (for any of certain standard types of modification) and test whether the resulting graph models a given formula <script type="math/tex">F</script>. To do this, you instead modify the formula (in certain purely mechanical ways derived from how you were modifying <script type="math/tex">G</script>) and test whether your original graph models the modified formula <script type="math/tex">F'</script>. The same thing works in first-order logic and in modal logic, and allows such modifications as adding or removing an edge between given vertices, removing any given vertex, restricting to a logically-specified induced subgraph, or adding a new vertex with a logically-specified adjacency relation. I’ll write <script type="math/tex">F_{G'}</script> for the modified formula that simulates formula <script type="math/tex">F</script> on the modified graph <script type="math/tex">G'</script>. We can use this idea to extend connectedness to other properties; for instance, a graph is a forest if it has no cycle, and this is true if every edge removal disconnects it:</p>
<script type="math/tex; mode=display">\operatorname{acyclic}\equiv\forall u\forall v\bigl(u\sim v\rightarrow\operatorname{separated}_{G-uv}(u,v)\bigr).</script>
<h1 id="finiteness">Finiteness</h1>
<p>Following the earlier outline,
I’d like to find a simple family of finite graphs for which their finiteness is
so obvious that it can be tested by a simple logical formula, and then embed
every finite graph into one of these simple finite graphs.</p>
<p>The first natural choice of such a family is the family of paths.
We can define a path to be a connected graph with exactly two degree-one vertices in which all remaining vertices have degree two. Checking the degrees is first order, but I’ll spare you the messy details of the formula. All such graphs are finite, because a graph is connected if and only if every two vertices are a finite distance apart, and when the endpoints of a path are a finite distance apart there can be only finitely many other degree-two vertices between them. Any other vertices outside of this finite set must belong to a different component.</p>
<p>Not every finite graph can be embedded into a path. However, every finite graph has a perfect matching to the vertices of a path. To check the existence of an induced perfect matching between two sets of vertices in a graph, it’s helpful to have an extra vertex <script type="math/tex">v</script> that is not part of the matching, but that distinguishes one side of the matching (the neighbors of <script type="math/tex">v</script>) from the other side:</p>
<script type="math/tex; mode=display">% <![CDATA[
\begin{align}
\operatorname{matched}(v)\equiv
\forall x\exists!y\Bigl(
&\bigl(x=v\rightarrow y=v\bigr) \wedge\\
&\bigl(x\sim v\rightarrow (x\sim y\wedge \lnot(v\sim y))\bigr) \wedge\\
&\bigl(\lnot(x=v\vee x\sim v)\rightarrow (x\sim y \wedge y\sim v)\bigr)
\Bigr).
\end{align} %]]></script>
<p>Here, <script type="math/tex">\exists!</script> is shorthand for the <a href="https://en.wikipedia.org/wiki/Uniqueness_quantification">existence of exactly one thing</a>. With this test for an induced perfect matching in hand, we can check for a perfect matching to a finite path by</p>
<script type="math/tex; mode=display">\operatorname{finite}\equiv\Diamond\exists v\bigl(
\operatorname{path}_{N(v)}\wedge
\operatorname{matched}(v)\bigr),</script>
<p>where <script type="math/tex">N(v)</script> denotes the open neighborhood of <script type="math/tex">v</script>, the graph induced by the vertices adjacent to <script type="math/tex">v</script>.</p>
<p>I don’t think it’s possible to test finiteness in the same way in MSO.
We can define paths in MSO, and force them to have a perfect induced matching to the remaining vertices. But the recipe above breaks down at the point where it embeds the given graph into a supergraph, not generally possible in MSO. More generally I don’t think it’s possible in MSO to distinguish the family of finite complete graphs from their limit, the countable complete graph.</p>
<h1 id="additional-properties">Additional properties</h1>
<p>The same technology of paths and matchings can also be used to formulate not-very-natural properties of finite graphs that are definitely not expressible in MSO. For instance, we can check whether a graph <script type="math/tex">G</script> is the disjoint union of two equal-length paths, by first checking that it is a forest with four degree-one vertices and the rest degree-two, and then checking that both paths can be simultaneously perfectly matched to a third path of remaining vertices (with an additional vertex used to distinguish the sides of the matching as above). When this structure exists, the whole graph forms a polyhedron in the form of a <script type="math/tex">3\times n</script> grid with the sides of the grid connected to the distinguishing vertex, and this polyhedral structure can be used to prove that we cannot trick the formula by adding new paths connecting the original path endpoints. In contrast, MSO cannot express equality of path lengths, because (per <a href="https://en.wikipedia.org/wiki/Courcelle%27s_theorem">Courcelle’s theorem</a>) it can only express properties of path-like graphs that can be expressed as regular languages (over bounded-width path-decompositions of the graph), and equality of length is context-free but not regular for path-decompositions that concatenate the two paths separately.</p>
<p>It’s also possible to express that the <a href="https://en.wikipedia.org/wiki/Degeneracy_(graph_theory)">degeneracy of a graph</a> is at most some constant <script type="math/tex">k</script> in modal logic. As special cases, the graphs of degeneracy zero are the independent sets (first-order expressible) and the graphs of degeneracy one are the forests, which we’ve already seen how to express. Otherwise, we can represent sequences of vertices by <em>ladders</em>, paths of degree-three vertices matched to independent sets of degree-two vertices, with the represented sequence being the other endpoints of these degree-two vertices. Adding a ladder to a graph of degeneracy at least two doesn’t change its degeneracy, and we can express the existence of a degeneracy ordering of a finite graph (a sequence of the vertices such that all vertices have at most <script type="math/tex">k</script> neighbors that are later in the sequence) by the addition of a ladder with a designated starting vertex that touches all non-ladder vertices.
Each non-ladder vertex <script type="math/tex">v</script> should have at most <script type="math/tex">k</script> neighbors with the property that, within the ladder, the ladder vertex nearest <script type="math/tex">v</script> separates the top of the ladder from the ladder vertices nearest these neighbors.</p>
<p>We can <a href="/blog/2019/01/17/orientations-infinite-graphs.html">extend the concept of degeneracy from finite to infinite graphs</a>
by requiring that every finite subgraph have degeneracy at most <script type="math/tex">k</script>.
With this definition, we can identify a finite subgraph as the neighbors of a ladder, and then use the formula for finite-graph degeneracy on these neighbors.
This leads to a modal logic expression for infinite graph degeneracy in which the overall structure of the formula is that it is necessary that, whenever a vertex <script type="math/tex">v</script> forms the start of a ladder, it should be possible for there to exist another ladder defining a degeneracy ordering for <script type="math/tex">v</script>’s ladder and its neighbors.</p>
<p>I suspect, although I haven’t worked out all the details, that planarity testing is also expressible in modal logic. Here’s the outline of an idea for proving this. First, we can check that the graph is finite, to avoid complications of which infinite graphs should be considered to be planar or what a drawing of an infinite planar graph might look like. Next, a graph is planar if and only if it is an induced subgraph of a maximal planar graph, one in which all edges belong to exactly two <a href="https://en.wikipedia.org/wiki/Peripheral_cycle">peripheral triangles</a>. A graph with this two-peripheral-triangle property is planar if and only if one can partition its edges into two subsets, one of which forms a spanning tree for the graph and the other of which forms a spanning tree for the dual graph of the peripheral cycles. (The two-peripheral-triangle property defines a surface embedding which, if non-planar, would have some leftover edges that are neither part of a spanning tree nor a complementary dual spanning tree; see my paper “<a href="https://www.ics.uci.edu/~eppstein/pubs/p-dyngen.html">Dynamic generators of topologically embedded graphs</a>”.) And it should be possible to describe this partition in a planarity-preserving way by decorating the edges on one side of the partition by additional small planar graphs (maybe even just attaching a triangle to each decorated edge). So all we need to check is that it’s possible for the given graph to be part of a larger graph
that looks like a maximal planar graph with some decorated edges (ignoring the decorations, each edge belongs to two peripheral triangles) and that the decorations describe a spanning tree and a dual spanning tree. We already know how to describe spanning trees and dual spanning trees should also be possible using similar logic.</p>
<p>One natural and simple property that I don’t see how to express in modal logic is regularity. One can ask: do each two vertices have the same degree? And equality of sets of vertices can be checked by the existence of perfect matchings, as in the two-equal-paths example. But how do we know, in a possible world, which neighbors of two given vertices are original and which are added? For the same reason, the property of having a perfect matching seems difficult to express in modal logic, even though it is easy in MSO<script type="math/tex">{}_2</script>. Again, it seems difficult to impose any extra structure on a supergraph without losing too much information about which parts of the graph are original.</p>
<h1 id="standard-and-nonstandard-models">Standard and nonstandard models</h1>
<p>I have been (deliberately) naive here about what kind of set theory I am using to define my graphs, what “all induced supergraphs” means (do I consider graphs only over some set of candidate vertices, or the proper class of all graphs in some set theory), and whether there is always a “correct” value of <script type="math/tex">G\models F</script> that our models of modal graph logic should produce for a given graph and formula. If these naive assumptions are not valid, the description of what these formulas express may be inaccurate.</p>
<p>In particular, the claim that a graph is connected if and only if every two vertices are a finite distance apart uses concepts of distance that go beyond the first-order theory of graphs. In non-standard models of set theory, or in standard models of set theory but with non-standard collections of possible worlds that are not really the collection of all induced supergraphs of a given graph, that claim may fail to be true. In such cases, the finiteness formula may determine that an infinite graph (one that models the first-order logical formulas stating that there exist at least <script type="math/tex">k</script> distinct vertices, for every finite integer <script type="math/tex">k</script>) is finite. It’s not a bug in the formula, just an indication that you need to be careful about your models. Or in computer science terms, <a href="https://en.wikipedia.org/wiki/Garbage_in,_garbage_out">GIGO</a>.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/102438063877916451">Discuss on Mastodon</a>)</p>David EppsteinI read with interest Joel David Hamkins’ recent blog post on modal model theory. This week, on a long plane flight home from Italy, I was inspired to play with the modal logic of graphs, in which one describes properties of graphs by simpler properties of their (induced) supergraphs. My interest is less in what this says about set theory and model theory, and more in how expressive this language is: which graph properties can it describe? Joel showed in his post how to describe -colorability in this theory, but I thought it would be of interest to start with something simpler than an -complete problem. And what could be simpler for graphs than testing whether a graph is connected or finite?Linkage2019-06-30T16:16:00+00:002019-06-30T16:16:00+00:00https://11011110.github.io/blog/2019/06/30/linkage<p>Ok, some of these are not so much links as mini-reports from SPAA/STOC/FCRC. For an actual conference report, see <a href="https://blog.computationalcomplexity.org/2019/06/fcrc-2019.html">Lance’s post</a>.</p>
<ul>
<li>
<p><a href="https://uhills.org/the-university-hills-section-marker-a-history-of-maps-markers-and-monuments-that-eventually-created-university-hills/">Squaring the spherical earth</a> (<a href="https://mathstodon.xyz/@11011110/102285188426196734"><script type="math/tex">\mathbb{M}</script></a>). For surveying purposes, Orange County is divided into “sections”, typically one square mile (not axis-aligned!) with small brass markers at their corners. One corner lands in the UCI faculty housing development where I live, and the housing association took the opportunity to make a larger decorative marker for it.</p>
</li>
<li>
<p><a href="https://gilkalai.wordpress.com/2019/03/22/danny-nguyen-and-igor-pak-presburger-arithmetic-problem-solved/">Integer linear programming, change-making, and Presburger arithmetic</a> (<a href="https://mathstodon.xyz/@11011110/102291138538406550"><script type="math/tex">\mathbb{M}</script></a>). Integer arithmetic problems with a constant number of variables and one level of quantifiers (example: given a constant number of coin types, find the largest amount of money for which you cannot make change) have long been known to be polynomially solvable, but <a href="http://www.math.ucla.edu/~pak/papers/hard_presburger3.pdf">in FOCS 2017 Nguyen and Pak proved that only two levels of quantifiers make the problem hard</a>.</p>
</li>
<li>
<p><a href="https://tomas.rokicki.com/dottri.html">Dots and triangles</a> (<a href="https://mathstodon.xyz/@christianp/102297036146535876"><script type="math/tex">\mathbb{M}</script></a>). Online variant of dots and boxes by Tomas Rikicki.</p>
</li>
<li>
<p><a href="https://cameroncounts.wordpress.com/2019/06/19/combinatorics-at-strathclyde/">University of Strathclyde proposes to axe combinatorics and their three strong combinatorics faculty members</a> (<a href="https://mathstodon.xyz/@11011110/102301038310925223"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://gowers.wordpress.com/2019/06/19/the-fate-of-combinatorics-at-strathclyde/">via</a>). This comes despite the group being both strong in research and important in undergraduate education. The apparent cause is Strathclyde’s placement of combinatorics in computer science rather than in mathematics and in their use of standards aimed more at computer science than mathematics (like bringing in large grants). There’s an <a href="https://britishcombinatorial.wordpress.com/2019/06/20/combinatorics-at-strathclyde-2/">online petition against the cuts</a> closing very soon: 5pm British time, July 1.</p>
</li>
<li>
<p>Catherine Greenhill is setting up a new network for women in combinatorics, meaning “anyone who identifies as a woman, is non-binary, two-spirit, or gender diverse” (<a href="https://mathstodon.xyz/@11011110/102311965002907932"><script type="math/tex">\mathbb{M}</script></a>). <a href="https://womenincombinatorics.com/">Their website</a> currently only has a sign-up form, but expect more to come.</p>
</li>
<li>
<p>Slides from three of my recent conference talks (<a href="https://mathstodon.xyz/@11011110/102319479687501682"><script type="math/tex">\mathbb{M}</script></a>):
<a href="https://www.ics.uci.edu/~eppstein/pubs/Epp-SoCG-19-many-lines-slides.pdf">Cubic planar graphs that cannot be drawn on few lines</a>; <a href="https://www.ics.uci.edu/~eppstein/pubs/Epp-SoCG-19-counting-slides.pdf">Counting polygon triangulations is hard</a>; <a href="https://www.ics.uci.edu/~eppstein/pubs/Epp-SPAA-19-slides.pdf">NC algorithms for perfect matching and maximum flow in one-crossing-minor-free graphs</a>.</p>
</li>
<li>
<p>Certain conference speakers need to be told that using sans-serif ∑ for one central notation and sans-serif bold ∑ for a different central notation is a bad idea. That decorating both of them by the same subscripts and the same hats doesn’t help. And that when someone asks for clarification of the notation, answering with “We should move on…this is a thing you can compute on your own” rather than actually explaining is rude (<a href="https://mathstodon.xyz/@11011110/102323855724493135"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p>The STOC Wikipedia edit-a-thon was called off because the convention center was locked up and participants couldn’t get into the room it was scheduled for (<a href="https://mathstodon.xyz/@11011110/102330434291269046"><script type="math/tex">\mathbb{M}</script></a>). But <a href="https://thmatters.wordpress.com/2019/06/26/edit-a-thon-update/">it was successfully rescheduled for the next day</a>, unfortunately too late in the conference for me to participate.</p>
<p>In other news from STOC, spammy journal publishers have found a new way to spam us: fund student authors with travel awards (laudable and non-spammy!) but then require the student presenters to display a whole slide of advertising for the journal by way of acknowledgements (spammy!).</p>
</li>
<li>
<p><a href="https://xkcd.com/2168/">xkcd on reading Wikipedia in the original Greek</a> (<a href="https://mathstodon.xyz/@11011110/102339055555301837"><script type="math/tex">\mathbb{M}</script></a>).</p>
</li>
<li>
<p><a href="https://arxiv.org/abs/1906.10668">Discrete logarithms in quasi-polynomial time in finite fields of fixed characteristic</a> (<a href="https://mathstodon.xyz/@erou/102337004608271854"><script type="math/tex">\mathbb{M}</script></a>). New preprint by Kleinjung and Weselowski.</p>
</li>
<li>
<p><a href="https://www.youtube.com/watch?v=OerQAsqEOLc">Short video on interleaving multiple copies of the infinite Laves graph</a> (<a href="https://mathstodon.xyz/@11011110/102353592823020968"><script type="math/tex">\mathbb{M}</script></a>). Sound not necessary.</p>
</li>
<li>
<p><a href="https://arstechnica.com/science/2019/06/two-new-papers-explore-the-complicated-physics-behind-bubbles-and-foams/">Two new papers explore the complicated physics behind bubbles and foams</a> (<a href="https://mathstodon.xyz/@11011110/102356874963380843"><script type="math/tex">\mathbb{M}</script></a>).
Juanes et al find <a href="http://dx.doi.org/10.1073/pnas.1819744116">universality in pinching off uniformly sized bubbles</a> from a tube much like drops from a dripping faucet. And Yanagisawa and Kurita discover <a href="http://dx.doi.org/10.1038/s41598-019-41486-6">two mechanisms for breaking bubbles to propagate through a foam</a>. As it contracts, the breaking bubble can hit other bubbles, and it can also scatter off droplets which hit other bubbles.</p>
</li>
<li>
<p><a href="https://arxiv.org/abs/1902.07622">Centrality analysis of Wikipedia links between mathematicians</a> (<a href="https://mathstodon.xyz/@11011110/102361585031049847"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://en.wikipedia.org/wiki/Wikipedia:Wikipedia_Signpost/2019-06-30/Recent_research">via</a>). None of the names listed are surprising, but the ordering might be a little. Noether makes the top 10; Bourbaki, Grothendieck, and Turing are farther down. Martin Gardner makes the cut (barely), at #35.</p>
</li>
</ul>David EppsteinOk, some of these are not so much links as mini-reports from SPAA/STOC/FCRC. For an actual conference report, see Lance’s post.Report from SoCG2019-06-21T22:09:00+00:002019-06-21T22:09:00+00:00https://11011110.github.io/blog/2019/06/21/report-from-socg<p>As I mentioned in <a href="/blog/2019/06/20/portland-street-art.html">my previous post</a>, I just finished attending the Symposium on Computational Geometry in Portland. The <a href="http://drops.dagstuhl.de/opus/portals/lipics/index.php?semnr=16108">conference proceedings are open access through LIPIcs</a>.</p>
<p>The conference started on Tuesday (after some earlier social activities) with the best paper talk by Arnaud de Mesmay, “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.27">Almost tight lower bounds for hard cutting problems in embedded graphs</a>” (with V. Cohen-Addad, É. Colin de Verdière, and D. Marx) proving that, to find the shortest set of cuts to slice a genus-<script type="math/tex">g</script> surface into a disk, the exponent must depend linearly on <script type="math/tex">g</script> (assuming the exponential time hypothesis).</p>
<p>Several of the contributed talks from throughout the conference particularly caught my attention:</p>
<ul>
<li>
<p>Shay Moran’s paper with A. Yehudayoff, “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.51">On weak <script type="math/tex">\varepsilon</script>-nets and the Radon number</a>” concerned abstract convexity spaces where the convex sets are any set family closed under intersection. A space has Radon number <script type="math/tex">r</script> if every <script type="math/tex">r</script> points can be partitioned into two subsets whose convex hulls (smallest containing convex sets) intersect, and a point in the intersection is called a Radon point. Having bounded Radon number turns out to be equivalent to having weak <script type="math/tex">\varepsilon</script>-nets, subsets of points that (for a given measure on the space) intersect every large convex set.</p>
</li>
<li>
<p>Mitchell Jones’ “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.41">Journey to the center of the point set</a>” (with Sariel Har-Peled) improved an old paper of mine on using Radon points to find points of high <a href="https://en.wikipedia.org/wiki/Centerpoint_(geometry)">Tukey depth</a> in high-dimensional point sets in time polynomial in the dimension, improving both the polynomial and the depth of the resulting points.</p>
</li>
<li>
<p>Sariel Har-Peled spoke on his work with Timothy Chan, “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.23">Smallest <script type="math/tex">k</script>-enclosing rectangle revisited</a>”. As well as shaving logs from the time bounds for finding rectangles that enclose a given number of points and minimize their area or perimeter, they found a general reduction from problems on <script type="math/tex">n</script> points to <script type="math/tex">O(n/k)</script> problems on <script type="math/tex">O(k)</script> points, allowing one to turn factors of <script type="math/tex">n</script> in the time bounds into factors of <script type="math/tex">k</script>. Previously such reductions were only known for <script type="math/tex">k</script>-point subset problems where the optimal solution lies among the <script type="math/tex">O(k)</script> nearest neighbors of some input point, true for rectangle perimeter but not rectangle area.</p>
</li>
<li>
<p>Timothy Chan’s “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.20">Computing Shapley values in the plane</a>” concerns an interesting combination of game theory and computational geometry. The <a href="https://en.wikipedia.org/wiki/Shapley_value">Shapley value</a> is a method for assigning credit when multiple people collaborate to produce some value (given as input a function from subsets of people to the value of a subset). It can be defined by adding contributors one-by-one in a random order and setting each contributor’s Shapley value to the expected increase in value when that contributor is added. It sums to the total value and is the unique function with this property that obeys several other natural and desirable axioms for credit assignment. For arbitrary functions from subsets of <script type="math/tex">n</script> contributors to subset values, it takes time <script type="math/tex">O(2^n)</script> to compute, but Timothy described polynomial time algorithms for cases when the value function has some geometric meaning, such as when it measures the area of the convex hull of a subset of <script type="math/tex">n</script> points. There’s probably a lot more to be done in the same direction.</p>
</li>
<li>
<p>Patrick Schnider’s “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.56">Ham-Sandwich cuts and center transversals in subspaces</a>” has some partial results towards a conjectured generalization of the <a href="https://en.wikipedia.org/wiki/Ham_sandwich_theorem">ham sandwich theorem</a>: given <script type="math/tex">dk</script> probability distributions in <script type="math/tex">d</script>-dimensional Euclidean space, it should be possible to find <script type="math/tex">k</script> hyperplanes whose checkerboard partition of space simultaneously bisects all of the distributions.</p>
</li>
<li>
<p>Jie Xue spoke on “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.60">Near-optimal algorithms for shortest paths in weighted unit-disk graphs</a>” (with Haitao Wang). Here “weighted” means that overlapping unit disks are connected by an edge whose length is the Euclidean distance between their centers. Previous methods obtained near-linear algorithms by using bichromatic closest pair data structures to simulate Dijkstra’s algorithm. Instead, Wang and Xue use a related relaxation algorithm that partitions the plane into a grid and at each step relaxes all edges between certain pairs of grid squares, using data structures for additively weighted nearest neighbors. By avoiding the overhead of closest pairs they shave several logs from the runtime.</p>
</li>
<li>
<p>Arnaud de Mesmay spoke again towards the end of the conference on “<a href="https://doi.org/10.4230/LIPIcs.SoCG.2019.49">The unbearable hardness of unknotting</a>”, with Yo’av Rieck, Eric Sedgwick, and Martin Tancer. They used a reduction from 3-satisfiability, with <a href="https://en.wikipedia.org/wiki/Hopf_link">Hopf links</a> for variables and <a href="https://en.wikipedia.org/wiki/Borromean_rings">Borromean links</a> for clauses (connected to each other by ribbons), to prove that it’s NP-complete to find an unlinked subset of a link with a maximum number of components. By a second level of replacement that doubles the strands of each link, they also showed that it’s NP-complete to find the minimum number of crossing changes or of Reidemeister moves to unlink a link or to unknot a knot.</p>
</li>
</ul>
<p>On Tuesday afternoon I went to the workshop on open problems. After the obligatory open problem session, we debated whether we should collect problems on <a href="https://cs.smith.edu/~jorourke/TOPP/">The Open Problems Project</a>, <a href="http://www.openproblemgarden.org/">The Open Problem Garden</a>, or some new system that, since it doesn’t exist, can be more perfect than anything that does. Then I switched to the Young Researcher’s Forum (unfortunately missing the open problem implementation challenge); at the YRF, my student Daniel Frishberg spoke about <a href="https://arxiv.org/abs/1902.06875">our work on using nearest neighbor chains to speed up greedy algorithms</a>.</p>
<p>The invited talks on Wednesday and Friday were by Sanjoy Dasgupta and Bruce Donald, respectively. Dasgupta spoke on using concepts from geometric data structures to interpret the neural structure of the olfactory system in fruit flies (and hopefully, eventually, vice versa: to use our understanding of neural structures to develop new data structures). For instance, the first three layers of neurons in this system appear to implement an “expand-and-sparsify” data structure that represents low-dimensional normalized vectors by randomly mapping them to much higher dimensional vectors and then listing as a set a smaller number of high-value coordinates. This appears to be closely analogous to known methods for <a href="https://en.wikipedia.org/wiki/Locality-sensitive_hashing">locality-sensitive hashing</a>. Donald spoke on using geometric methods to represent and infer the shapes of proteins, and to design proteins with desired shapes and functions.</p>
<p>Wednesday evening was the conference banquet, at the famed <a href="https://en.wikipedia.org/wiki/Crystal_Ballroom_(Portland,_Oregon)">Crystal Ballroom</a>, conveniently located near Powell’s Books. Matthew Dickerson showed up (after many years absence from SoCG) and brought some musical family members for a live concert.</p>
<p style="text-align:center"><img src="http://www.ics.uci.edu/~eppstein/pix/portland/ShakySituation-m.jpg" alt="Marquee for Michael Dickerson and Shaky Situation" style="border-style:solid;border-color:black;" /></p>
<p>On Thursday afternoon I stopped by the workshop on algebraic methods where I had the pleasure of seing Josh Zahl give his talk on a whiteboard instead of using prepared slides. It was on methods for proving bounds on the number of incidences among geometric objects by combining naive bounds based on forbidden complete bipartite subgraphs of the incidence graphs, cuttings of space into smaller regions within which one applies these naive bounds, and cuttings of the objects into pieces in order to make the forbidden subgraphs smaller.</p>
<p>The conference business meeting was also Thursday, and ran very smoothly.
Next year SoCG will be in Zurich; the year after that, in Buffalo. We now have an officially incorporated society, <a href="http://www.computational-geometry.org/society/index.html">The Society for Computational Geometry</a>, so that we can maintain buffer funds for the conference from one year to the next; it will be supported by an increase of $30-$35 in non-student registration fees. And the attendees voted overwhelmingly in favor of both <a href="https://www.ics.uci.edu/~irani/safetoc.html">the SafeTOC anti-harassment guidelines</a> and ensuring and better advertising the availability of childcare at future conferences.</p>
<p>The conference was dedicated to the memory of <a href="https://en.wikipedia.org/wiki/Richard_M._Pollack">Ricky Pollack</a>, but it also included a celebration on Friday of a living computational geometer: <a href="https://en.wikipedia.org/wiki/John_Hershberger">John Hershberger</a>, who led the effort to bring SoCG to Oregon, and turned 60 just before the conference began. Happy birthday, John!</p>
<p>(<a href="https://mathstodon.xyz/@11011110/102313609521577006">Discuss on Mastodon</a>)</p>David EppsteinAs I mentioned in my previous post, I just finished attending the Symposium on Computational Geometry in Portland. The conference proceedings are open access through LIPIcs.Portland street art2019-06-20T17:04:00+00:002019-06-20T17:04:00+00:00https://11011110.github.io/blog/2019/06/20/portland-street-art<p>I’ve been in Portland, Oregon this week for <a href="http://eecs.oregonstate.edu/socg19/">Computational Geometry Week</a>. Here are a few photos of local street art, the first set I’ve taken with my new Pixel 3 XL cellphone
(I neglected to bring an actual camera for this trip):</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/portland/Clay-2nd-1.html"><img src="http://www.ics.uci.edu/~eppstein/pix/portland/Clay-2nd-1-m.jpg" alt="Portland Oregon Street art: Clay & 2nd" width="400" style="border-style:solid;border-color:black;" /></a></td>
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/portland/Clay-2nd-2.html"><img src="http://www.ics.uci.edu/~eppstein/pix/portland/Clay-2nd-2-m.jpg" alt="Portland Oregon Street art: Clay & 2nd" width="382" 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/portland/Hall-5th-2.html"><img src="http://www.ics.uci.edu/~eppstein/pix/portland/Hall-5th-2-m.jpg" alt="Portland Oregon Street art: Hall & 5th" width="335" style="border-style:solid;border-color:black;" /></a></td>
<td style="padding:10px"><a href="http://www.ics.uci.edu/~eppstein/pix/portland/College-4th.html"><img src="http://www.ics.uci.edu/~eppstein/pix/portland/College-4th-m.jpg" alt="Portland Oregon Street art: College & 4th" width="382" style="border-style:solid;border-color:black;" /></a></td>
</tr></table></div>
<p><a href="http://www.ics.uci.edu/~eppstein/pix/portland/index.html">Here are the rest of my photos</a>.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/102306697775168322">Discuss on Mastodon</a>)</p>David EppsteinI’ve been in Portland, Oregon this week for Computational Geometry Week. Here are a few photos of local street art, the first set I’ve taken with my new Pixel 3 XL cellphone (I neglected to bring an actual camera for this trip):Linkage for the end of an academic year2019-06-15T17:58:00+00:002019-06-15T17:58:00+00:00https://11011110.github.io/blog/2019/06/15/linkage<p>The Spring term just ended at UCI (we’re on a quarter system, so we run later into June and then start up again later in September than most other US universities). I haven’t yet turned in my grades, but I can already feel summer setting in.</p>
<ul>
<li>
<p><a href="https://hackaday.com/2019/06/01/paper-strandbeest-is-strong-enough-to-walk/">Remote-controlled papercraft steerable Strandbeest</a> (<a href="https://mathstodon.xyz/@11011110/102197633382208469"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20068166">via</a>).</p>
</li>
<li>
<p><a href="https://www.instagram.com/p/BaSVpX_nMpU/">Voronoi origami</a> (<a href="https://mathstodon.xyz/@11011110/102206289543572358"><script type="math/tex">\mathbb{M}</script></a>, <a href="http://orderinspace.blogspot.com/2015/07/voronoi.html">see also</a>).</p>
</li>
<li>
<p><a href="https://archive.org/details/@mirtitles">Mir Books</a> (<a href="https://mathstodon.xyz/@11011110/102212071495683563"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://mathstodon.xyz/@jarban/102209797748141088">via</a>). A big collection of interesting-looking Soviet-era mathematics and science books and booklets, translated into English and free to read.</p>
</li>
<li>
<p><a href="https://mathenchant.wordpress.com/2017/09/17/how-do-you-write-one-hundred-in-base-32/">Chip-firing games and sesquinary notation</a> (<a href="https://mathstodon.xyz/@11011110/102217258990536291"><script type="math/tex">\mathbb{M}</script></a>). Jim Propp writes a monthly long-form math blog and somehow I hadn’t encountered it before; this is one of its many interesting entries. One of the oddities about base <script type="math/tex">3/2</script> is that you calculate it bottom-up (by starting from a ones digit that’s too big and then carrying things higher) instead of top-down (by greedily subtracting powers).</p>
</li>
<li>
<p><a href="https://mathstodon.xyz/@JordiGH/102226037720885699">A discussion on whether proofs in Wikipedia articles need references</a>, and what those references are for.</p>
</li>
<li>
<p><a href="https://theinnerframe.wordpress.com/2018/07/16/death-of-proof-the-pleasures-of-failure-i/">The tale of Horgan’s surface</a> (<a href="https://mathstodon.xyz/@11011110/102228263549241096"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://mathenchant.wordpress.com/2019/06/06/carnival-of-mathematics-170/">via</a>, <a href="http://www.indiana.edu/~minimal/essays/horgan/index.html">see also</a>, <a href="https://www.scottaaronson.com/blog/?p=4133">see also</a>), a nonexistent minimal surface whose existence was incorrectly predicted by numerical experiments, named sarcastically after a journalist who incautiously suggested that proof was a dead concept.</p>
</li>
<li>
<p><a href="https://arxiv.org/abs/1810.02231">Compact packings of the plane with three sizes of discs</a> (<a href="https://mathstodon.xyz/@11011110/102240130646118434"><script type="math/tex">\mathbb{M}</script></a>), Thomas Fernique, Amir Hashemi, and Olga Sizova. Here, “compact packing” means interior-disjoint disks forming only 3-sided gaps. The circle packing theorem constructs these for any finite maximal planar graph, with little control over disk size. Instead this paper seeks packings of the whole plane by infinitely many disks, with few sizes. 9 pairs of sizes and 164 triples work.</p>
</li>
<li>
<p>Luca Trevisan posts a series of tutorials on online convex optimization, where you want to approximately minimize a sequence of convex functions before discovering what the functions are (parts <a href="https://lucatrevisan.wordpress.com/2019/04/17/online-optimization-for-complexity-theorists/"><script type="math/tex">-1</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/04/22/online-optimization-post-0-definitions/"><script type="math/tex">0</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/04/24/online-optimization-post-1-multiplicative-weights/"><script type="math/tex">1</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/04/25/online-optimization-post-2-constructing-pseudorandom-sets/"><script type="math/tex">2</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/05/06/online-optimization-post-3-follow-the-regularized-leader/"><script type="math/tex">3</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/05/16/online-optimization-post-4-regularity-lemmas/"><script type="math/tex">4</script></a>, <a href="https://lucatrevisan.wordpress.com/2019/05/20/online-optimization-post-5-bregman-projections-and-mirror-descent/"><script type="math/tex">5</script></a>; <a href="https://mathstodon.xyz/@11011110/102244702633232612"><script type="math/tex">\mathbb{M}</script></a>). It’s a hot topic in TCS with connections to regularity lemmas, fast SDP approximation, and spectral sparsifiers.</p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Cross_sea">Squared patterns of ocean waves</a> (<a href="https://mathstodon.xyz/@11011110/102251731269228854"><script type="math/tex">\mathbb{M}</script></a>), and wave patterns in social media: search for “cross sea” and note its appearance on gizmodo in 2014, amusingplanet in 2015, azula in 2017, providr in 2018, sciencealert in 2019…all repeating the same somewhat garbled explanation of mathematical wave models and danger to shipping.</p>
</li>
<li>
<p><a href="https://thmatters.wordpress.com/2019/06/11/wikipedia-edit-a-thon-at-stoc19/">The SIGACT Committee for the Advancement of Theoretical Computer Science is planning a Wikipedia edit-a-thon, in Phoenix on June 24 as part of STOC</a> (<a href="https://mathstodon.xyz/@11011110/102262460312659446"><script type="math/tex">\mathbb{M}</script></a>). You can help, and you don’t even have to brave the desert heat to do so! There’s <a href="https://thmatters.wordpress.com/2017/05/02/tcs-wikipedia-project/">a shared spreadsheet</a> where CATCS is crowdsourcing TCS topics on Wikipedia that need help. Add your favorite missing algorithm, theorem, complexity class, etc, and it’s likely it’ll get some attention.</p>
</li>
<li>
<p>While I’m publicizing activities associated with STOC and FCRC next week in Phoenix, here’s another: <a href="https://sigact.org/tcswomen/tcs-women-2019/">the TCS Women Spotlight Workshop</a> (<a href="https://mathstodon.xyz/@11011110/102266092255364896"><script type="math/tex">\mathbb{M}</script></a>). It features an inspirational talk from Ronitt Rubinfeld (in my experience a great speaker), four “rising star” talks by Naama Ben-David, Debarati Das, Andrea Lincoln, and Oxana Poburinnaya, a panel/lunch for women at STOC, and a poster session of recent theoretical computer science research by women.</p>
</li>
<li>
<p>Two colleagues from my department, Alex Nicolau and Alex Veidenbaum, are participating in <a href="http://artdaily.com/news/114313/University-of-California--Irvine-computer-scientists-breathe-life-into-Venice-Biennale-installations">a Venice Biennale project</a> (<a href="https://mathstodon.xyz/@11011110/102272037129033816"><script type="math/tex">\mathbb{M}</script></a>) in which viewers converse with computerized simulations of poet <a href="https://en.wikipedia.org/wiki/Paul_Celan">Paul Celan</a> and politician <a href="https://en.wikipedia.org/wiki/Nicolae_Ceau%C8%99escu">Nicolae Ceaușescu</a>.
The Alexes usually work on the more technical side of CS (parallelizing compilers, computer architecture, and embedded systems) so it’s interesting to me to see this softer direction from them.</p>
</li>
<li>
<p><a href="https://www.nature.com/articles/d41586-019-01796-1"><em>Nature</em> on how word processors and text editors have been shifting from roll-your-own equation editing to LaTeX</a> (<a href="https://mathstodon.xyz/@11011110/102277832022967684"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20191348">via</a>).</p>
</li>
</ul>David EppsteinThe Spring term just ended at UCI (we’re on a quarter system, so we run later into June and then start up again later in September than most other US universities). I haven’t yet turned in my grades, but I can already feel summer setting in.Dancing arc-quadrilaterals2019-06-11T21:16:00+00:002019-06-11T21:16:00+00:00https://11011110.github.io/blog/2019/06/11/dancing-arc-quadrilaterals<p>Several of my past papers concern Lombardi drawing, which I and my coauthors named after conspiracy-theory artist <a href="https://en.wikipedia.org/wiki/Mark_Lombardi">Mark Lombardi</a>. In this style of drawing, edges are drawn as circular arcs, and must meet at equal angles around every vertex. Not every graph has such a drawing, but many symmetrical graphs do (example below: the smallest <a href="https://en.wikipedia.org/wiki/Zero-symmetric_graph">zero-symmetric graph</a> with only two edge orbits).</p>
<p style="text-align:center"><img src="/blog/assets/2019/Two-edge-orbit_GRR.svg" alt="The smallest zero-symmetric graph with only two edge orbits" /></p>
<p>All 2-degenerate graphs do as well; these are the graphs that can be reduced to nothing by removing vertices of degree at most two. And all 3-regular planar graphs have planar drawings in this style; I drew the one below to illustrate <a href="https://en.wikipedia.org/wiki/Grinberg%27s_theorem">Grinberg’s theorem</a>, a necessary condition for Hamiltonicity of planar graphs.</p>
<p style="text-align:center"><img src="/blog/assets/2019/Grinberg_5CEC_Nonhamiltonian_graph.svg" alt="Grinberg's non-Hamiltonian planar cubic graph with cyclic edge-connectivity five" /></p>
<p>So anyway, my newest arXiv preprint is “Bipartite and series-parallel graphs without planar Lombardi drawings” (<a href="https://arxiv.org/abs/1906.04401">arXiv:1906.04401</a>, to appear at <a href="https://sites.ualberta.ca/~cccg2019/">CCCG</a>). It is about some families of planar graphs that have Lombardi drawings (because they are 2-degenerate) but do not have planar Lombardi drawings. They include planar bipartite graphs like the one below (but with more edges and vertices):</p>
<p style="text-align:center"><img src="/blog/assets/2019/nested-K2n.svg" alt="Construction for a family of planar bipartite graphs with no planar Lombardi drawing " /></p>
<p>and embedded series-parallel graphs like the one below (again, with more edges and vertices):</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonlom-serpar.svg" alt="Construction for a family of embedded series-parallel graphs with no planar Lombardi drawing" /></p>
<p>The key structures that makes both of these graphs hard to draw in Lombardi style are their yellow-blue quadrilateral faces.
The red parts of the graph are just filler to make these faces have the right angles. The yellow-blue quadrilaterals all share the same two yellow vertices,
and I like to think of them as forming a ring dancing hand-to-hand around these two yellow vertices like <a href="https://en.wikipedia.org/wiki/Dance_(Matisse)">Matisse’s dancers</a>.</p>
<p style="text-align:center"><img src="/blog/assets/2019/Matisse-Dance.jpg" alt="_La Danse_, Henri Matisse, 1910, from https://en.wikipedia.org/wiki/File:Matissedance.jpg" /></p>
<p>When I wrote about <a href="/blog/2018/12/22/circles-crossing-equal.html">quadrilaterals with circular-arc edges meeting at equal angles at each vertex</a> last December, it was these rings of quadrilaterals I was thinking about. As I wrote in my previous post, each of these quadrilaterals has a circumscribing circle. It’s not hard to make one arc polygon with four equal angles, as sharp as you like. But when the angles get sharp and two of these polygons share two opposite vertices and are packed at a tight angle next to each other (as all the yellow-blue quadrilateral faces in these graphs do) each of the two adjacent quadrilaterals must have a deep pocket into which its neighbor reaches to touch its circumcircle, and this forces them to become quite distorted looking.</p>
<p style="text-align:center"><img src="/blog/assets/2019/reacharound.svg" alt="Two sharp circular-arc quadrilaterals reach into each others' pockets to touch their circumscribing circles" /></p>
<p>If we think of these two quadrilaterals as dancers, with their heads and toes at the shared points and with their hands free, then both of them have their right hands (from the perspective of the viewer) held high and their left hands held low. Extending the same picture to a complete ring of dancers, each dancer in the ring must be holding their right hand higher than their neighbor to the left. But this obviously can’t extend all the way around the ring, because when you came back to the dancer you started with their hand should be the same height as it was when you started.</p>
<p>This is all very metaphorical but fortunately this intuition can be turned into a mathematical proof that the drawing doesn’t exist. The correct tools for measuring the heights of the quadrilateral vertices turn out to be <a href="https://en.wikipedia.org/wiki/M%C3%B6bius_transformation">Möbius transformations</a> and <a href="https://en.wikipedia.org/wiki/Bipolar_coordinates">bipolar coordinates</a>, a system for assigning coordinates to points in the plane by the angle they make with two fixed points (the two yellow shared vertices of all the quadrilateral faces of our graph) and the ratio of their distances to the fixed points.</p>
<p style="text-align:center"><img src="/blog/assets/2019/apollo.svg" alt="Level sets for bipolar coordinates" /></p>
<p>Möbius transformations preserve the circular-arc shape of our quadrilateral sides, and the angles at which they meet. When we restrict them to the transformations that leave the two poles of the bipolar coordinate system fixed, they act very nicely on the two coordinates, essentially adding fixed amounts to each coordinate. We can use them to transform our quadrilaterals into a more canonical shape and prove that the radius-ratio coordinate increases from one quadrilateral to the next around our ring of quadrilaterals, getting the same contradiction described above and proving that no drawing exists.</p>
<p>The most obvious questions in the same direction that this paper leaves unsolved are: what about series-parallel graphs where you do not have a fixed planar embedding for the graph? And what about outerplanar graphs (either with the outerplanar embedding or without fixing an embedding)? We neither have a method for finding planar Lombardi drawings of all graphs of these types, nor a proof that these drawings do not exist.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/102256946045372078">Discuss on Mastodon</a>)</p>David EppsteinSeveral of my past papers concern Lombardi drawing, which I and my coauthors named after conspiracy-theory artist Mark Lombardi. In this style of drawing, edges are drawn as circular arcs, and must meet at equal angles around every vertex. Not every graph has such a drawing, but many symmetrical graphs do (example below: the smallest zero-symmetric graph with only two edge orbits).A little knowledge can make the next step harder2019-06-07T22:37:00+00:002019-06-07T22:37:00+00:00https://11011110.github.io/blog/2019/06/07/little-knowledge-can<p>Suppose you have a fill-in-the-unknowns puzzle, like Sudoku. Can making some deductions and filling in those parts of the puzzle make the whole thing harder to solve than it was before you started? Sometimes, yes!</p>
<p>I have in mind human-style puzzle-deduction rules, where you see a piece of the puzzle that matches some pattern and use that to deduce what one of the unknowns should be. And by “harder” I mean that a puzzle that was previously possible to solve by some set of deduction rules, after the deduction, stopped being possible for those rules to solve. Of course this is possible if you have a bad set of deduction rules. But normally, at least for the kinds of patterns I think about when solving puzzles, if a pattern matches in a partially completed puzzle, then it or a simplification of it will continue to match no matter how I fill in more of the unknowns. Most of the deduction pattern that I use are monotonic, in this sense. If you had a collection of patterns that was not monotonic, you could add all ways of partially filling them in to your collection, and get a better set of patterns, right?</p>
<p>Wrong! There can be valid deduction patterns for which this extension to monotonic sets would produce invalid patterns. I’m pretty sure this can happen in Sudoku, actually, but the example I have in mind comes from a different puzzle game I’ve been playing lately, part of Simon Tatham’s puzzle collection, where it’s called “map”. It’s based on the problem of <a href="https://en.wikipedia.org/wiki/Precoloring_extension">precoloring extension</a>: you’re given a partially 4-colored planar map, and you have to fill in the rest of the colors.
And it’s trivially NP-complete, by a reduction from planar 3-coloring (augment a 3-coloring instance by extra vertices of the fourth color, preventing any of the given instance vertices from having that color) but the puzzles usually presented by the puzzle app are solvable by hand, even when they’re large and at the highest of its levels of difficulty.</p>
<p style="text-align:center"><img src="/blog/assets/2019/map-screenshot.png" alt="Screenshot of the map puzzle from Simon Tatham's puzzle collection" /></p>
<p>If that were all, then I think all deduction rules could be made monotonic. But I’m going to tell you one more thing about the puzzle, and this one thing makes it non-monotonic. It is that, like Sudoku, every puzzle has a unique solution.
And <a href="/blog/2005/10/15/assuming-uniqueness-in.html">like Sudoku, the assumption of uniqueness leads to new deduction rules</a>.
You can infer that certain regions have to have certain colors, because if they could be colored anything else then there would be more than one solution.</p>
<p>To see how this works, suppose I had a map like the one shown below (where the white squares have not yet been colored, and I’m only showing a small piece of a larger puzzle):</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonmon1.svg" alt="Uncolored pocket in a map puzzle" /></p>
<p>There’s a pocket of uncolored squares extending into the colored region on the left. If I colored the square at the mouth of the pocket yellow, the inner square of the puzzle would be ambiguous: it has only yellow and blue neighbors, so it could be either red or black.</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonmon2.svg" alt="Ambiguously colored pocket in a map puzzle" /></p>
<p>To prevent this ambiguity, the square at the mouth of the pocket must be black. And to force it to be black, the square one step beyond the mouth must be yellow. So from the initial state and the assumption of a unique solution, it’s possible to infer the colors of three previously-blank squares:</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonmon3.svg" alt="Ambiguously colored pocket in a map puzzle" /></p>
<p>But if I have multiple rules at hand, it’s natural for me to try the weaker and easier ones first. Suppose I had done this, and used a weaker inference rule telling me that the square at the mouth was black.</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonmon4.svg" alt="Partially colored pocket in a map puzzle" /></p>
<p>Or suppose I had used a rule that produced the valid (but even weaker) inference that the inner square must be red.</p>
<p style="text-align:center"><img src="/blog/assets/2019/nonmon5.svg" alt="Even more partially colored pocket in a map puzzle" /></p>
<p>Now I can’t use my strong inference rule and color the outer squares! I’ve lost the information about why I colored the inner pocket squares the way I did, and so I’ve lost the ability to make deductions about how the outer squares should be colored to avoid ambiguities. It would not be a valid pattern to see a puzzle in these states and deduce the color of the remaining squares associated with the pocket. So the extension from my initial (valid) rule, which filled in all three squares when they were all blank, to a monotonic rule that fills in the partially-filled-in pocket in the same way, would be invalid. Of course, if the puzzle solution was unique before, it must still be unique after partially filling in the pocket. But with fewer squares colored, my deductive abilities might not be up to the task of reasoning from the remaining parts of the puzzle to its unique solution.</p>
<p>For the same reason, I might not actually want to color yellow the square beyond the mouth, forgetting why it needs to be yellow. Because what I can infer from the initial state is not merely that it should be colored yellow: it’s that the three outer neighbors of this square must have a permutation of the three other colors, so that this square is forced to be yellow, so that the rest of the pocket will have an unambiguous coloring.</p>
<p>I think what this means is that my knowledge representation (consisting only of blank or filled-in puzzle regions) is inadequate. In practice, I actually use a more complex knowledge representation where (either in my head or with markers provided in the puzzle app) I keep track of which colors are still available for the blank regions, but it’s still inadequate, in the same way. It’s not clear to me what the right knowledge representation is, to allow me to keep track of chains of inferences like “one of these squares must be red to prevent this square from becoming yellow to prevent its neighbor from becoming ambiguous” without the complexity of what I remember for each square blowing up to non-constant.</p>
<p>(<a href="https://mathstodon.xyz/@11011110/102234384857906663">Discuss on Mastodon</a>)</p>David EppsteinSuppose you have a fill-in-the-unknowns puzzle, like Sudoku. Can making some deductions and filling in those parts of the puzzle make the whole thing harder to solve than it was before you started? Sometimes, yes!Linkage2019-05-31T21:40:00+00:002019-05-31T21:40:00+00:00https://11011110.github.io/blog/2019/05/31/linkage<ul>
<li>
<p><a href="https://plus.maths.org/content/democratic-dilemmas">No maths for Europe</a> (<a href="https://mathstodon.xyz/@11011110/102109693915830408"><script type="math/tex">\mathbb{M}</script></a>). Sadly, the EU parliament has passed up a chance to find a nice (or even not-so-nice) <a href="https://en.wikipedia.org/wiki/Highest_averages_method">formula for its apportionment</a> of seats to countries, instead opting for back-room deals and numbers pulled out of a hat.</p>
</li>
<li>
<p>Prominent cryptographers <a href="https://en.wikipedia.org/wiki/Adi_Shamir">Adi Shamir</a> and <a href="https://en.wikipedia.org/wiki/Ross_J._Anderson">Ross J. Anderson</a> were both <a href="https://www.schneier.com/blog/archives/2019/05/why_are_cryptog.html">denied visas to travel to the US</a> for a conference and a book awards ceremony respectively (<a href="https://mathstodon.xyz/@11011110/102112360619663485"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://boingboing.net/2019/05/17/denying-cryptographers-problem.html">see also</a>). Bruce Schneier mentions “two other prominent cryptographers who are in the same boat”. Odd and troubling.</p>
</li>
<li>
<p><a href="https://mathlesstraveled.com/2019/05/09/computing-the-euler-totient-function-part-1/">Three</a> <a href="https://mathlesstraveled.com/2019/05/18/computing-the-euler-totient-function-part-2-seeing-phi-is-multiplicative/">new</a> <a href="https://mathlesstraveled.com/2019/05/27/computing-the-euler-totient-function-part-3-proving-phi-is-multiplicative/">blog posts</a> by Brent Yorgey concern the <a href="https://en.wikipedia.org/wiki/Euler%27s_totient_function">Euler totient function</a> (<a href="https://mathstodon.xyz/@11011110/102118180704402052"><script type="math/tex">\mathbb{M}</script></a>). Computing it quickly would break RSA; Brent describes using factoring to do better than brute force. The problem is clearly in <script type="math/tex">\#\mathsf{P}</script>, and I think it may be a natural candidate for being <script type="math/tex">\#\mathsf{P}</script>-intermediate. Igor Pak (who asked me for <script type="math/tex">\#\mathsf{P}</script>-intermediate problems when I recently visited UCLA) <a href="https://cstheory.stackexchange.com/q/43954/95">thinks the prime-counting function may be another</a>, but neither function is very combinatorial. <a href="/blog/2019/05/27/shattering-quasipolynomiality.html">In a recent blog post I found a couple of combinatorial candidates</a>, but others would be interesting.</p>
</li>
<li>
<p>The image below (<a href="https://commons.wikimedia.org/wiki/File:Gr%C3%BCnbaum-Rigby_configuration,_vector_graphics.svg">as redrawn by Brammers</a>) is the
<a href="https://en.wikipedia.org/wiki/Gr%C3%BCnbaum%E2%80%93Rigby_configuration">Grünbaum–Rigby configuration</a> (<a href="https://mathstodon.xyz/@11011110/102119858635464298"><script type="math/tex">\mathbb{M}</script></a>) with 21 points and lines, 4 points per line, and 4 lines per point. Klein studied it in the complex projective plane in 1879, but it wasn’t known to have this nice real heptagonal realization until Grünbaum and Rigby (1990). The new Wikipedia article on it was started by “Tomo” (whose real-world identity Wikipedia’s arcane outing rules bar me from disclosing, but he just turned 70, so if you figure it out wish him a happy birthday).</p>
<p style="text-align:center"><img src="/blog/assets/2019/grunrig.svg" alt="The Grünbaum–Rigby configuration" width="60%" /></p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Garden_of_Eden_(cellular_automaton)">Garden of Eden</a> (<a href="https://mathstodon.xyz/@11011110/102129199678568606"><script type="math/tex">\mathbb{M}</script></a>). Now a Good Article on Wikipedia.</p>
</li>
<li>
<p><a href="https://www.pnas.org/content/early/2019/05/20/1902572116. Via https://mathstodon.xyz/@helger/102138884170343694">Ono et al prove that almost all Jensen-Pólya polynomials have only real roots</a> (<a href="https://mathstodon.xyz/@11011110/102143915068349382"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://mathstodon.xyz/@helger/102138884170343694">via</a>). The Riemann Hypothesis is equivalent to the statement that they all do. The same thing works for similar families of polynomials associated with partition functions and proves a conjecture of Chen. See also <a href="https://phys.org/news/2019-05-mathematicians-revive-abandoned-approach-riemann.html">a popularized account</a> and <a href="http://people.oregonstate.edu/~petschec/ONTD/Talk1.pdf">Ono’s talk slides</a>.</p>
</li>
<li>
<p><a href="https://scilogs.spektrum.de/hlf/imu-abacus-medal/">The International Mathematical Union is renaming</a> its <a href="https://en.wikipedia.org/wiki/Nevanlinna_Prize">Nevanlinna Prize</a> to be the IMU Abacus Medal (<a href="https://mathstodon.xyz/@11011110/102149453984232922"><script type="math/tex">\mathbb{M}</script></a>). The prize is given every four years for major accomplishments in theoretical computer science. The article doesn’t say why rename but it’s because Nevanlinna was a Nazi sympathizer and collaborator. The prize was named after him in the early 1980s because its funding came from Finland, but Nevanlinna also never had much to do with TCS.</p>
</li>
<li>
<p><a href="https://blog.computationalcomplexity.org/2019/05/notorious-lah-or-notorious-lah-or-you.html">Gasarch on proofreading</a> (<a href="https://mathstodon.xyz/@11011110/102154856271421940"><script type="math/tex">\mathbb{M}</script></a>). Just as in programming, there’s always one more bug.</p>
</li>
<li>
<p><a href="https://en.wikipedia.org/wiki/Ellen_Fetter">Ellen Fetter</a> and <a href="https://en.wikipedia.org/wiki/Margaret_Hamilton_(scientist)">Margaret Hamilton</a>: <a href="https://www.quantamagazine.org/hidden-heroines-of-chaos-ellen-fetter-and-margaret-hamilton-20190520/">Uncredited collaborators with Edward Lorenz at the birth of chaos theory</a> <span style="white-space:nowrap">(<a href="https://mathstodon.xyz/@11011110/102163812229252010"><script type="math/tex">\mathbb{M}</script></a>).</span></p>
</li>
<li>
<p><a href="https://www.nytimes.com/2019/05/17/science/math-physics-knitting-matsumoto.html">Elisabetta Matsumoto is studying the mathematics of knitting</a> (<a href="https://mathstodon.xyz/@11011110/102177647389031957"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://twitter.com/Sabetta_">via</a>), with the hope that it can lead to new programmable metamaterials.</p>
</li>
<li>
<p><a href="https://www.sciencemag.org/news/2019/05/ieee-major-science-publisher-bans-huawei-scientists-reviewing-papers">IEEE bans Huawei employees from reviewing submissions to its journals</a> (<a href="https://mathstodon.xyz/@11011110/102183137967208347"><script type="math/tex">\mathbb{M}</script></a>, <a href="https://news.ycombinator.com/item?id=20046771">via</a>), saying it is forced to do so by US government sanctions.</p>
</li>
<li>
<p>The UCI University Club (which in other places might be called a faculty club) is next door to the building I work in, and has a bustling side business hosting weddings. Here’s the view that greeted me as I left the office this evening, looking across their lawn towards the gazebo (<a href="https://mathstodon.xyz/@11011110/102188200347058355"><script type="math/tex">\mathbb{M}</script></a>).</p>
<p style="text-align:center"><a href="https://www.ics.uci.edu/~eppstein/pix/uclub/index.html"><img src="https://www.ics.uci.edu/~eppstein/pix/uclub/uclub-m.jpg" alt="UCI University Club lawn" style="border-style:solid;border-color:black;" /></a></p>
</li>
<li>
<p>Line arrangements in architecture (<a href="https://mathstodon.xyz/@11011110/102193430755771327"><script type="math/tex">\mathbb{M}</script></a>): the beams of <a href="https://en.wikipedia.org/wiki/Mathematical_Bridge">Cambridge’s Mathematical Bridge</a> form tangent lines to its arch and then extend through and support its trusswork, while another set of radial lines tie the structure together. The bridge just looks like a wood truss bridge in real life but <a href="https://commons.wikimedia.org/wiki/File:Mathematical_Bridge_tangents.jpg">this artificially-colored image</a> makes the underlying structure clearer.</p>
<p style="text-align:center"><img src="/blog/assets/2019/cambridgebridge.jpg" alt="Cambridge's Mathematical Bridge" style="border-style:solid;border-color:black;" width="80%" /></p>
</li>
</ul>David EppsteinNo maths for Europe (). Sadly, the EU parliament has passed up a chance to find a nice (or even not-so-nice) formula for its apportionment of seats to countries, instead opting for back-room deals and numbers pulled out of a hat.Shattering and quasipolynomiality2019-05-27T17:07:00+00:002019-05-27T17:07:00+00:00https://11011110.github.io/blog/2019/05/27/shattering-quasipolynomiality<p>An inadequately-explained phenomenon in computational complexity theory is that there are so few natural candidates for <a href="https://en.wikipedia.org/wiki/NP-intermediate"><script type="math/tex">\mathsf{NP}</script>-intermediate problems</a>, problems in <script type="math/tex">\mathsf{NP}</script> but neither in <script type="math/tex">\mathsf{P}</script> nor <script type="math/tex">\mathsf{NP}</script>-complete. Of course, if <script type="math/tex">\mathsf{P}=\mathsf{NP}</script> there are none, and the <a href="https://en.wikipedia.org/wiki/Schaefer%27s_dichotomy_theorem">dichotomy theorem</a> implies that there are no intermediate Boolean constraint satisfaction problems. But there are a lot of other types of problems in <script type="math/tex">\mathsf{NP}</script>, and a theorem of Ladner<sup id="fnref:l"><a href="#fn:l" class="footnote">1</a></sup> shows that there should be an infinite hierarchy of degrees of hardness within <script type="math/tex">\mathsf{NP}</script>. So where are all the members of this hierarchy, and why are they so shy?</p>
<p>The same thing happens not just for <script type="math/tex">\mathsf{NP}</script> but for other related complexity classes like <a href="https://en.wikipedia.org/wiki/%E2%99%AFP"><script type="math/tex">\#\mathsf{P}</script></a>. There should be many <script type="math/tex">\#\mathsf{P}</script>-intermediate classes but we know even fewer than for <script type="math/tex">\mathsf{NP}</script>. <a href="https://mathstodon.xyz/@11011110/102118180704402052">I recently posted</a> about a discussion I had with Igor Pak on this issue, in which we suggested to each other two number-theoretic candidates for being <script type="math/tex">\#\mathsf{P}</script>-intermediate, the <a href="https://en.wikipedia.org/wiki/Euler%27s_totient_function">Euler totient function</a> and the <a href="https://en.wikipedia.org/wiki/Prime-counting_function">prime-counting function</a> (see also <a href="https://cstheory.stackexchange.com/q/43954/95">Igor’s StackExchange question on this</a>). But although they’re in <script type="math/tex">\#\mathsf{P}</script>, neither of these functions is very combinatorial.</p>
<p>So anyway, the point of all this is to discuss more candidates for being <script type="math/tex">\#\mathsf{P}</script>-intermediate that are, I think, natural and combinatorial. They’re part of a family of problems that include a couple of related candidates for being <script type="math/tex">\mathsf{NP}</script>-intermediate, and even a candidate for being <script type="math/tex">\Sigma_2^P</script>-intermediate. These problems come from computational learning theory, or alternatively they can be seen as coming from mathematical logic, hereditary graph theory, and the theory of the <a href="https://en.wikipedia.org/wiki/Rado_graph">Rado graph</a>. And they’re all at what is in some sense the shallow end of the intermediate problems: they’re solvable in quasi-polynomial time, meaning <script type="math/tex">2^{(\log n)^{O(1)}}</script>, but not known to be solvable in polynomial time. So this is pretty strong evidence that they’re not complete for their respective complexity classes, but weaker evidence than usual that they’re not polynomial.</p>
<p>In learning theory, a family of sets <script type="math/tex">\mathscr{F}</script> is said to <em>shatter</em> another set <script type="math/tex">S</script> (not necessarily belonging to <script type="math/tex">\mathscr{F}</script>) if every subset of <script type="math/tex">S</script>, including the empty set and <script type="math/tex">S</script> itself, can be obtained by intersecting <script type="math/tex">S</script> with some member of <script type="math/tex">\mathscr{F}</script>. The <a href="https://en.wikipedia.org/wiki/Vapnik%E2%80%93Chervonenkis_dimension">Vapnik–Chervonenkis dimension</a> of <script type="math/tex">\mathscr{F}</script> is just the size of the largest set that is shattered by <script type="math/tex">\mathscr{F}</script>. If we let <script type="math/tex">m=\vert\mathscr{F}\vert</script> (the number of sets in the family) and <script type="math/tex">n=\vert\bigcup\mathscr{F}\vert</script> (the number of distinct elements in those sets), then the dimension is clearly at most <script type="math/tex">\log_2 m</script>, because sets of size larger than <script type="math/tex">\log_2 m</script> have too many subsets for them all to be formed by intersection with a member of <script type="math/tex">\mathscr{F}</script>. Therefore, the following problem can be solved in quasipolynomial time, by a brute-force search of the <script type="math/tex">O(n^{\log_2 m})</script> small-enough subsets of <script type="math/tex">\bigcup\mathscr{F}</script>:<sup id="fnref:lmr"><a href="#fn:lmr" class="footnote">2</a></sup></p>
<dl>
<dt>VC-dimension (largest shattered set)</dt>
<dd>Input: family of sets <script type="math/tex">\mathscr{F}</script>, number <script type="math/tex">d</script>
<p>Output: true if <script type="math/tex">\mathscr{F}</script> shatters a set of size <script type="math/tex">\ge d</script>, false otherwise.</p>
</dd>
</dl>
<p>The same quasipolynomial time bound applies to the following related problems,
the first of which is also in <script type="math/tex">\mathsf{NP}</script> and the second of which is in <script type="math/tex">\#\mathsf{P}</script>:</p>
<dl>
<dt>Smallest non-shattered set</dt>
<dd>Input: family of sets <script type="math/tex">\mathscr{F}</script>, number <script type="math/tex">k</script>
<p>Output: True if there exists a subset <script type="math/tex">S</script> of <script type="math/tex">\bigcup\mathscr{F}</script>
of size <script type="math/tex">\le k</script> that is not shattered by <script type="math/tex">\mathscr{F}</script>, false otherwise.</p>
</dd>
<dt>Number of shattered sets</dt>
<dd>Input: family of sets <script type="math/tex">\mathscr{F}</script>
<p>Output: the number of sets shattered by <script type="math/tex">\mathscr{F}</script>.</p>
</dd>
</dl>
<p>For the first two problems, being non-<script type="math/tex">\mathsf{NP}</script>-complete hinges on the assumption that <script type="math/tex">\mathsf{P}\ne\mathsf{NP}</script>, but for the number of shattered sets, being non-<script type="math/tex">\#\mathsf{P}</script>-complete (under <a href="https://en.wikipedia.org/wiki/Polynomial-time_counting_reduction">counting reductions</a>) is unconditional: the output doesn’t provide enough bits of information to encode the answers to all other <script type="math/tex">\#\mathsf{P}</script> problems.
The VC-dimension is hard to approximate under a form of the <a href="https://en.wikipedia.org/wiki/Exponential_time_hypothesis">exponential time hypothesis</a>, strongly suggesting that it cannot be computed exactly in polynomial time.<sup id="fnref:mr"><a href="#fn:mr" class="footnote">3</a></sup></p>
<p>To see that the two existence problems can sometimes both have answers that are logarithmic, it’s helpful to turn to the theory of random graphs, and of <em>the</em> random graph, the <a href="https://en.wikipedia.org/wiki/Rado_graph">Rado graph</a>. This graph obeys a collection of <em>extension axioms</em> according to which, for every two disjoint finite subsets of vertices, there exists another vertex adjacent to everything in the first subset and to nothing in the second subset. Using these axioms, we can build up induced copies of any finite or countable subgraph, one vertex at a time, using a greedy algorithm. Based on this property, let’s define a subset <script type="math/tex">S</script> of the vertices in an undirected graph to be <em>extensible</em> if, for every partition of <script type="math/tex">S</script> into two disjoint subsets, there exists another vertex outside <script type="math/tex">S</script> that is adjacent to everything in the first subset and to nothing in the second subset. This is nothing more than being shattered by the neighborhoods of the vertices outside <script type="math/tex">S</script>. So we have the following corresponding problems.</p>
<dl>
<dt>Largest extensible set</dt>
<dd>Input: Undirected graph <script type="math/tex">G</script>, number <script type="math/tex">d</script>
<p>Output: true if <script type="math/tex">G</script> has an extensible set of size <script type="math/tex">\ge d</script>, false otherwise.</p>
</dd>
<dt>Smallest non-extensible set</dt>
<dd>Input: Undirected graph <script type="math/tex">G</script>, number <script type="math/tex">k</script>
<p>Output: true if <script type="math/tex">G</script> has a non-extensible set of size <script type="math/tex">\le k</script>, false otherwise.</p>
</dd>
<dt>Smallest missing induced subgraph</dt>
<dd>Input: Undirected graph <script type="math/tex">G</script>, number <script type="math/tex">k</script>
<p>Output: true if there is a graph <script type="math/tex">H</script> on at most <script type="math/tex">k</script> vertices that
is not an induced subgraph of <script type="math/tex">G</script>, false otherwise.</p>
</dd>
<dt>Number of extensible sets</dt>
<dd>Input: Undirected graph <script type="math/tex">G</script>
<p>Output: The number of extensible sets of vertices of <script type="math/tex">G</script>.</p>
</dd>
</dl>
<p>The smallest missing induced subgraph size naturally falls into the complexity class <script type="math/tex">\Sigma_2^P</script> of problems for which you can guess a solution (the missing subgraph) but then verifying it involves solving a co-<script type="math/tex">\mathsf{NP}</script> problem (is this subgraph missing).
It is greater than the size of the smallest non-extensible set, because if you try to build up a given induced subgraph by adding one vertex at a time greedily you can only get stuck at a non-extensible set. There must be a missing induced subgraph of size at most <script type="math/tex">2\log_2 n\bigl(1+o(1)\bigr)</script>, because there are <script type="math/tex">2^{\binom{k}{2}}</script> isomorphism classes of <script type="math/tex">k</script>-vertex labeled graphs and fewer than <script type="math/tex">n^k=2^{k\log_2 n}</script> ways of choosing which of the <script type="math/tex">k</script> labeled vertices correspond to vertices of <script type="math/tex">G</script>, so for larger values of <script type="math/tex">k</script> than this bound there are more labeled graphs than placements of them as induced subgraphs. Another way of thinking about the smallest missing induced subgraph problem is that we are asking for the largest <script type="math/tex">k</script> for which <script type="math/tex">G</script> is <a href="https://en.wikipedia.org/wiki/Universal_graph"><script type="math/tex">k</script>-universal</a>: it contains all graphs on at most <script type="math/tex">k</script> vertices as induced subgraphs.</p>
<p>The smallest non-extensible set and the smallest missing subgraph are both easy on any hereditary class of graphs, because these classes always have a missing subgraph of size <script type="math/tex">O(1)</script>. On the other hand, if <script type="math/tex">G</script> is chosen uniformly at random among the <script type="math/tex">n</script>-vertex graphs, then any small subset of its vertices is extensible with high probability, so the smallest non-extensible set has expected size <script type="math/tex">\log_2 n-O(\log\log n)</script>.</p>
<p>If these problems are not <script type="math/tex">\mathsf{NP}</script>- and <script type="math/tex">\#\mathsf{P}</script>-complete, what are they? Papadimitriou and Yannakakis<sup id="fnref:py"><a href="#fn:py" class="footnote">4</a></sup> define a complexity class <script type="math/tex">\mathsf{LOGNP}</script>, and show that VC-dimension is <script type="math/tex">\mathsf{LOGNP}</script>-complete. Presumably, because it’s so similar, the same is true for the largest extensible set. Maybe it’s possible to prove completeness for the smallest missing induced subgraph in an analogue of <script type="math/tex">\Sigma_2^P</script> at the level of <script type="math/tex">\mathsf{LOGNP}</script>, and to prove completeness for the number of shattered sets and number of extensible sets in an analogue of <script type="math/tex">\#\mathsf{P}</script> at this level.</p>
<div class="footnotes">
<ol>
<li id="fn:l">
<p>Ladner, Richard (1975), “<a href="https://doi.org/10.1145/321864.321877">On the structure of polynomial time reducibility</a>”, <em>J. ACM</em> 22 (1): 155–171. <a href="#fnref:l" class="reversefootnote">↩</a></p>
</li>
<li id="fn:lmr">
<p>Linial, Nathan, Mansour, Yishay, and Rivest, Ronald L. (1991), “<a href="https://doi.org/10.1016/0890-5401(91)90058-A">Results on learnability and the Vapnik–Chervonenkis dimension</a>”, <em>Inf. Comput.</em> 90 (1): 33–49. <a href="#fnref:lmr" class="reversefootnote">↩</a></p>
</li>
<li id="fn:mr">
<p>Manurangsi, Pasin, and Rubinstein, Aviad (2017), “<a href="http://proceedings.mlr.press/v65/manurangsi17a.html">Inapproximability of VC dimension and Littlestone’s dimension</a>”, <em>Proc. 2017 Conf. Learning Theory (COLT 2017)</em>, Proceedings of Machine Learning Research 65, pp. 1432–1460. <a href="#fnref:mr" class="reversefootnote">↩</a></p>
</li>
<li id="fn:py">
<p>Papadimitriou, Christos H., and Yannakakis, Mihalis (1996), “<a href="https://doi.org/10.1006/jcss.1996.0058">On limited nondeterminism and the complexity of the V–C dimension</a>”, <em>J. Comput. Syst. Sci.</em> 53 (2): 161–170. <a href="#fnref:py" class="reversefootnote">↩</a></p>
</li>
</ol>
</div>
<p>(<a href="https://mathstodon.xyz/@11011110/102170815471019923">Discuss on Mastodon</a>)</p>David EppsteinAn inadequately-explained phenomenon in computational complexity theory is that there are so few natural candidates for -intermediate problems, problems in but neither in nor -complete. Of course, if there are none, and the dichotomy theorem implies that there are no intermediate Boolean constraint satisfaction problems. But there are a lot of other types of problems in , and a theorem of Ladner1 shows that there should be an infinite hierarchy of degrees of hardness within . So where are all the members of this hierarchy, and why are they so shy? Ladner, Richard (1975), “On the structure of polynomial time reducibility”, J. ACM 22 (1): 155–171. ↩