0xDE
http://11011110.livejournal.com/
0xDE - LiveJournal.comSun, 01 May 2016 07:14:18 GMTLiveJournal / LiveJournal.com110111107784841personalhttp://l-userpic.livejournal.com/32934265/77848410xDE
http://11011110.livejournal.com/
100100http://11011110.livejournal.com/328417.htmlSun, 01 May 2016 07:14:18 GMTLinkage
http://11011110.livejournal.com/328417.html
<ul><li><a href="https://en.wikipedia.org/wiki/Book_embedding">Book embedding on Wikipedia</a> (<a href="https://plus.google.com/100003628603413742554/posts/L6dPgV7aqXd">G+</a>)</li>
<li><a href="http://www.boredpanda.es/plantas-geometricas">The fractal geometry of plants</a> (<a href="https://plus.google.com/100003628603413742554/posts/gXHW9aki7QZ">G+</a>)</li>
<li><a href="https://medium.com/@milistjohn/i-am-alex-st-john-s-daughter-and-he-is-wrong-about-women-in-tech-4728545e7c0e#.4szklt59i">A great combination of a success story of an individual woman in tech, a debunking of some nasty misogynist myths, and a collection of helpful resource links for others on the same path</a> (<a href="https://plus.google.com/100003628603413742554/posts/K3Z9Q2cWmRv">G+</a>)</li>
<li><a href="https://vimeo.com/157620840">
Trailer for a documentary on the shifting technology of graphic design from hand layout to computers</a> (<a href="https://plus.google.com/100003628603413742554/posts/SZoAteBLtF7">G+</a>)</li>
<li><a href="http://www.nature.com/news/peer-review-troubled-from-the-start-1.19763">Complaints about problems with peer review turn out to be far from new</a> (<a href="https://plus.google.com/100003628603413742554/posts/aYq1nTQY2q7">G+</a>)</li>
<li><a href="https://en.wikipedia.org/wiki/Curve-shortening_flow">Curve-shortening flow on Wikipedia</a> (<a href="https://plus.google.com/100003628603413742554/posts/KeABxYM2mDv">G+</a>)</li>
<li><a href="http://poynder.blogspot.com/2016/04/the-open-access-interviews-sir-timothy.html">The Open Access Interviews: Timothy Gowers</a> (<a href="https://plus.google.com/100003628603413742554/posts/ADFYb5DzBLk">G+</a>)</li>
<li><a href="http://techcrunch.com/2016/04/26/it-isnt-just-uber-carnegie-mellons-computer-science-dean-on-its-poaching-problem/">CMU’s computer science dean on its poaching problem</a> (<a href="https://plus.google.com/100003628603413742554/posts/PUmAu2BjjkL">G+</a>)</li>
<li><a href="http://danielwalsh.tumblr.com/post/2173134224/sudo-make-me-a-pseudosphere">From tilted decks of playing cards to hyperbolic geometry</a> (<a href="https://plus.google.com/100003628603413742554/posts/b2fFCynAc3W">G+</a>)</li>
<li><a href="https://sbseminar.wordpress.com/2016/04/26/springers-copyright-agreement-is-according-to-springer-compatible-with-posting-your-article-on-the-arxiv-under-the-cc-by-0-license/">Springer journal copyrights are compatible with arXiv preprints</a> (<a href="https://plus.google.com/100003628603413742554/posts/QUKWtURCkRX">G+</a>)</li>
<li><a href="http://twocubes.tumblr.com/post/89441527133/1-2-5">Pinwheel zoom</a> (<a href="https://plus.google.com/100003628603413742554/posts/Va2yewVq731">G+</a>)</li></ul>http://11011110.livejournal.com/328417.htmlfractalsfeminismgraph drawingwikipediatilingopen accessgeometryacademiapublic0http://11011110.livejournal.com/327966.htmlSun, 01 May 2016 02:58:54 GMTThe shape of the Kresge Auditorium
http://11011110.livejournal.com/327966.html
The image below is a study of the geometry of MIT's <a href="https://en.wikipedia.org/wiki/Kresge_Auditorium">Kresge Auditorium</a>.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/Kresge.png"></div><br /><br />I found <a href="http://mathtourist.blogspot.com/2011/12/geometreks-in-boston.html">an article by Ivars Petersen</a> claiming that this building's floor plan is "close to the geometry of a Reuleaux triangle" and I wanted to determine whether that was true. Other sources such as <a href="https://www.technologyreview.com/s/404017/the-amazing-kresge-turns-50/">a 50-year retrospective published by MIT</a> state that the roof of the building has the shape of an eighth of a sphere (a spherical right equilateral triangle); see <a href="http://fab.cba.mit.edu/classes/863.15/section.Harvard/people/Basangwa/week3.html">this link on making a 3d model of the shape</a> for an amusingly-captioned visualization of its construction.<br /><br />So, the floor plan is the projection of an eighth-sphere; what is this shape? The edges of the roof are great circle arcs in 3d, so they project to ellipses in 2d. By my calculation, the aspect ratio of these ellipses is √3:1. To see this, let the sphere be the unit sphere in 3d, with the three corners of the roof at (1,0,0), (0,1,0), and (0,0,1), and project it onto the plane x+y+z=0. Then the semimajor axis of the ellipse is the radius of the sphere, 1, while the semiminor axis is the distance from the origin of the projected midpoint of an arc. The midpoint is √2(1/2,1/2,0), its projection is √2(1/6,1/6,-1/3), and the distance is 1/√3. So I drew three ellipses with that aspect ratio, rotated by a third of a circle around their common center, and to complete the illusion of being three-dimensional (though really it's just a 2d drawing) I added another circle, with radius equal to the semimajor axis of the ellipses. Those are the grey and black parts of the figure. The shape of the auditorium floor plan is the central triangle outlined by black arcs.<br /><br />The red circles in the drawing are centered at the corners of this triangle, and pass through the other two corners. Their intersection forms a Reuleaux triangle, overlaid on the other curved triangle formed by the projected roof. As you can see, the floor plan is not actually a Reuleaux triangle. It differs from Reuleaux in two significant ways: It has slightly less area, and it has elliptical arcs for sides (with variable curvature, bendier near the corners and flatter near the centers of each side) rather than circular arcs. On the other hand, as Petersen stated, it is very close.<br /><br />So, to state the obvious, not all curvy triangles are alike! Another example of this same phenomenon is given by the rotor of the <a href="https://en.wikipedia.org/wiki/Wankel_engine">Wankel rotary engine</a>: also a curved triangle with sharper angles than the Reuleaux, but with another kind of curve for its sides (the <a href="http://demonstrations.wolfram.com/WankelRotaryEngineEpitrochoidalEnvelopes/">envelope of an epitrochoid</a>). I'm pretty sure this envelope is not an ellipse, even though I don't know how to draw it. And the angles are definitely different. So the Wankel would be yet another kind of curved equilateral triangle that differs from the first two.<a name='cutid1-end'></a>http://11011110.livejournal.com/327966.htmlarchitecturegeometrypublic0http://11011110.livejournal.com/327681.htmlThu, 21 Apr 2016 03:31:39 GMTCuckoo filters and their analysis
http://11011110.livejournal.com/327681.html
Do you have a software project in which you need a fast and space-efficient approximate set data structure, like a <a href="https://en.wikipedia.org/wiki/Bloom_filter">Bloom filter</a>? Then probably what you want is actually a <a href="https://github.com/efficient/cuckoofilter">cuckoo filter</a>, a plug-in replacement for Bloom filters that is faster, more space-efficient, and more versatile (because it allows elements to be deleted as well as inserted).<br /><br />Michael Mitzenmacher has described cuckoo filters in <a href="http://mybiasedcoin.blogspot.com/2014/10/cuckoo-filters.html">an earlier blog post</a> (as well as of course in the <a href="http://www.eecs.harvard.edu/~michaelm/postscripts/cuckoo-conext2014.pdf">published paper about them</a>) but the basic idea is to use a <a href="https://en.wikipedia.org/wiki/Cuckoo_hashing">cuckoo hash table</a> cut down in size by storing only a short fingerprint of each key rather than a whole key-value pair. As in a normal cuckoo hash table, keys (or rather their fingerprints) get moved around to make room for other keys, and that leads to a small complication: when you're moving a fingerprint, you don't know which key it came from, so the location to move it to needs to be computable based only on where it is now and on its value. More specifically, the other location for any fingerprint ends up being the xor of its current location with a hash of its value.<br /><br />Although cuckoo filters have been implemented (see first link) and work well in practice, one drawback is that we didn't know whether they also work well in theory. Conversely, an earlier data structure of Pagh, Pagh, and Rao (<a href="http://www.itu.dk/people/pagh/papers/bloom.pdf">SODA 2005</a>) has all the same advantages of cuckoo filters over Bloom filters, but for it, as far as I am aware, there was no implementation, only theory. In contrast, Bloom filters work both actually and theoretically: there is no major gap between theory and practice.<br /><br />So my new paper, "Cuckoo filter: simplification and analysis" (<a href="http://arxiv.org/abs/1604.06067">arXiv:1604.06067</a>, to appear at SWAT) is aimed at closing this gap, although it does not fully do so. What it does is to show that, if you omit the hash of the fingerprint and instead move each fingerprint to the xor of its current location and its value, then cuckoo filtering works well in theory. This simplification causes the filter to be partitioned into many small sub-filters, which operate independently of each other, with each key being assigned randomly to one of them. The main ideas of the paper are that this assigment of keys to sub-filters is very unlikely to be unbalanced and that, within each sub-filter, the data structure behaves just like a cuckoo hash, without any restriction on which pairs of cells the keys can be mapped to. It uses Chernoff bounds to prove the balancing part (as you do), and then just plugs in the existing analysis of cuckoo hashing for the rest.<br /><br />Of course, it would be better to prove that the actual cuckoo filter works well than this simplification, since I don't think the simplification is likely to be a practical improvement. The graph whose edges connect pairs of cells where a single fingerprint can go has a lot of nice structure and symmetry (usually either a Cayley graph or a disjoint union of hypercubes, compared to a disjoint union of cliques for the simplification), suggesting that spectral graph theory might be helpful, but that's not my forté. Also, my analysis only holds for random hash functions, so it would be good to extend it to realistic methods such as <a href="https://en.wikipedia.org/wiki/Tabulation_hashing">tabulation hashing</a>. Tabulation hashing is known to work for cuckoo hashing, but to get my analysis to work it needs to be extended to blocked cuckoo hashing, a variation that allows multiple keys per cell. Ideally, an analysis of the full cuckoo filter algorithm with a realistic hash function would be best.<br /><br />But you don't need to wait for that analysis to happen to go start using these things in your code: they already work now. We just don't completely understand why they work.<a name='cutid1-end'></a>http://11011110.livejournal.com/327681.htmldata structurespaperspublic2http://11011110.livejournal.com/327648.htmlMon, 18 Apr 2016 06:23:34 GMTLocal and inductive properties of graphs
http://11011110.livejournal.com/327648.html
At LATIN, Allan Borodin brought my attention to a recent paper of his with Yuli Ye, "<a href="http://www.cs.toronto.edu/~bor/Papers/inductive-independence.pdf">Elimination graphs</a>" (TALG 2012), about an idea that combines local properties of graphs with degeneracy.<br /><br />For a graph property P, a graph G is "locally P" if the <a href="https://en.wikipedia.org/wiki/Neighbourhood_(graph_theory)">open neighborhood</a> of each vertex v in G (the subgraph of G induced by the neighbors of v) has property P. For instance, a graph is locally cyclic if every vertex's neighbors induce a cycle; these are the graphs of certain well-behaved surface triangulations (every clique of the graph is a simplex in the triangulation). In the hecatohedron below, every neighborhood is a 5-cycle or a 6-cycle.<br /><br /><div align="center"><img src="https://www.ics.uci.edu/~eppstein/junkyard/hecatohedron.gif"></div><br /><br />Local graph properties work particularly well when P is hereditary (that is, when induced subgraphs of graphs with property P also have property P). For then the property of being locally P is also hereditary. And, in this case, being locally P is a generalization of being P. For instance, the <a href="https://en.wikipedia.org/wiki/Claw-free_graph">claw-free graphs</a> are exactly the locally 2-independent graphs (every neighborhood has independence number at most 2); being 2-independent and being claw-free are both hereditary. The graphs of bounded degree are exactly the locally bounded graphs (every neighborhood has constant size).<br /><br />Analogously, Borodin and Ye define an undirected graph to be "inductively P" if its vertices can be ordered into a sequence so that, for each v, the graph induced by the earlier neighbors of v in the sequence has property P. Again, this works particularly well when P is hereditary, because then being inductively P is also hereditary and generalizes P. Additionally, when P is hereditary, the set of orderings in which the vertices can be removed (before reversal) forms an <a href="https://en.wikipedia.org/wiki/Antimatroid">antimatroid</a>, and a valid vertex ordering can be found by a greedy algorithm that repeatedly removes a vertex from the given graph whose neighbors have property P. This algorithm can remove all vertices if and only if the graph is inductively P, in which case the inductive ordering is the reverse of the removal ordering. Therefore, whenever P is hereditary and can be tested in polynomial time, so can the property of being inductively P.<br /><br />With this definition, a graph has bounded <a href="https://en.wikipedia.org/wiki/Degeneracy_(graph_theory)">degeneracy</a> if and only if it is inductively bounded, with the degeneracy equal to the largest earlier-neighborhood size in an ordering that minimizes this size. A graph is <a href="https://en.wikipedia.org/wiki/Chordal_graph">chordal</a> if and only if it is inductively complete (inductively 1-independent), and the inductive ordering in this case is called an elimination ordering. In this way, Borodin and Ye formalize a common generalization of degeneracy orderings and elimination orderings. However, another standard type of vertex ordering, a <a href="https://en.wikipedia.org/wiki/Perfectly_orderable_graph">perfect ordering</a>, can't be defined via inductive hereditary properties, because the orderings are NP-hard to find.<br /><br />The particular property most closely examined by Borodin and Ye is that of being inductively k-independent, which generalizes chordal graphs (k=1), degenerate graphs (k=degeneracy), claw-free graphs (k=2), planar graphs (k=3, beating the degeneracy bound of 5), unit disk graphs (k=3), and disk graphs more generally (order by radius to get k=5). With this property, for instance, a greedy coloring in the inductive order uses at most k times the optimal number of colors (because any coloring of the earlier neighborhood of any vertex uses at most k times the number of colors that would have been used in an optimal coloring). They also show that the inductively k-independent graphs have (k+1)-approximations to their maximum weighted independent set.<br /><br />Borodin and Ye give a time bound of O(n<sup>k+2</sup>) time for recognizing inductively k-independent graphs, or O(n<sup>k+3</sup>) in linear space, when k is a constant. They list improving these time bounds as their most important open problem. Here, some observations already used for recognizing claw-free graphs may help. For instance, each removed vertex can have only O(sqrt m) neighbors (else its neighborhood would be too sparse to be only k-independent), an observation made in the claw-free case by <a href="https://dx.doi.org/10.1016%2FS0020-0190%2800%2900047-8">Kloks, Kratsch & Müller (2000)</a>. And, when seeking a vertex to remove, only O(sqrt m) of them can even have this many neighbors. This immediately improves the linear-space algorithm to O(nm<sup>(k+2)/2</sup>). It seems likely that the fast matrix multiplication methods used to speed up claw-free graph recognition can also be used here to reduce the exponent (as Borodin and Ye already do for some small values of k), but I haven't worked out the details. On the other hand, one can't do much better, because a graph G has independence number at most k if and only if the graph formed from G by adding k+1 independent new vertices, each adjacent to all the original vertices, is inductively k-independent. Therefore, inductive k-independence is no easier than k-independence, and (under the <a href="https://en.wikipedia.org/wiki/Exponential_time_hypothesis">exponential time hypothesis</a>) it requires an exponent linear in k by results of <a href="https://dx.doi.org/10.1016%2Fj.jcss.2006.04.007">Chen et al. (2006)</a>.<a name='cutid1-end'></a>http://11011110.livejournal.com/327648.htmlantimatroidsgraph theorypublic2http://11011110.livejournal.com/327399.htmlSun, 17 Apr 2016 01:38:06 GMTPhotos from LATIN
http://11011110.livejournal.com/327399.html
I recently traveled to Ensenada (my first visit to Mexico, despite its closeness) for <a href="http://latin2016.natix.org/">LATIN 2016</a>. This was our view every morning on our arrival to <a href="https://en.wikipedia.org/wiki/Ensenada_Center_for_Scientific_Research_and_Higher_Education">CICESE</a>, the research center hosting the conference, for the conference breakfast.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/pix/ensenada/CICESE2-m.jpg" border="2" style="border-color:black;" /></div><br /><br /><a href="http://www.ics.uci.edu/~eppstein/pix/ensenada/index.html">The rest of my photos</a> include several from the conference excursion and dinner in the <a href="https://en.wikipedia.org/wiki/Guadalupe,_Baja_California">Valle de Guadalupe</a>, Mexico's wine region.http://11011110.livejournal.com/327399.htmlconferencesphotographylandscapepublic0http://11011110.livejournal.com/326975.htmlSat, 16 Apr 2016 04:42:36 GMTLinkage
http://11011110.livejournal.com/326975.html
I continue to find it ironic that the best way I can find to index my posts on Google+, a social network platform launched in 2011 by a major search engine company, and to make it possible for me to search for and find the old posts, is to copy them onto a much older social network platform from 1999 that, except for the Russians, has now mostly fallen into disuse.<br /><ul><li><a href="https://treemapart.wordpress.com/">Ben Schneiderman's treemap art</a> (<a href="https://plus.google.com/100003628603413742554/posts/YLaCJUYxcPe">G+</a>)</li><br /><li><a href="http://evahild.com/">Eva Hild, ceramic artist whose works look like minimal surfaces</a> (<a href="https://plus.google.com/100003628603413742554/posts/ePY22PCkXZt">G+</a>)</li><br /><li><a href="https://plus.google.com/+IsaacCalder/posts/7STiWdYBsiF">Symmetric unfolding of the polytope formed by removing one vertex from a 4-cube</a> (<a href="https://plus.google.com/100003628603413742554/posts/3zGDMzBqsMy">G+</a>)</li><br /><li><a href="http://mentalfloss.com/article/65979/origami-pot-changes-size-plants-grow">Auto-resizing origami flowerpot</a> (<a href="https://plus.google.com/100003628603413742554/posts/NEJHwYjHMz6">G+</a>)</li><br /><li><a href="http://motherboard.vice.com/read/wikipedia-zero-facebook-free-basics-angola-pirates-zero-rating">Is it moral to zero-rate Wikipedia in third-world countries?</a> (<a href="https://plus.google.com/100003628603413742554/posts/3j4bAEJebpn">G+</a>)</li><br /><li><a href="http://crookedtimber.org/2016/04/06/38290/">Some tips to encourage more egalitarian contributions in discussion-based classes</a> (<a href="https://plus.google.com/100003628603413742554/posts/BbcDxgVf7kw">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Linear_probing">Linear probing, now a good article on Wikipedia</a> (<a href="https://plus.google.com/100003628603413742554/posts/VUSzX6sdXRg">G+</a>)</li><br /><li><a href="http://nautil.us/issue/35/boundaries/why-nature-prefers-hexagons">Hexagonal structures in nature</a> (<a href="https://plus.google.com/100003628603413742554/posts/PAntH5HhQT8">G+</a>)</li><br /><li><a href="http://i.imgur.com/Bbr7s8f.gif">Portrait of the scientist as an infant</a> (shadowplay GIF; <a href="https://plus.google.com/100003628603413742554/posts/DW8HxPbaiRA">G+</a>)</li><br /><li><a href="http://chronicle.com/blogs/ticker/federal-agents-set-up-a-fake-university-to-make-arrests-on-visa-fraud/110079">Fake university exposes visa fraud</a> (<a href="https://plus.google.com/100003628603413742554/posts/cmXdhqjU9HQ">G+</a>; discussion involves the "true" purpose of degree programs)</li><br /><li><a href="https://ilaba.wordpress.com/2016/04/10/arxiv-comments-and-quality-control/">Do open peer-review systems play into sexism?</a> (<a href="https://plus.google.com/100003628603413742554/posts/AmptHg341fE">G+</a>; and if you think they might, be sure to contribute to the <a href="https://cornell.qualtrics.com/SE/?SID=SV_brM4ULfjHGClNJj">arXiv user survey</a> before it closes on April 26)</li><br /><li><a href="https://en.wikipedia.org/wiki/Andrew_M._Gleason">Andrew Gleason</a>, a mathematician who made contributions to Lie group theory, quantum mechanics, Ramsey theory, coding theory, cryptanalysis, and calculus reform, among others (<a href="https://plus.google.com/100003628603413742554/posts/LPCKZSCpSCn">G+</a>)</li><br /><li><a href="http://paleofuture.gizmodo.com/the-untold-story-of-the-teen-hackers-who-transformed-th-1770977586">Teen hackers in the early 1980s</a> (<a href="https://plus.google.com/100003628603413742554/posts/AiHpK7vbUMA">G+</a>)</li><br /><li><a href="http://blogs.ams.org/visualinsight/2016/04/15/barth-sextic/">The degree-6 surface with the maximum possible number of nodes (65 of them)</a>. But <a href="https://en.wikipedia.org/wiki/Nodal_surface">for higher degrees the maximum number is still unknown</a> (<a href="https://plus.google.com/100003628603413742554/posts/VNdJ8uemAHK">G+</a>)</li><br /><li><a href="http://katsumihayakawa.com/paperbonsai.html">3d model of an imagined city, made entirely out of paper by Katsumi Hayakawa</a> (<a href="https://plus.google.com/100003628603413742554/posts/XjFpoXLfxCz">G+</a>)</li><br /></ul>http://11011110.livejournal.com/326975.htmlfeminismarchitecturewikipediahashingpolytopesartgeometryacademiaorigamipublic2http://11011110.livejournal.com/326877.htmlFri, 01 Apr 2016 04:45:48 GMTLinkage
http://11011110.livejournal.com/326877.html
<ul><li><a href="https://www.youtube.com/watch?v=zsjZ2r9Ygzw">John Oliver on the reopening of the cryptowars</a> (<a href="https://plus.google.com/100003628603413742554/posts/Co1SxTyGhZj">G+</a>)</li><br /><li><a href="http://arstechnica.com/security/2016/03/big-name-sites-hit-by-rash-of-malicious-ads-spreading-crypto-ransomware/">Bad ad-screening hygiene exposes thousands to malware</a> so you should use an ad-blocker to be safe (<a href="https://plus.google.com/100003628603413742554/posts/5ai4KkHqDLJ">G+</a>)</li><br /><li><a href="http://www.nature.com/news/turkish-academics-jailed-for-making-terrorism-propaganda-1.19586">Turkey equates petition-signing to terrorism</a>, jails three professors, hounds others from their positions (<a href="https://plus.google.com/100003628603413742554/posts/1E5G9rax5ij">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=IANBoybVApQ">Printable magnets</a> (<a href="https://plus.google.com/100003628603413742554/posts/FPhhAyrygqQ">G+</a>)</li><br /><li><a href="http://www.seas.upenn.edu/~mlazar/voronoi.html">The distribution of cell shapes in Voronoi diagrams of random points in space</a> (<a href="https://plus.google.com/100003628603413742554/posts/ij2ocwZMx4c">G+</a>)</li><br /><li><a href="http://chronicle.com/article/Does-Engineering-Education/235800">The link between engineering education and terrorism</a> (<a href="https://plus.google.com/100003628603413742554/posts/NUNA7jtsjC7">G+</a>)</li><br /><li><a href="https://gilkalai.wordpress.com/2016/03/23/a-breakthrough-by-maryna-viazovska-lead-to-the-long-awaited-solutions-for-the-densest-packing-problem-in-dimensions-8-and-24">Sphere packing solved in dimensions 8 and 24</a> (<a href="https://plus.google.com/100003628603413742554/posts/Drio8d6qp8m">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Split_%28graph_theory%29">Split decomposition of graphs</a> (<a href="https://plus.google.com/100003628603413742554/posts/GkWnDTA6gqY">G+</a>)</li><br /><li><a href="https://news.brown.edu/articles/2016/03/wrinkles">Wrinkles and crumples make graphene better</a> (<a href="https://plus.google.com/100003628603413742554/posts/6JmXKQh84uh">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Integer_sorting">Integer sorting</a> (<a href="https://plus.google.com/100003628603413742554/posts/aU3dsKvb7HW">G+</a>)</li><br /><li><a href="http://themathkid.tumblr.com/post/141688266316/from-proofs-without-words-by-roger-nelsen">Visual proof of the arithmetic-geometric mean inequality</a> (<a href="https://plus.google.com/100003628603413742554/posts/Y4uG8rjcPqd">G+</a>)</li><br /><li><a href="http://www.andrewlipson.com/lego.htm">Lego Escher</a> (<a href="https://plus.google.com/100003628603413742554/posts/iAnkw9Dc1Bs">G+</a>)</li><br /><li><a href="http://www.dailylife.com.au/news-and-views/news-features/top-sydney-university-mathematician-nalini-joshi-laments-gender-discrimination-20160329-gnsywt.html">Nalini Joshi on gender discrimination in Australian mathematics</a> (<a href="https://plus.google.com/100003628603413742554/posts/8xBKv27EjzW">G+</a>)</li><br /><li><a href="http://ringsanity.blogspot.com/2016/03/mathematics-of-ringiana-and-ringsanity.html">Addictive abstract puzzle game based on the theory of Thompson groups</a> (<a href="https://plus.google.com/100003628603413742554/posts/8SDU9X5uvmV">G+</a>)</li></ul>http://11011110.livejournal.com/326877.htmlfeminismcryptographywikipediageometryalgorithmsgraph theorypoliticspublic0http://11011110.livejournal.com/326418.htmlSun, 20 Mar 2016 01:45:49 GMTRandom binary heaps, separable permutations, and numbers that multiply to factorials
http://11011110.livejournal.com/326418.html
<p>I recently asked my data structures class the following question: suppose you fill in an <i>n</i>-cell array by a random permutation. What is the probability that the result is a valid binary min-heap?</p>
<p>One way to solve this would be to count heaps, then divide by <i>n!</i>. For instance, for <i>n</i> = 5, there are eight heaps: there are four choices for the right child of the root, and two choices for how to order the two grandchildren, so the probability is 8/120 = 1/15.</p>
<p align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/factorial-heaps/Heaps5.png"></p>
<p>Alternatively, you can compute the probability a different way. Each node in the tree must have the minimum value among all its descendants. For a random permutation, the probability that it does is one over the number of descendants (counting the node as a descendant of itself). And the events that two nodes are minimum among their descendants turn out to be independent, so we can just multiply these probabilities together. A five-element heap has nodes whose numbers of descendants are 5, 3, 1, 1, 1, so the probability of getting a heap is one over the product of these numbers, 1/15. This calculation explains why the probability is a unit fraction, something that seems a bit mysterious when you calculate it the other way.</p>
<p>But now we have a nice sequence of integers, the inverses of these probabilities for different choices of <i>n</i>: <a href="http://oeis.org/A132862">1, 2, 3, 8, 15, 36, 63, etc</a>. And when we have a nice sequence of integers, we'd like them to count things. What do these numbers count? One possible answer is that they count a different set of labelings on the same complete binary trees: labelings for which, at each node, all left descendants are smaller than all right descendants. There are 15 such labelings, determined by the choice of any label at the root and any of the three remaining smallest values at its left child:</p>
<p align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/factorial-heaps/AlmostSorted5.png"></p>
<p>More generally, for any <i>n</i>-node tree <i>T</i>, say that a labeling of the nodes of <i>T</i> by the numbers from 1 to <i>n</i> is <i>T</i>-heap-ordered if, for any ancestor-descendant pair (<i>x</i>,<i>y</i>), we have that <i>x</i> < <i>y</i>. And say that a labeling is <i>T</i>-almost-sorted if, for any pair (<i>x</i>,<i>y</i>) that are not in an ancestor-descendant relation, with <i>x</i> to the left of <i>y</i>, we have that <i>x</i> < <i>y</i>. Then the product of the number of <i>T</i>-heap-ordered labelings and the number of <i>T</i>-almost-sorted labelings always equals <i>n</i>!.</p>
<p>We can take this one step farther, from trees to permutations. For any permutation <i>π</i> of the numbers from 1 to <i>n</i>, consider the two-dimensional set of points of the form (<i>i</i>,<i>π</i>(<i>i</i>)), and consider the labelings of these points by the numbers from 1 to <i>n</i>. Define a labeling to be <i>π</i>-upward if, for every two points oriented from southwest to northeast, the southwest point has a smaller label than the northeast point. And define a labeling to be <i>π</i>-downward if, for every two points oriented from northwest to southeast, the northwest point has a smaller label than the northeast point. Do the numbers of <i>π</i>-upward and <i>π</i>-downward labelings have a nice product formula? Not always. For instance, the permutaton 2413 has five <i>π</i>-upward labelings (below) and symmetrically five <i>π</i>-downward labelings. The product of these counts, 25, differs from <i>n</i>! = 24.</p>
<p align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/factorial-heaps/2413-upward.png"></p>
<p>However in some sense this is the only possible counterexample. For, when <i>π</i> is a <a href="https://en.wikipedia.org/wiki/Separable_permutation">separable permutation</a> (a permutation that avoids both 2413 and its mirror image 3142 as patterns) then the numbers of <i>π</i>-upward and <i>π</i>-downward labelings always multiply to <i>n</i>!.</p>
<p style="margin-left:2em"><i>Proof sketch:</i> in this case the dot pattern for <i>π</i> can be broken into the dot patterns for two smaller separable permutations, either southwest-northeast of each other (the direct sum of the two smaller permutations) or northwest-southeast (the skew sum). Suppose the sizes of the smaller permutations are <i>k</i> and <i>n</i> − <i>k</i>, and suppose they're combined in a direct sum. Then by induction the product of the numbers of labelings in the two smaller dot patterns is <i>k</i>! and (<i>n</i> − <i>k</i>)!. Two <i>π</i>-upward labelings on the two smaller dot patterns can only be combined in one way to make a <i>π</i>-upward labeling on the whole pattern: every label in the southwest pattern has to be less than every label in the northeast pattern. However, two <i>π</i>-downward labelings on the two smaller dot patterns can be combined in many ways to make a <i>π</i>-downward labeling on the whole dot pattern: we can partition the <i>n</i> labels among the two patterns arbitrarily, and there are Choose(<i>n</i>,<i>k</i>) partitions to choose among. So the number of pairs of an upward and downward label on the whole pattern is the product of the numbers of pairs labelings on the two smaller patterns with the number of ways we can make this combination:
<i>k</i>! × (<i>n</i> − <i>k</i>)! × Choose(<i>n</i>,<i>k</i>) = <i>n</i>!. The case of a skew sum follows by a symmetric argument.</p>
<p>More strongly, this argument shows that any labeling of <i>π</i> can be generated uniquely from the trivial labeling (the one that labels each point by its <i>x</i>-coordinate) by a sequence of riffle shuffles, working bottom up in the recursive structure of <i>π</i> as a skew sum or direct sum of smaller permutations. At each skew sum or direct sum in this decomposition, combining smaller permutations of sizes <i>a</i> and <i>b</i>, we choose one of the Choose(<i>a</i> + <i>b</i>,<i>a</i>) possible riffles and apply it to the labels on the dot patterns of these two smaller permutations. If we do all of the riffles, we get an arbitrary labeling. But if we do only the riffles at skew sums, we get a <i>π</i>-upward labeling, and if we do only the riffles at direct sums, we get a <i>π</i>-downward labeling. So this shows that an arbitrary labeling of <i>π</i> can be decomposed into a unique pair of an upward and downward labeling.</p>
<p>For every tree <i>T</i>, there is a drawing of <i>T</i> as the dot pattern of a separable permutation <i>π</i> such that the <i>π</i>-upward labelings are the same as the <i>T</i>-heap-ordered labelings and the <i>π</i>-downward labelings are the same as the <i>T</i>-almost-sorted labelings. One can construct <i>π</i> as the direct sum of the root of <i>T</i> (represented by a one-element permutation) with the skew sum of the subtrees of <i>T</i> (represented recursively). For instance, the complete binary tree used for 5-element binary heaps is represented in this way by the permutation 13542:</p>
<p align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/factorial-heaps/Tree2Perm.png"></p>
<p>So, the product formula for labelings of trees is a special case of the product formula for separable permutations.</p><a name='cutid1-end'></a>http://11011110.livejournal.com/326418.htmlcombinatoricspublic0http://11011110.livejournal.com/326205.htmlSat, 19 Mar 2016 04:07:35 GMTHoletown
http://11011110.livejournal.com/326205.html
Some scenes near the entrance to the Bellairs Research Institute, in Holetown, Barbados. (You can see the institute's nameplate in the left background to this one). It's actually quite an upscale touristy town, but that wasn't the feeling I was trying to catch in these photos.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/pix/holetown/8-m.jpg" border="2" style="border-color:black;" /></div><br /><br /><b>( <a href="http://www.ics.uci.edu/~eppstein/pix/holetown/index.html">More photos</a> )</b>http://11011110.livejournal.com/326205.htmlarchitecturephotographypublic0http://11011110.livejournal.com/326101.htmlWed, 16 Mar 2016 06:02:37 GMTLinkage
http://11011110.livejournal.com/326101.html
<ul><li><a href="https://www.washingtonpost.com/news/grade-point/wp/2016/02/29/mount-st-marys-university-and-the-dilemma-facing-american-higher-education/">Why aiming to run a university like a business is a worse idea than it sounds like</a> (<a href="https://plus.google.com/100003628603413742554/posts/aLfxrdUxbGs">G+</a>)</li><br /><li><a href="http://discreteanalysisjournal.com/"><i>Discrete Analysis</i> journal</a> publishes its inaugural issue (<a href="https://plus.google.com/100003628603413742554/posts/ceEZuMiYEms">G+</a>)</li><br /><li><a href="https://theconversation.com/new-defence-trade-controls-threaten-academic-freedom-and-the-economy-55310">Australian trade controls threaten academic freedom</a> (<a href="https://plus.google.com/100003628603413742554/posts/Fz92JJhXrp5">G+</a>)</li><br /><li><a href="https://www.quantamagazine.org/20160303-michael-atiyahs-mathematical-dreams/">Interview with Michael Atiyah</a> with some nice insights into collaborative mathematical research (<a href="https://plus.google.com/100003628603413742554/posts/FT5uFASnG15">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Frankl%E2%80%93R%C3%B6dl_graph">The Frankl–Rödl graph</a> and the challenge it poses to the Unique Games Conjecture (<a href="https://plus.google.com/100003628603413742554/posts/PrYGRkoKSi9">G+</a>)</li><br /><li><a href="http://conwaylife.com/forums/viewtopic.php?f=2&t=2057">Discovery of the Copperhead, a new small c/10 spaceship in Conway's Life</a> (<a href="https://plus.google.com/100003628603413742554/posts/BtcbuZvHR8M">G+</a>)</li><br /><li><a href="http://fivethirtyeight.com/features/a-plagiarism-scandal-is-unfolding-in-the-crossword-world/">Crossword plagiarism</a> (<a href="https://plus.google.com/100003628603413742554/posts/KFdQZBfqM1S">G+</a>)</li><br /><li><a href="http://science.sciencemag.org/content/351/6276/902.full">Academic journal forces pseudonymous authors to reveal their names</a> (<a href="https://plus.google.com/100003628603413742554/posts/Zc78ahxnKxo">G+</a>)</li><br /><li><a href="http://malinchristersson.tumblr.com/post/134524872603/m%C3%B6bius-transformation-of-a-doyle-spiral">Möbius transformation of a Doyle spiral circle packing</a> (<a href="https://plus.google.com/100003628603413742554/posts/aQiRez6Khbm">G+</a>)</li><br /><li><a href="http://blog.computationalcomplexity.org/2016/03/david-johnson-1945-2016.html">David Johnson (1945–2016)</a> (<a href="https://plus.google.com/100003628603413742554/posts/groVYC7wjaS">G+</a>)</li><br /><li><a href="http://blogs.scientificamerican.com/roots-of-unity/how-to-sew-like-a-mathematician/">Using topology to simplify a real-world sewing problem</a> (<a href="https://plus.google.com/100003628603413742554/posts/jgyhN4vn8kG">G+</a>)</li><br /><li><a href="http://www.sfgate.com/education/article/UC-Berkeley-law-dean-resigns-amid-harassment-6882570.php">Yet another academic sexual harrassment case</a> brings down the Berkeley law dean (<a href="https://plus.google.com/100003628603413742554/posts/Jycm648qDPi">G+</a>)</li><br /><li><a href="http://i.imgur.com/I491kLh.jpg">There is no cloud. It's just someone else's computer.</a> (<a href="https://plus.google.com/100003628603413742554/posts/e3ivrz4ryxb">G+</a>)</li><br /><li><a href="https://www.quantamagazine.org/20160313-mathematicians-discover-prime-conspiracy/">Nonrandomness in the final digits of consecutive primes</a> (<a href="https://plus.google.com/100003628603413742554/posts/aB7T6Z7vvs6">G+</a>)</li><br /><li><a href="http://www.thisiscolossal.com/2016/03/cycloid-drawing-machine/">A fancier spirograph</a> and <a href="http://wheelof.com/sketch/">its online simulator</a> (<a href="https://plus.google.com/100003628603413742554/posts/71pXYjguAjK">G+</a>)</li></ul>http://11011110.livejournal.com/326101.htmlfeminismcellular automatagraph theorycirclestopologyanonymitynumber theoryacademiaplagiarismpublic0http://11011110.livejournal.com/325782.htmlMon, 14 Mar 2016 17:35:46 GMTBellairs
http://11011110.livejournal.com/325782.html
I recently returned from the <a href="http://cglab.ca/~morin/misc/bb2016/">Fourth Annual Workshop on Geometry and Graphs</a> at the Bellairs Research Institute in Barbados. The youngest participant was Günter Rote's daughter:<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/pix/bellairs16/AdeleErases-m.jpg" border="2" style="border-color:black;" /></div><br /><br /><b>( <a href="http://www.ics.uci.edu/~eppstein/pix/bellairs16/index.html">More photos of workshop participants</a> )</b>http://11011110.livejournal.com/325782.htmlconferencesphotographypublic0http://11011110.livejournal.com/325544.htmlMon, 29 Feb 2016 01:38:05 GMTLinkage
http://11011110.livejournal.com/325544.html
<ul><li><a href="https://plus.google.com/+JeffErickson/posts/fUzs9WxQKRZ">SoCG accepted paper titles</a> (<a href="https://plus.google.com/100003628603413742554/posts/Sj4a3oWxzG2">G+</a>)</li><br /><li><a href="http://utotherescue.blogspot.com/2016/01/ucop-ordered-spyware-installed-on-uc.html">University of California President Janet Napolitano spies on all campus emails and other internet traffic</a> (<a href="https://plus.google.com/100003628603413742554/posts/PU6ByUUcs6k">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=tDQw21ntR64">Sheep flocking patterns</a> (<a href="https://plus.google.com/100003628603413742554/posts/HpH92r9DFQE">G+</a>)</li><br /><li><a href="http://www.theguardian.com/education/2010/jul/13/perfect-coffee-improbable-research">Using the Thue–Morse sequence to pour coffee</a> (<a href="https://plus.google.com/100003628603413742554/posts/FJ1MxR7opjb">G+</a>)</li><br /><li><a href="http://www2.idsia.ch/cms/fun16/">FUN</a> and <a href="http://optnetsci.cise.ufl.edu/cocoon16/">COCOON</a> submission deadlines extended to early March (<a href="https://plus.google.com/100003628603413742554/posts/NH5CUpK2g2L">G+</a>)</li><br /><li><a href="https://vimeo.com/150929970">Frozen soap bubbles</a> (<a href="https://plus.google.com/100003628603413742554/posts/V8PQu7nCfct">G+</a>)</li><br /><li><a href="http://www.theguardian.com/world/2016/feb/16/prestigious-academic-to-quit-new-zealand-after-autistic-son-refused-residency">Group theorist Dimitri Leemans returns to Europe after NZ denies residency to his son</a> (<a href="https://plus.google.com/100003628603413742554/posts/36DYJmGNq6j">G+</a>)</li><br /><li><a href="http://www.theguardian.com/technology/2016/feb/24/the-fbi-wants-a-backdoor-only-it-can-use-but-wanting-it-doesnt-make-it-possible">Why what the FBI claims to want Apple to do is impossible</a> (<a href="https://plus.google.com/100003628603413742554/posts/D8ZGF7iMx4n">G+</a>)</li><br /><li><a href="http://wpcomics.washingtonpost.com/client/wpc/lio/2016/02/26/">Lio blows geometric soap bubbles</a> (<a href="https://plus.google.com/100003628603413742554/posts/6CTFz53KURE">G+</a>)</li><br /><li><a href="http://mathoverflow.net/questions/38856/jokes-in-the-sense-of-littlewood-examples">Mathematical jokes</a>: theorems and proofs that don't look like they should be valid, but are (<a href="https://plus.google.com/100003628603413742554/posts/HLTuc9jjeRu">G+</a>)</li><br /><li><a href="http://matchstickpuzzles.blogspot.com/2015/12/308-reduce-cubes.html">Matchstick puzzles</a> (<a href="https://plus.google.com/100003628603413742554/posts/edV9vBR4b8i">G+</a>)</li></ul>http://11011110.livejournal.com/325544.htmlcoffeesoap bubblesacademiaconferencessecuritypaperspublic0http://11011110.livejournal.com/325238.htmlThu, 25 Feb 2016 23:24:31 GMTOrdinal numbers as tree-depths of infinite graphs
http://11011110.livejournal.com/325238.html
When dealing with finite graphs, it's normal to define (rooted) trees in a graph-theoretic way: a tree is a directed graph with a designated root in which each vertex has a unique walk to the root. The ancestor-descendant relation can be derived from this: an ancestor of <i>x</i> is a vertex that can be reached by a walk from <i>x</i>. However, it's also possible to turn this around, and define trees in terms of their ancestor-descendant relations, with the parent-child relation derived from that. In the turned-around definition, a tree is a partial order with a designated root element that is a predecessor of every element, such that the predecessors of each element are totally ordered. The parent of an element would then be the maximum of its predecessors. So graph-theoretic finite trees and order-theoretic finite trees are really the same things as each other, in a different disguise. But that's no longer true when we go from finite to infinite: we can define trees in either of these two ways, but we get different things.<br /><br />An infinite graph-theoretic tree can be defined in the same way as a finite one: a graph with a designated root in which each vertex has a unique walk to the root. But <a href="https://en.wikipedia.org/wiki/Tree_(set_theory)">the usual order-theoretic definition of a tree</a> takes a little more care: it is a partial order with a designated root element that is a predecessor of every element, as before, but where the predecessors of each element are required to be <a href="https://en.wikipedia.org/wiki/Well-order">well-ordered</a>, not just totally ordered. The ancestor-descendant relation in an infinite graph-theoretic tree gives a valid order-theoretic tree, but one in which the predecessors of each element form a finite total order. Allowing the predecessors to be, instead, any well-ordering gives the order-theoretic trees greater generality over the graph-theoretic ones.<br /><br />This distinction comes up in trying to generalize the notion of <a href="https://en.wikipedia.org/wiki/Tree-depth">tree-depth</a> to infinite graphs. For a finite graph <i>G</i>, the tree-depth is the minimum height of a rooted tree <i>T</i> on the same vertex set such that every edge in <i>G</i> connects an ancestor-descendant pair in <i>T</i>. That is, <i>T</i> should be a depth-first search tree for a supergraph of <i>G</i>. One can try using this definition directly for infinite graphs, with a graph-theoretic infinite tree, but then not all infinite graphs would have a defined tree-depth (for instance, what is the depth of an uncountable clique?). Another quirk of this kind of tree is that, in infinite graphs, depth-first search trees are not the same as spanning trees for which all other edges connect an ancestor-descendant pair. For instance, an uncountable star cannot be explored by depth-first search but clearly is itself such a spanning tree.<br /><br />Instead, I think the right notion of tree-depth, for infinite graphs, uses the order-theoretic notion of a tree. For any graph <i>G</i>, the axiom of choice implies the existence of some order-theoretic trees <i>T</i> such that every edge in <i>G</i> connects a pair of related elements of <i>T</i>. One way of finding such a tree is to choose <i>T</i> to be any well-ordering of <i>G</i>, a tree with only one branch. (A branch of a tree is a maximal totally ordered subset of it.) We can define the tree-depth of <i>G</i> to be the minimum height of a tree <i>T</i> for which each edge of <i>G</i> connects a pair of related elements in <i>T</i>. Here, the height of an element of a tree is the order-type of its strict predecessors and the height of the tree itself is the least ordinal greater than the heights of all its elements. That is, according to this definition, the tree-depth of <i>G</i> should be an <a href="https://en.wikipedia.org/wiki/Ordinal_number">ordinal number</a>. The fact that the ordinals are themselves well-ordered allows the “minimum height” part of the definition of tree-depth above to be well-defined: any set of ordinals, such as the set of heights of valid trees for a given graph <i>G</i>, has a unique smallest element.<br /><br />Every graph with countably many vertices either has bounded tree-depth (a finite number, equivalent to the definition with graph-theoretic trees) or tree-depth <i>ω</i> (the first infinite ordinal number), because we can just use as our tree the set of non-negative integers with their usual ordering (again, a tree with a single branch). However, there are graphs whose tree-depth is a bigger countable ordinal than this. For example, let <i>G</i> = (<i>U</i>,<i>V</i>,<i>E</i>) be a complete bipartite graph where one side of the bipartition <i>U</i> is countable and the other side <i>V</i> is uncountable. We can form a tree <i>T</i> on the vertices of <i>G</i> by choosing any one-to-one correspondence of <i>U</i> with the non-negative integers, and by making each vertex in <i>V</i> have all the vertices in <i>U</i> as its predecessors. This tree has height <i>ω</i> + 1, so <i>G</i> has tree-depth at most <i>ω</i> + 1. But there is no shorter tree for <i>G</i>, because in a shorter tree every vertex would have only finitely many predecessors. If each vertex in <i>U</i> has finitely many predecessors, then there are infinitely many vertices in <i>V</i> that are not predecessors of any vertex in <i>U</i>. Each of these non-predecessor vertices must itself have infinitely many predecessors in a valid tree for <i>G</i>, causing the tree to have height at least <i>ω</i> + 1. So the tree-depth of <i>G</i> is exactly <i>ω</i> + 1.<br /><br />More generally, a transfinite induction shows that every ordinal <i>α</i> is the tree-depth of at least one graph <i>G<sub>α</sub></i>. For, if <i>α</i> is a limit ordinal, we can construct <i>G<sub>α</sub></i> as a limit of the graphs for all smaller ordinals (for instance, by choosing a minimum-height tree for each of these smaller graphs and identifying these trees at their roots). And if <i>α</i> is not a limit ordinal, then it equals <i>β</i> + 1 for some other ordinal <i>β</i>. Choose a cardinal <i>κ</i> bigger than the cardinality of <i>α</i>, a graph <i>G<sub>β</sub></i> with tree-depth <i>β</i>, and a tree <i>T<sub>β</sub></i> realizing the tree-depth of <i>G<sub>β</sub></i>. Then we can construct <i>G<sub>α</sub></i> by adding <i>κ</i> new vertices for each branch of <i>T<sub>β</sub></i>, where each newly added vertex is adjacent to everything in its branch. This graph <i>G<sub>α</sub></i> has an associated tree <i>T<sub>α</sub></i> of height <i>α</i>, in which the predecessor set of each newly added vertex is the branch of <i>T<sub>β</sub></i> that it was added to. An argument like the one for the infinite complete bipartite graph shows that in any tree for <i>G<sub>α</sub></i>, at least one of the new vertices has to be completely above its branch, forcing the tree to have height at least <i>α</i>.<br /><br />So graph-theoretic trees and finite natural numbers are not good enough to define a notion of tree-depth for all infinite graphs, but order-theoretic trees and ordinal numbers suffice. And if you define tree-depth in this way, every ordinal number occurs as the tree-depth of at least one graph.<a name='cutid1-end'></a>http://11011110.livejournal.com/325238.htmlgraph theorypublic0http://11011110.livejournal.com/325076.htmlWed, 17 Feb 2016 06:12:42 GMTBlack Star Canyon
http://11011110.livejournal.com/325076.html
I spent the president's day holiday hiking in <a href="https://en.wikipedia.org/wiki/Black_Star_Canyon">Black Star Canyon</a>, a wilderness area nearby enough that it's barely outside Irvine and remote enough that in the upper part of the falls trail (where you're basically scrambling up a creek instead of hiking along a trail) there's no sign of civilization to be seen except for the other hikers, airplanes overhead, and occasional painted rocks.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/pix/bsc/11-m.jpg" border="2" style="border-color:black;" /></div><br /><br /><b>( <a href="http://www.ics.uci.edu/~eppstein/pix/bsc/index.html">More photos of Black Star Canyon</a> )</b>http://11011110.livejournal.com/325076.htmlphotographylandscapepublic0http://11011110.livejournal.com/324629.htmlTue, 16 Feb 2016 05:36:56 GMTLinkage
http://11011110.livejournal.com/324629.html
<ul><li><a href="https://www.youtube.com/watch?v=wVH4MS6v23U">Numberphile video on triangle centers</a> (<a href="https://plus.google.com/100003628603413742554/posts/CMYKfvkS1Cu">G+</a>)</li><br /><li><a href="http://www.state.gov/r/pa/prs/ps/2016/01/251577.htm">New US visa requirements for travelers from visa-waiver countries who have visited Iran</a>, may especially effect computational geometers who have been to the Winter School on Computational Geometry (<a href="https://plus.google.com/100003628603413742554/posts/Vwk5VDzYSc6">G+</a>)</li><br /><li><a href="http://vixra.org/abs/1208.0223">Lecture notes from de Bruijn's course on combinatorics</a> have an unlikely host (<a href="https://plus.google.com/u/0/100003628603413742554/posts/fWBTbMvzVwF">G+</a>)</li><br /><li><a href="http://arxiv.org/abs/1502.04135">Undecidability of an energy gap in arrays of quantum devices</a> (<a href="https://plus.google.com/100003628603413742554/posts/XgBFEXtru2T">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=IfrJXrzoCwU">Analog rather than digital production of chaotic/fractal images, using video feedback</a> (<a href="https://plus.google.com/100003628603413742554/posts/JEDtopKHJ2S">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Book:Perfect_Graphs">New Wikipedia book on perfect graphs</a> (<a href="https://plus.google.com/100003628603413742554/posts/2uAxv3XytpU">G+</a>)</li><br /><li><a href="https://rjlipton.wordpress.com/2016/02/08/new-nae-members/">Congratulations to the computer scientists newly inducted into the NAE</a> (<a href="https://plus.google.com/100003628603413742554/posts/bqg2GnhwW4m">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=wrsje5It_UU">3d-printing a digital sundial gnomon</a> (<a href="https://plus.google.com/100003628603413742554/posts/Jc784ApdKUD">G+</a>)</li><br /><li><a href="http://fouriestseries.tumblr.com/post/96488907348/cops-and-robbers-and-zombies-and-humans">Zombies vs humans</a>, visualization of a continuous pursuit-evasion model (<a href="https://plus.google.com/100003628603413742554/posts/c7PUrYjNJED">G+</a>)</li><br /><li><a href="http://mathoverflow.net/questions/221676/covering-of-a-surface-of-a-cube-n-times-n-times-n-by-pieces-of-paper-1-times">Rectangle packing on the surface of an integer cube</a> (<a href="https://plus.google.com/100003628603413742554/posts/ckntyJit4YV">G+</a>)</li><br /><li><a href="http://acm-stoc.org/stoc2016/Accepted%20Papers%20-%20STOC%202016.htm">List of accepted papers to STOC 2016</a> (<a href="https://plus.google.com/100003628603413742554/posts/S8Qmn7rRVpL">G+</a>)</li><br /><li><a href="http://www.nola.com/politics/index.ssf/2016/02/board_of_regents_all_universit.html">The Kansas and Louisiana public university systems race to the bottom</a>. But maybe the threat to the football team can act as a parachute? (<a href="https://plus.google.com/100003628603413742554/posts/4KyxAEsm6Z7">G+</a>)</li><br /><li><a href="http://arxiv.org/abs/1601.02442">Reversing the curve-shortening flow can send nice curves into very messy singularities</a> (<a href="https://plus.google.com/100003628603413742554/posts/Koq2WTs46bJ">G+</a>)</li><br /><li><a href="http://community.wolfram.com/groups/-/m/t/790393">Ed Pegg's new tetrahedrally-symmetric surface of constant width</a> (<a href="https://plus.google.com/100003628603413742554/posts/E7rWwD7PRUy">G+</a>)</li></ul>http://11011110.livejournal.com/324629.htmlfractalscellular automatacombinatoricswikipediaconferencesgraph theorygeometryacademiapaperspoliticspublic0http://11011110.livejournal.com/324449.htmlThu, 04 Feb 2016 04:28:44 GMTFinding your place on a map as quickly as you could tell someone where you are
http://11011110.livejournal.com/324449.html
I have a new preprint, "<a href="http://arxiv.org/abs/1602.00767">Distance-Sensitive Planar Point Location</a>" (arXiv:1602.00767, with Aronov, de Berg, Roeloffzen, and Speckmann) whose title and abstract may already be a bit intimidating. So I thought I would at least try to explain what it's about in simpler terms.<br /><br />Point location is something you do every time you orient yourself on a map. You know where you are, in the world, and you try to figure out what that means about where you are on the map. Let's model the map mathematically as a unit square, subdivided into polygons. You already know the coordinates of a point in the square, but now you want to figure out which polygon contains that point. To do so, you might make a sequence of comparisons, for instance checking which side of one of the polygon edges you're on. You want to do as few comparisons as possible before getting the answer.<br /><br />One limit on the number of comparisons you might need is entropy, a fancy word for the number of bits of information you need to send to someone else to tell them where you are. If you can solve point location in a certain number of comparisons, you can also say where you are by communicating the results of those comparisons. So, the entropy is no bigger than the time complexity of point location. We'd like to turn that around, by finding methods for point location that match any method you might come up with for communicating your location. For instance, if there are <i>n</i> different polygons on your map, you could name them by strings of log<sub>2</sub><i>n</i> bits, and communicate your location by saying one of those names. And it turns out that there are methods of point location that take only <i>O</i>(log <i>n</i>) comparisons, so we can match this naming scheme by a point location method.<br /><br />But there are other naming schemes that might do even better than that, and we'd like to also match them. For instance, you might be in some places more frequently than others. Most of the time, I'm in California, and when I'm outside California I'm more likely to be in states where I have relatives or that are the frequent sites of computer science conferences (say, Massachusetts) than others (say, Maine). So it would be more efficient on the average for me to tell people where I am using a naming scheme in which California has a very short name and South Dakota has a longer one. Several researchers, including Iacono, Arya, Malamatos, and Mount, have provided point location schemes that can match the complexity of any such naming scheme. But to achieve this, they require all of the polygons to have simple shapes like triangles, not complicated ones like the boundaries of some US states.<br /><br />In our paper, we use a different idea. Instead of considering the popularity of different regions, we consider the distance to the nearest boundary. If you're far from the boundary of a region, it should be easy to tell where you are, and if you're close to the boundary you'll have to look more carefully. If your distance to the nearest boundary is <i>d</i>, then you're inside a circle that doesn't cross any boundary and whose area is proportional to <i>d</i><sup>2</sup>. There can be only <i>O</i>(1/<i>d</i><sup>2</sup>) polygons that contain a circle that big, and you can communicate which one you're in by sending <i>O</i>(log(1/<i>d</i><sup>2</sup>)) bits of information (a name of one of those big polygons). A simple point location scheme based on a quadtree data structure turns out to match that bound.<br /><br />That's a warmup to the main results of the paper, which combine popularity with distance to the boundary. If you're well within a polygon, at the center of a circle that's inside the polygon and has area proportional to it, then the time to find out where you are is proportional only to the length of the name of the polygon (in your favorite naming scheme) regardless of how complicated its shape is. But if you're closer to the boundary than that, then the time to locate yourself will be slower, by a number of steps that depends inverse-logarithmically on how close you are.<br /><br />It would be nice to have a method that depends only on the lengths of the names of the polygons, without assuming they're all nicely shaped, and without depending on other quantities like the distance to the boundary. But that's not possible, as an example in our introduction details. For, if there are only two polygons on your map (say polygon 0 and polygon 1), then the lengths of both of their names are constant. If we want to match that by the complexity of a point location scheme, then we can only make a constant number of comparisons, and only solve location problems for which the shapes of the polygons are simple.<a name='cutid1-end'></a>http://11011110.livejournal.com/324449.htmlcomputational geometrypublic2http://11011110.livejournal.com/324305.htmlMon, 01 Feb 2016 04:36:30 GMTLinkage
http://11011110.livejournal.com/324305.html
<ul><li><a href="https://construclonica.wordpress.com/2015/10/16/suelos-de-pentagonos-irregulares/">Cairo tiling Legos</a> (<a href="https://plus.google.com/100003628603413742554/posts/33cgLtaEQrJ">G+</a>)</li><br /><li><a href="http://elevr.com/spherical-video-editing-effects-with-mobius-transformations/">Zooming in spherical videos using Möbius transformations</a>, with bonus spherical Droste effect (<a href="https://plus.google.com/100003628603413742554/posts/BYS1c5geCsJ">G+</a>)</li><br /><li><a href="http://www.vox.com/2016/1/16/10777050/university-of-maryland-chocolate-milk">Corporate-sponsored chocolate-milk press-release-research at the University of Maryland</a> (<a href="https://plus.google.com/100003628603413742554/posts/K2cD6aMhrj6">G+</a>)</li><br /><li><a href="https://brooker.co.za/blog/2012/01/17/two-random.html">The power of two choices works very well for load balancing with stale data</a> (<a href="https://plus.google.com/100003628603413742554/posts/NPbfFzLy5r9">G+</a>)</li><br /><li><a href="http://artery.wbur.org/2014/11/13/harvard-art-museums-forbes-pigment-collection">Harvard's library of colors</a> (<a href="https://plus.google.com/100003628603413742554/posts/RHtenbQno2g">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=2DRJ2oUK4-E">3d color printing with layers of paper</a> (<a href="https://plus.google.com/100003628603413742554/posts/1ME9uv1xySH">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Trillium_theorem">What is the name of the trillium theorem?</a> (<a href="https://plus.google.com/100003628603413742554/posts/THk6Yi3WE2h">G+</a>)</li><br /><li><a href="http://www.latimes.com/entertainment/herocomplex/la-et-hc-usc-women-video-game-design-program-20160124-htmlstory.html">Women outnumber men in USC's game design program</a> (<a href="https://plus.google.com/100003628603413742554/posts/cJrb5k2y8GM">G+</a>)</li><br /><li><a href="http://www.nytimes.com/2016/01/26/business/marvin-minsky-pioneer-in-artificial-intelligence-dies-at-88.html?_r=1">New York Times obituary for Marvin Minsky</a> (<a href="https://plus.google.com/u/0/100003628603413742554/posts/PfvuJVsERdZ">G+</a>)</li><br /><li><a href="http://www.wired.com/2016/01/goodbye-applets-another-cruddy-piece-of-web-tech-is-finally-going-away/">Java applets are dead</a>. So what do we use as a replacement for Cinderella? (<a href="https://plus.google.com/100003628603413742554/posts/DtiG3dsEbGY">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=MO5LK1h2eAo">Geometric mean of ranks aggregation in sports competition scoring</a>: unfair because it disobeys <a href="https://en.wikipedia.org/wiki/Independence_of_irrelevant_alternatives">independence of irrelevant alternatives</a>? (<a href="https://plus.google.com/100003628603413742554/posts/MT1moDG9mCE">G+</a>)</li><br /><li><a href="http://www.nature.com/news/arxiv-rejections-lead-to-spat-over-screening-process-1.19267">Physics arXiv crank filter had two false positives</a>. Should we do the same in CS? (<a href="https://plus.google.com/100003628603413742554/posts/KiL9mJf2W6B">G+</a>)</li><br /><li><a href="https://plus.google.com/u/0/+DavidRoberts/posts/YtRbDXwMmE5">What started out as a boring spat between two mathematical physicists has turned into an interesting discussion of the role of blogs and other less-formal writings in scientific research and publishing</a> (<a href="https://plus.google.com/u/0/100003628603413742554/posts/bqTWAgXvdKN&quot;&quot;">G+</a>)</li></ul>http://11011110.livejournal.com/324305.htmlfeminismtoolsvotingcorporatizationwikipediacolorgeometryacademiapublic0http://11011110.livejournal.com/323892.htmlThu, 28 Jan 2016 05:59:40 GMTHow to make a bad pseudoline arrangement worse
http://11011110.livejournal.com/323892.html
The image below is a drawing of (part of) a pseudoline arrangement, a collection of curves in the plane that behave like lines in the sense that each curve partitions the plane into two unbounded regions and each two curves have exactly one point of intersection, where they cross. It's from my latest arXiv preprint, "<a href="http://arxiv.org/abs/1601.06865">Convex-Arc Drawings of Pseudolines</a>" (with Mereke van Garderen, Bettina Speckmann, and Torsten Ueckerdt, arXiv:1601.06865).<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/many-bends.png"></div><br /><br />The repeated yellow squares within the image are themselves smaller pseudoline arrangements, all the same as each other, with nine pseudolines each. I drew them more curvy than they need to be, but the special property of these arrangements is that they need to be at least a little bit curvy: they cannot be drawn with straight lines.<br /><br />The point of this image is that it repeats! The black parts outside the yellow squares show how to connect up the pseudolines so that the repetition still obeys the requirements of a pseudoline arrangement. The nine pseudolines in any one square must never go to the same square as each other again (otherwise they would cross twice, not allowed). To prevent this, one of the nine pseudolines in each square (the one that comes in the top and goes out the bottom) connects horizontally to the next square across, another connects one square down on the left and one square up on the right, another connects two squares down and up, etc. In this way, an <i>n</i> by <i>n</i> grid of yellow squares can be glued together using a total of only <i>O</i>(<i>n</i>) pseudolines. They won't all cross each other within the grid, but that can be fixed up by adding extra crossings outside the grid.<br /><br />If you start with a small constant-sized pseudoline arrangement requiring at least one bend, then after performing this expansion you get a big pseudoline arrangement requiring a quadratic number of bends. Here I define a bend to be a vertex of a polygonal chain, but the same construction generalizes to show that if you draw the pseudolines as smooth spline curves you need a quadratic number of knots, or if you draw them as piecewise-circular curves you need a quadratic number of arcs. It's not hard to draw any pseudoline arrangement with only this many bends (just use a <a href="http://11011110.livejournal.com/111308.html">wiring diagram</a>) but one of the results of the paper is that you can still draw the arrangement with quadratically many bends even if you require all of the pseudolines to be convex curves.<br /><br />Another part of the paper concerns "weak pseudoline arrangements", where not every pair of curves is required to cross (but they can still only intersect in a single crossing point). We say that a weak pseudoline arrangement is outerplanar if every crossing point belongs to an unbounded face. Outerplanar arrangements can't always be straightened in the plane; for instance rotating the parabola <i>y</i> = <i>x</i><sup>2</sup> + 1 by right angles around the origin forms a pseudoline arrangement with four pseudolines that cannot be made straight. However, we show that this is a special property of the Euclidean plane: in the hyperbolic plane, every outerplanar arrangement can be straightened. This leads to Euclidean drawings with only two bends per pseudoline, but maybe only one bend is possible, I'm not sure.<a name='cutid1-end'></a>http://11011110.livejournal.com/323892.htmlarrangementspaperspublic3http://11011110.livejournal.com/323781.htmlThu, 21 Jan 2016 23:59:58 GMTFace incidence polytopes
http://11011110.livejournal.com/323781.html
In <a href="http://11011110.livejournal.com/323466.html">my previous post here</a> I remarked that the hypercubes are the face lattices of simplexes. I also drew the face lattice of a square, which you might have noticed forms a planar graph, the graph of another polyhedron (the <a href="https://en.wikipedia.org/wiki/Tetragonal_trapezohedron">tetragonal trapezohedron</a>, an octahedron with eight kite-shaped faces). This turns out not to be a coincidence. For <s>every</s> many (see comments) <i>d</i>-dimensional convex polytopes <i>P</i>, the covering graph of its face lattice is the graph of a (<i>d</i> + 1)-dimensional convex polytope, which for lack of a better name I'll call the face incidence polytope, or incidence polytope for short (although that shorter phrase does already have a different meaning).<br /><br />This polytope shares more structure with <i>P</i> than just its vertex and edge set. If <i>P</i> has an <i>i</i>-dimensional face that forms a subset of a <i>j</i>-dimensional face, then this incidence between the two faces of <i>P</i> corresponds to a (<i>j</i> − <i>i</i>)-dimensional face of the incidence polytope, and every face of the incidence polytope comes from an incidence of two faces of <i>P</i> in this way. In particular, the vertices of the incidence polytope correspond to the incidences between faces of <i>P</i> and themselves, and the edges of the incidence polytope correspond to incidences between faces that are one dimension apart, which form the edges of the covering graph of the face lattice.<br /><br /><b>Construction</b><br /><br />The construction of the incidence polytope is very simple. Given a polytope <i>P</i>, place <i>P</i> so that the origin of its space is interior to it, and let <i>Q</i> be its <a href="https://en.wikipedia.org/wiki/Dual_polyhedron">polar polytope</a>. Place <i>P</i> and <i>Q</i> on two parallel <i>d</i>-dimensional hyperplanes in (<i>d</i> + 1)-dimensional space. Translation or scaling of these two planes doesn't affect the combinatorial structure of the result, but it is convenient to choose how to place these two hyperplanes so that they are perpendicular to the line connecting their origins; neither polytope should be rotated. Next, construct the convex hull of the union of <i>P</i> and its parallel polar. Then, the incidence polytope is the polar polytope to this convex hull.<br /><br />For instance, if you start with a regular polygon with <i>n</i> sides, then its polar polygon is also regular with <i>n</i> sides, but rotated by an angle of pi/<i>n</i> with respect to the original polygon, so that the vertices of the two polygons interleave each other. Placing these two polygons on two parallel planes and constructing their hull gives an <a href="https://en.wikipedia.org/wiki/Antiprism">antiprism</a>, and then forming the polar polytope of this antiprism gives us a trapezohedron, like the one I drew last time.<br /><br /><b>Correctness</b><br /><br />Why does this work? (When it works at all; see comments.) I think the simplest explanation involves dropping a dimension, to a (<i>d</i> −1)-dimensional (hyper)surface in <i>d</i>-dimensional space, the image of the <a href="https://en.wikipedia.org/wiki/Gauss_map">Gauss map</a>. This map transforms points on the surface of <i>P</i> to their (set of) unit normal vectors. The set of all unit vectors is a sphere, and the image of the Gauss map is a subdivision of the sphere according to which point or points of <i>P</i> are most extreme in a given direction. For instance, the Gauss map for a cube subdivides the sphere into eight spherical triangles. Each triangle corresponds to one of the eight vertices of the cube. The unit vectors in this triangle represent directions in which that cube vertex is the most extreme: its dot product with the vector is bigger than the dot products involving the other seven vertices.<br /><br /><div align="center"><a href="https://commons.wikimedia.org/wiki/File:Spherical_square_bipyramid.png"><img src="http://www.ics.uci.edu/~eppstein/0xDE/Spherical-octahedron.png" border="0"></a></div><br /><br />The edges of this subdivision represent directions in which there are two equally extreme points (the endpoints of an edge of the cube) and the vertices of the subdivision represent directions in which there are four equally extreme points (the vertices of one of the cube's faces). In this way, the features of the Gauss map correspond to the features of the cube, but with the dimensions reversed. If instead we take the Gauss map of the polar of a cube (an octahedron), both the polar and Gauss map operations reverse dimensions and we get the cube itself back, but a spherical cube rather than a polyhedral one. And if we overlay the Gauss maps for the cube and its polar, we get something like this:<br /><br /><div align="center"><a href="https://commons.wikimedia.org/wiki/File:Spherical_deltoidal_icositetrahedron.png"><img src="http://www.ics.uci.edu/~eppstein/0xDE/Spherical-cube-oct-overlay.png" border="0"></a></div><br /><br />If we have a unit vector <i>v</i> in (<i>d</i> + 1)-dimensional space, then we can use this overlay diagram to determine the extreme points for the hull of the union of <i>P</i> and its offset polar. First, as a special case, if <i>v</i> is parallel to the line between the origins of the two <i>d</i>-dimensional subspaces, we know the extreme points: they are either all of <i>P</i> or all of its polar, depending on the sign of <i>v</i>. Otherwise, we can project <i>v</i> to a nonzero vector in the two subspaces, and look it up which cell of the overlay diagram contains it; this will tell us the extreme points for <i>P</i> and its polar in the direction of <i>v</i>. The extreme points for the hull of <i>P</i> and its polar can only be the same as the extreme points for <i>P</i>, for its polar, or both, because a hyperplane perpendicular to <i>v</i> that touched any other points of <i>P</i> or its polar would cut through the hull and separate some extreme points from the rest of the polytope. So this means that the only faces (sets of extreme points) that we can obtain are the ones coming from features of the overlay diagram, which are exactly the ones we want.<br /><br /><b>Applications</b><br /><br />In my previous post we saw that the faces of the hypercube are in one-to-one correspondence with the sets of binary strings that can be described by placing wildcards in some positions of the string, and fixing other positions to 0 and 1. In order to make this correspondence work, we needed to include one more set of binary strings (the empty set) that could not be described by wildcards in this way, to correspond to the empty (−1)-dimensional face of the hypercube. The incidence polytope construction shows that these wildcard strings (together with Ø) are also in one-to-one correspondence with the vertices of a polytope, the incidence polytope of a hypercube. The edges of the incidence polytope represent the ways in which you could turn a 0 or 1 into a wildcard character or vice versa.<br /><br />Another polytope whose faces are meaningful is the <a href="https://en.wikipedia.org/wiki/Permutohedron">permutohedron</a>, the convex hull of the permutations of the vector (1, 2, 3, ..., <i>d</i>). It's a (<i>d</i> −1)-dimensional polytope, because these points all lie in a hyperplane (their sum of coordinates is a triangular number). Its nonempty faces correspond to <a href="https://en.wikipedia.org/wiki/Weak_ordering">weak orderings</a>, orderings that like the outcome of a horse race are transitive (if x beats y and y beats z then x beats z) but may have equivalence classes of tied elements: the vertices of a face are the permutations that can be formed from the ordering by breaking all ties in a consistent way. Here for instance are the 13 weak orderings of a three-element set:<br /><br /><div align="center"><a href="https://commons.wikimedia.org/wiki/File:13-Weak-Orders.svg"><img src="http://www.ics.uci.edu/~eppstein/0xDE/13-Weak-Orders.png" border="0"></a></div><br /><br />The 3-element permutohedron is a regular hexagon. The outer six vertices of the diagram above correspond to the hexagon's vertices, the middle six vertices correspond to the hexagon's edges, and the central vertex corresponds to the whole hexagon. So we have here almost the entire face lattice of the hexagon, but we're missing one vertex, corresponding to the empty set. If we add back this one vertex (adjacent to the six outer vertices of the diagram) we get the graph of a polyhedron, the hexagonal trapezohedron, the incidence polyhedron of the hexagon. In the same way, if we take the incidence polytope of a permutohedron, we get a <i>d</i>-dimensional polytope whose vertices represent all the weak orderings of a <i>d</i>-element set (with one extra vertex representing the empty set of permutations, or an inconsistent weak ordering). The edges of the incidence polytope represent ways of breaking a tie by splitting one equivalence class into two smaller equivalence classes.<br /><br />In the same way, the nonempty faces of an <a href="https://en.wikipedia.org/wiki/Associahedron">associahedron</a> represent partial parenthesizations of a sequence, or partitions of a regular polygon by sets of diagonals into smaller convex polygons; its vertices represent complete parenthesizations or triangulations of a convex polygon. The vertices of the incidence polytope of the associahedron also represent partial parenthesizations, or partitions into convex polygons, except for one extra vertex representing the empty face of the associahedron. The edges of the incidence polytope represent ways of inserting one more pair of parentheses or one more diagonal.<a name='cutid1-end'></a>http://11011110.livejournal.com/323781.htmlpolytopesgeometrypermutohedronpublic2http://11011110.livejournal.com/323466.htmlWed, 20 Jan 2016 02:11:32 GMTBit tricks for wildcard strings and hypercube face lattices
http://11011110.livejournal.com/323466.html
<p>The binary strings of a given length, like the length-8 string "11011110" in the name of my blog, can be thought of as naming the vertices of a hypercube of the same dimension: each bit is one of the Cartesian coordinates of a vertex. In the same way,
binary strings with wildcard characters, like "11***1*0", can be thought of as naming the nonempty faces of the hypercube; the number of stars gives the dimension of the face, up to the string "********" which represents the whole cube. But there's one more face, the empty set Ø, which cannot be represented in the same way.</p>
<p>As with the collection of faces of any polyhedron, the faces of a hypercube can be partially ordered by inclusion, and this partial order forms a lattice: every family of faces has a unique meet (its greatest lower bound, the intersection of all the faces), and a unique join (its least upper bound, the unique minimal face that contains all of them).
For instance, the meet of two opposite sides of an ordinary 3-dimensional cube (for instance the two sides **0 and **1) is the empty set (that's why Ø needs to be a face) and the join of the same two opposite sides is the whole cube ***. This is the <a href="https://en.wikipedia.org/w/index.php?title=Face_lattice">face lattice</a> of the hypercube. (The hypercube itself can also be viewed as a face lattice of another kind of polyhedron, a simplex.)</p>
<p>Here's an example, for the face lattice of a square (a 2-dimensional cube). The inclusion ordering is shown by the edges, and each lattice element is labeled both by the part of the square it represents and by the corresponding wildcard string.</p>
<p align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/Square-face-lattice.png" border="0"></p>
<p>A 2012 NSDI paper by Kazemian, Varghese, and McKeown, "<a href="https://www.usenix.org/system/files/conference/nsdi12/nsdi12-final8.pdf">Header Space Analysis: Static Checking For Networks</a>", uses some of these operations. It needed them to be fast, so it describes how to implement them using a constant number of bit-manipulation operations. (Actually, it omits the join operation, because what it really wants is the union, but that can't always be described as a single face.) Their basic idea is to expand each symbol of the wildcard face description into two bits: 0 ⇒ 01, 1 ⇒ 10, and * ⇒ 11. Although the empty set Ø could not be written as a wildcard string, it can be represented in the same way as a binary number, the number 0. With this representation, we can perform subset testing, and meet and join operations, using a constant number of bit operations, as follows:</p>
<ul>
<li><p>One hypercube face A is a subset of another face B if and only if A & B == A.</p></li>
<li><p>The minimal face containing both A and B as subsets is the face A | B, the result of a bitwise Boolean or operation.</p></li>
<li><p>The intersection of faces A and B (their join) is usually A & B, the result of a bitwise Boolean and. But when the intersection is empty, A & B will not necessarily be zero as it should: it may only have 00 as the expansion of a single positions. To test for this possibility, let C = A & B and let M be a bitstring of the form ...01010101. Then if (~C >> 1) & ~C & M == 0, there is some position of the wildcard string where both bits are zero, and we should return zero as the result of the intersection operation. Otherwise, we can return A & B.</p></li>
</ul>
<p>One drawback to this representation is that it's a little tricky to test whether a given (non-wildcard) binary string is a match to a given wildcard string. To do so, we have to somehow expand each of its bits into two bits to put them into the correct position for the bitwise Boolean operations, and this bit permutation operation is not a primitive operation on many computer architectures (nor in many programming languages). So here's a second small trick to make this part easier without making the other parts any harder: simply rearrange the same bits into a more convenient ordering.</p>
<p>Instead of representing a wildcard string as a sequence of pairs of bits drawn from 01, 10, or 11, let's split those pairs out. We'll represent a wildcard string as a sequence of 2n bits in which the ith bit represents either whether the wildcard string can match a 0 in position i (if i < n) or whether it can match a 1 in position i – n (if i > n). That is, we use the same bits as before but we transpose their positions. Then the subset and join operations are exactly the same as before. The intersection (meet) operation only needs a small adjustment and simplification: instead of the expression (~C >> 1) & ~C & M == 0 we use (~C >> n) & ~C == 0, with no masking needed. And mapping a binary number x to the representation of the wildcard string that matches only x becomes trivial: use the formula (x << n) | ~x. To test whether x matches a wildcard string Y, compute the wildcard string X = (x << n) | ~x and then apply the subset test X & Y == X.</p>
<p>With this permuted representation, all the lattice operations as well as wildcard membership testing have simple constant-time implementations using only bitwise Boolean operations.</p><a name='cutid1-end'></a>http://11011110.livejournal.com/323466.htmlhypercubebit parallelismgeometrypublic0http://11011110.livejournal.com/323112.htmlSat, 16 Jan 2016 06:34:31 GMTLinkage for Wikipedia's 15th birthday
http://11011110.livejournal.com/323112.html
<ul><li><a href="http://idlewords.com/talks/website_obesity.htm">A great long-form new year's resolution to slim down your website</a> (<a href="http://www.metafilter.com/155972/The-dawn-of-the-Taft-Test">MF</a>; <a href="https://plus.google.com/100003628603413742554/posts/NsgXCP1nHZq">G+</a>)</li><br /><li><a href="https://meta.wikimedia.org/wiki/Research:Online_harassment_resource_guide">A guide to scholarly literature on online harassment and responses to it</a> (<a href="https://plus.google.com/100003628603413742554/posts/V2bdeh35ZER">G+</a>)</li><br /><li><a href="http://blogs.ams.org/visualinsight/2016/01/01/free-modular-lattice-on-3-generators/">The free modular lattice</a> and its resemblance to the <a href="https://en.wikipedia.org/wiki/Free_distributive_lattice">free distributive lattice</a> (<a href="https://plus.google.com/100003628603413742554/posts/cREnvinNtbq">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Stars_%28M._C._Escher%29">Escher's <i>Stars</i></a> (<a href="https://plus.google.com/100003628603413742554/posts/9gra8cv7oY7">G+</a>)</li><br /><li><a href="https://www.eatcs.org/index.php/nerode-prize">Nerode prize in multivariate algorithmics, call for nominations</a> (<a href="https://plus.google.com/u/0/100003628603413742554/posts/9LWufMRtsHG">G+</a>)</li><br /><li><a href="https://www.newscientist.com/article/dn28743-mathematicians-invent-new-way-to-slice-pizza-into-exotic-shapes/">Cutting pizza into congruent pieces that don't all meet at the center</a> (<a href="http://arxiv.org/abs/1512.03794">arXiv</a>; <a href="https://plus.google.com/100003628603413742554/posts/d5GhSXkgR5o">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=92WHN-pAFCs">Clear video explanation of the halting problem</a> (<a href="https://plus.google.com/100003628603413742554/posts/Pzs1RSEmu9r">G+</a>)</li><br /><li><a href="http://tex.stackexchange.com/questions/174375/challenge-images-from-hart-segerman">Challenge: draw these exploded polytopes automatically as nicely as Vi Hart did by hand</a> (<a href="https://plus.google.com/100003628603413742554/posts/BGSW3SdP7aT">G+</a>)</li><br /><li><a href="https://www.insidehighered.com/news/2016/01/11/new-analysis-offers-more-evidence-against-student-evaluations-teaching">Student evaluations better at measuring gender bias than teaching effectiveness</a> (<a href="http://www.metafilter.com/156195/More-evidence-that-student-evaluations-of-teaching-evaluate-gender-bias">MF</a>; <a href="https://plus.google.com/100003628603413742554/posts/G3MuBxGEkcp">G+</a>)</li><br /><li><a href="http://www.nytimes.com/2016/01/10/upshot/when-teamwork-doesnt-work-for-women.html">Co-authorship helps male but not female academics get ahead</a> (<a href="https://plus.google.com/100003628603413742554/posts/Vr5FJbrJkJC">G+</a>)</li><br /><li><a href="http://hyrodium.tumblr.com/post/137219704284/two-red-circles-which-are-tangent-are-transformed">Part of a series of nice visualizations of Möbius transformations</a> (<a href="https://plus.google.com/100003628603413742554/posts/NzhiW4TUXqt">G+</a>)</li><br /><li><a href="https://www.washingtonpost.com/news/wonk/wp/2016/01/13/this-is-actually-what-america-would-look-like-without-gerrymandering/">Gerrymandering explained</a> and some computational experiments in using k-medians to avoid it (<a href="https://plus.google.com/100003628603413742554/posts/jQxrHAi9wAw">G+</a>)</li><br /><li><a href="http://fivethirtyeight.com/features/the-most-edited-wikipedia-pages-over-the-last-15-years/">The most-edited Wikipedia pages over the last 15 years</a> (<a href="https://plus.google.com/100003628603413742554/posts/h5XhnDJEX3K">G+</a>)</li></ul>http://11011110.livejournal.com/323112.htmlfeminismwikipediacirclespartial ordersartgeometryacademiapoliticspublic0http://11011110.livejournal.com/322911.htmlWed, 13 Jan 2016 04:53:23 GMTReport from SODA, ALENEX, and ANALCO
http://11011110.livejournal.com/322911.html
The <a href="http://www.siam.org/meetings/da16/">27th ACM-SIAM Symposium on Discrete Algorithms</a>, in Arlington, Virginia, just finished, along with its satellite workshops ALENEX (experimental algorithmics, one of the most heavily rejected topics from SODA) and ANALCO (analytic combinatorics). With four parallel sessions going at most times, there's no way to take in everything, so here are my impressions of the small fraction I saw.<br /><br />The first talk I saw, Sunday morning by Rasmus Pagh, concerned <a href="http://arxiv.org/abs/1507.03225">locality-sensitive hashing</a>, a technique for performing approximate nearest-neighbor searches in high dimensions with subquadratic preprocessing and sublinear query time (with exponents depending on approximation quality). We can do this in linear space, or (now with Pagh's paper) without false negatives: every point within a query radius of the given point should be reported, along with some other farther-away points. Pagh asked as an open question whether we can get similar bounds for simultaneously achieving both linear space and no false negatives.<br /><br />In the early afternoon I switched between SODA and ALENEX. Aditya Bhaskara spoke about <a href="http://arxiv.org/abs/1510.07768">distributed peer-to-peer network reorganization</a>: making local changes to network connectivity to improve communications. Random graphs are good in many ways, and one way of obtaining one (subject to fixed vertex degrees) is to replace randomly-chosen pairs of disjoint edges by different edges on the same endpoints, but that doesn't work in a distributed setting because it can disconnect your graph. Instead, it works better to choose a random three-edge path and reconnect its two endpoints to the two middle vertices. Both kinds of random changing will eventually produce a random graph, but slowly (polynomial but very high degree). Bhaskara showed that they instead reach an expander (almost as good for most purposes) much more quickly.<br /><br />Back at ALENEX, Markus Blumenstock shaved a log off an <a href="http://epubs.siam.org/doi/abs/10.1137/1.9781611974317.10">algorithm for pseudoarboricity</a> (the maximum average degree of a subgraph) by using an approximation algorithm in place of an exact algorithm in the earlier steps of a binary search. He asked for other situations where the same trick works.<br /><br />Later in the afternoon, Benjamin Raichel spoke on his work with Avrim Blum and Sariel Har-Peled on <a href="http://arxiv.org/abs/1507.02574">approximating high-dimensional convex hulls</a> (in the sense that every input point should be at small distance from the approximation) as the hull of a small sample of points, by repeatedly adding the point farthest from the current hull to the sample. Despite the simplicity of the algorithm, the analysis is complicated and shows that both the number of sample points and the best distance you could achieve with a sample of that size are approximated to within an ε<sup>−2/3</sup> factor, independent of dimension.<br /><br />One of the good things about conferences like this is meeting up with people you otherwise wouldn't likely encounter. For instance, while grabbing coffee at a nearby bagel shop on Monday morning I ran into Brent Heeringa, whom I had previously met on the boat ride excursion at WADS 2011. Long ago I wrote a paper on <a href="https://en.wikipedia.org/wiki/Synchronizing_word">reset sequences (synchronizing words)</a> of finite automata, which included an algorithm for finding such a sequence by repeatedly appending the shortest sequence that merges two states. It's not hard to see (although it hadn't occurred to me to mention) that the result is an <i>n</i>-approximation, and Brent pointed me to recent work by Gawrychowski and Straszak at MFCS 2015 <a href="http://arxiv.org/abs/1408.5248">using PCP theory to prove that no significantly-sublinear approximation is possible</a>. This turns out to be an obstacle to proving the Černý conjecture on the existence of quadratic-length reset sequences, since the same linear factor comes up as the ratio between the lower and upper bounds on reset sequence length.<br /><br />We have long known that the power of two choices can be used to prevent conflicts in talk scheduling: after scheduling all the talks logically as usual, schedule an equal number of parallel sessions in which every speaker presents their talk a second time, in a random order. This would act much like a cuckoo hash table and allow anyone who doesn't have too long a list of must-see talks to find a schedule to see everything they want. Ironically, one of this year's scheduling victims was Mr. Power of Two Choices himself, Michael Mitzenmacher, speaking about two data structural applications of this idea in ANALCO directly opposite the data structures session of SODA, where John Iacono and Stefan Langerman presented an entertaining talk on a problem related to the dynamic optimality conjecture for binary search trees. One property you'd like a binary search tree to have is finger searching: if you search for two items near each other in the tree, the cost should be the log of their distance. Another is the working set property: if you're accessing only a subset of the items, the cost per access should be the log of the size of the subset. A third is static optimality: you should do as well as top-down searches in any static tree. If you combine working sets and fingers, you get a property equivalent to static finger trees: you should do as well as searches starting from the previously accessed item in any static tree. On a long train ride, Iacono and Langerman tried unsuccessfully to understand Cole's proof of the finger searching property for splay trees; instead, they ended up proving the <a href="http://epubs.siam.org/doi/10.1137/1.9781611974331.ch49">static finger property for greedy ass trees</a>, a different data structure defined using their previous work on the <a href="https://en.wikipedia.org/wiki/Geometry_of_binary_search_trees">geometry of binary search trees</a>.<br /><br />In his invited talk Monday, Sariel Har-Peled surveyed the theory and algorithmics of <a href="https://en.wikipedia.org/wiki/Bounded_expansion">graphs of polynomial expansion</a>, including his work with Quanrud at ESA 2015 on using this theory to get <a href="http://sarielhp.org/papers/14/low_density/">approximate independent sets for intersection graphs of fat objects</a>. There's a trick there: these graphs may be dense, but the ones that you get by overlaying two independent subsets of fat objects have polynomial expansion and therefore a good separator theorem. This property turns out to be enough to make a local optimization algorithm find good independent sets: if your independent set is not close enough to the optimum, you can improve it by exchanging a small piece of it surrounded by a separator for its overlay with the optimum. <a href="http://sarielhp.org/research/talks/16/01_soda/bp.pdf">Sariel has already put his slides online</a> if you want to learn more.<br /><br />My own talk Monday was about <a href="http://arxiv.org/abs/1510.03152">a class of 4-polytopes whose graphs can be recognized in polynomial time</a>, generalizing the 3-dimensional polyhedra formed from the Halin graphs. We don't know whether recognizing the graphs of all 4-polytopes is polynomial, although I suspect not (it should be complete for the <a href="https://en.wikipedia.org/wiki/Existential_theory_of_the_reals">existential theory of the reals</a>). My work also connects this problem to another problem with open complexity, <a href="https://en.wikipedia.org/wiki/Clustered_planarity">clustered planarity</a>. And the graphs from my paper turn out to have polynomial expansion. Following Sariel's example, <a href="http://www.ics.uci.edu/~eppstein/pubs/Epp-SODA-16.pdf">here are my talk slides</a>.<br /><br />Later in the afternoon I wanted to see the talk for a paper by Igor Pak and Scott Garrabrant on counting permutation patterns, but nobody showed up to deliver it. Instead I saw two talks about spanners, sparse graphs that approximate the distances of denser graphs (or of finite metric spaces). Arnold Filtser proved that <a href="http://epubs.siam.org/doi/10.1137/1.9781611974331.ch62">any metric space has a spanning tree whose weight is proportional to the minimum spanning tree and whose average distortion (the ratio of tree distance to ambient distance, averaged over all pairs of points) is constant</a>. And, in one of two best-paper winners (I didn't see the other one, by student Mohsen Ghaffari, on <a href="http://arxiv.org/abs/1506.05093">distributed independent sets</a>) Shiri Chechik showed with Christian Wulff-Nilsen that <a href="http://epubs.siam.org/doi/10.1137/1.9781611974331.ch63">every graph has a spanner (with constant distortion 2<i>k</i> for all pairs of points) whose weight and number of edges are both within a factor of <i>n</i><sup>1/<i>k</i></sup> of the minimum spanning tree</a>. This is optimal modulo a conjecture of Erdős, according to which graphs of girth 2<i>k</i> + 1 can have as many as Ω(<i>n</i><sup>1 + 1/<i>k</i></sup>) edges; deleting any edge from such a graph would give high distortion for the endpoints of the deleted edge.<br /><br />The final session on Monday was on computational geometry. Kyle Fox showed <a href="http://epubs.siam.org/doi/10.1137/1.9781611974331.ch82">how to find paths approximating the minimum of the integral of inverse local feature size</a> (a measure of how well the path avoids obstacles), complementing a paper by Nayyeri from WADS on approximating the integral of local feature size (a measure of how well the path stays near to a sampled submanifold). Sariel spoke again, on <a href="http://sarielhp.org/p/15/k_level/k_level.pdf">approximate levels in arrangements</a>; I learned from his talk that <a href="https://plus.google.com/101113174615409489753/posts/G38XNLU1G1S">lizards are coming</a>, that the convex hulls of the tiles in a tiling form pseudocircles, and that one can triangulate these pseudocircles to get a tiling again by simpler-shaped pieces within the original ones.<br /><br />Monday evening was the business meeting. Next year will be in Barcelona (according to the presenter at the meeting, home of the world's worst soccer team), but at a hotel 20 minutes from downtown. Phil Klein gets the unenviable task of chairing the program committee.<br /><br />Timothy Chan gave two talks on derandomization: one Monday about low-dimensional linear programming, and a second Tuesday about <a href="http://web.stanford.edu/~rrwill/derand-apsp-ov-cr.pdf">shaving super-polylogarithmic factors from all pairs shortest paths</a> (with Ryan Williams). The method also applies to testing whether pairs of vectors are orthogonal, which is almost the same as whether pairs of sets are disjoint, which is almost the same as whether pairs of graph vertices are not in any triangle, problems for which Tsvi Kopelowitz (with Porat and Pettie) gave <a href="http://arxiv.org/abs/1407.6756">3SUM-based lower bounds</a> in the same session. For instance, one can list all triangles in a <i>d</i>-degenerate graph in time <i>O</i>(<i>md</i>) (maybe with a log shaved?) and this bound is tight even for the graphs that have significantly fewer triangles than this.<br /><br />Jakub Łącki closed out the morning's contributed talks with one on <a href="http://arxiv.org/abs/1507.02426">graphs whose degree distribution obeys a power law</a>. He pointed out that for a random graph with this property, one can also use the power law to bound the number of higher-degree neighbors of each vertex (to a function significantly smaller than its degree). Random graphs are unrealistic but real-world graphs seem to obey similar local bounds, and this can be used to develop efficient algorithms. For instance, to find the triangles in such a graph, one can orient every edge from lower to higher degree (giving a DAG) and then search for pairs of outgoing edges.<br /><br />My favorite talk of Tuesday afternoon was the one by Veit Wiechert, on his work with Gwen Joret and Piotr Micek on <a href="http://arxiv.org/abs/1507.01120">sparsity properties of the covering graphs of partially ordered sets</a>. If the covering graph is series-parallel (or simpler) then the underlying partial order must have bounded order-dimension, but there are orders of unbounded dimension whose covering graphs are planar graphs of bounded treewidth. Nevertheless one can go much farther in this connection between sparsity and dimension by adding a height constraint: the main result of the paper is that for covering graphs of bounded expansion, the partial orders of bounded height have bounded dimension. One can't go farther, because there are nowhere-dense graphs of bounded-height orders that have unbounded dimension. This result implies, for instance, that in <a href="http://arxiv.org/abs/1504.04073">my WADS paper on parametric closure problems</a>, the polynomial bound for incidence posets of bounded-treewidth graphs can immediately be extended to incidence posets of bounded-expansion graphs.<br /><br />Of course, there's much more that I haven't written about (even among the stuff I saw), and I'd be interested in seeing similar reports that any other attendees might write. Please link them in the comments.<a name='cutid1-end'></a>http://11011110.livejournal.com/322911.htmlcomputational geometryconferencestalksalgorithmsdata structurespublic0http://11011110.livejournal.com/322718.htmlWed, 06 Jan 2016 06:34:48 GMT2015 in algorithm preprints
http://11011110.livejournal.com/322718.html
<a href="http://11011110.livejournal.com/302869.html">As in past years</a>, here's a roundup of what's been happening in the data structures and algorithms (cs.DS) section of arXiv.org. Over the last year, there were 1340 new algorithms preprints on arXiv; that's up about 13% from 1182 in 2014. The explosive growth rate of this section has been gradually diminishing over the years, but this time it didn't: it's higher than 2014's 10% growth rate. <a href="http://arxiv.org/help/stats/2015_by_area/index">Statistics on arXiv submissions more generally</a> are also available.<br /><br />I picked out the following ten papers (listed chronologically) as being particularly interesting to me. I'm not going to claim that they're in any objective sense the best of the year. Nevertheless I hope they're interesting to others as well.<ul><li><a href="http://arxiv.org/abs/1502.04588">"A (1+ε)-embedding of low highway dimension graphs into bounded treewidth graphs", arXiv:1502.04588</a>, by Feldmann, Fung, Könemann, and Post, ICALP 2015. The highway dimension of a graph models a natural property of road networks according to which, if you go far enough from some starting point, there are only a few different ways that your initial path can go. For instance, I used to live in Santa Barbara, where there are only three ways out of town: east or west along the coast on Highway 101, or north over the mountains on San Marcos Pass Road. (One rainy year, all three were blocked simultaneously.) The same phenomenon happens both on smaller and larger scales. This paper connects this theory with deep results in metric embedding and graph structure theory, allowing many more graph problems to be approximated efficiently on low-highway-dimension graphs. It appears closely related to Feldmann's second ICALP 2015 paper which used metric embeddings as part of approximation algorithms for graphs of low highway dimension.</li><br /><li><a href="http://arxiv.org/abs/1502.05204">"Clustered integer 3SUM via additive combinatorics", arXiv:1502.05204</a>, by Chan and Lewenstein, STOC 2015. The 3SUM problem is the following: you're given a collection of numbers and you want to test whether some triple of them sums to zero. A naive algorithm would take cubic time but with a little care it can be solved in quadratic time instead; for a long time that was believed to be optimal, and this assumption was used to show lower bounds on many other algorithmic problems. The quadratic time bound was broken recently by Williams at STOC'14, but the improvement was in a lower-order term, not the quadratic main exponent of the time bound. This paper gives a bigger break, with exponents bounded below two, although only for some special cases: small integer values, or subsets of a preprocessed set of integers.</li><br /><li><a href="http://arxiv.org/abs/1503.03465">"Faster 64-bit universal hashing using carry-less multiplications", arXiv:1503.03465</a>, by Lemire and Kaser. <a href="https://plus.google.com/100003628603413742554/posts/1X2mUDNsEN1">I already posted briefly about this</a>, but the basic idea is that modern CPUs now include instructions for doing arithmetic in GF2[<i>x</i>] (the ring of polynomials over the binary field), and this can be used to make a high-quality hash function very fast.</li><br /><li><a href="http://arxiv.org/abs/1504.01431">"If the current clique algorithms are optimal, so is Valiant's parser", arXiv:1504.01431</a>, by Abboud, Backurs, and Williams, FOCS 2015. Clique-finding and context-free grammar parsing are both among the problems that can be sped up using fast matrix multiplication: a <i>k</i>-clique in an <i>n</i>-vertex graph can be found in time <i>O</i>(<i>n</i><sup><i>k</i>ω/3</sup>), and a grammar of size <i>g</i> with an <i>n</i>-symbol input string can be parsed in time <i>O</i>(<i>n</i><sup>ω</sup>), where ω is the exponent of fast matrix multiplication. Now this paper shows that the two problems are related: any additional speedup of grammar parsing would also speed up clique-finding, even for grammars of constant size. This is a big improvement on previous lower bounds for context-free parsing which were conditional and required non-constant grammars.</li><br /><li><a href="http://arxiv.org/abs/1507.02318">"A faster pseudopolynomial time algorithm for subset sum", arXiv:1507.02318</a>, by Koiliaris and Xu. The textbook algorithm for subset sum takes time <i>O</i>(<i>nK</i>) where <i>n</i> is the number of input items (assumed to be positive integers) and <i>K</i> is the sum to be achieved. This paper reduces the dependence on <i>n</i> to the square root.</li><br /><li><a href="http://arxiv.org/abs/1507.03738">"Tight bounds for subgraph isomorphism and graph homomorphism", arXiv:1507.03738</a>, by Fomin, Golovnev, Kulikov, and Mihajlin, to appear next week at SODA 2016. Subgraph isomorphism is the problem of finding one graph as a subgraph of another. It includes as special cases NP-hard problems such as finding cliques or Hamiltonian cycles, but when the subgraph to be found has a small number <i>k</i> of vertices, it can be solved in time <i>n</i><sup><i>O</i>(<i>k</i>)</sup>. This paper proves a lower bound of the same form, conditional on the <a href="https://en.wikipedia.org/wiki/Exponential_time_hypothesis">exponential time hypothesis</a>, the assumption that there is no subexponential algorithm for Boolean satisfiability.</li><br /><li><a href="http://arxiv.org/abs/1511.00700">"The 4/3 additive spanner exponent is tight", arXiv:1511.00700</a>, by Abboud and Godwin. This is part of a line of research on approximating distances in arbitrary unweighted graphs by sparse graphs, so accurately that the error is only additive rather than multiplicative. It seemed that there was a tradeoff between the number of edges in the sparse graph and the accuracy of approximation: you could decrease the exponent of the number of edges (relative to the number of vertices) at the expense of a bigger addiitive error. But the best result of this type known was that with error at most 6 you could get a spanner with only <i>O</i>(<i>n</i><sup>4/3</sup>) edges. Now it seems that the tradeoff stops here: fewer edges will necessarily cause an additive error that grows as a power of <i>n</i> rather than staying constant.</li><br /><li><a href="http://arxiv.org/abs/1511.07070">"Which regular expression patterns are hard to match?", arXiv:1511.07070</a>, by Backurs and Indyk. The obvious answer is "none of them" because regular-expression matching has a low polynomial time bound. But it's quadratic (the product of the expression length and the input length), while some special cases such as matching a collection of dictionary words can be solved much more quickly (e.g. by building a DFA and then running it). This paper proves a strong dichotomy (assuming the exponential time hypothesis) between expressions that require near-quadratic time and expressions that take only near-linear time.</li><br /><li><a href="http://arxiv.org/abs/1511.02612">"Optimal dynamic strings", arXiv:1511.02612</a>, by Gawrychowski, Karczmarz, Kociumaka, Łącki, and Sankowski. The usual ways of representing strings take time linear in the string length to form new strings by concatenating or splitting the existing ones, and linear time to compare two strings or find the first position at which they differ. This paper gives a data structure for the same operations that takes logarithmic time per update and constant time per query.</li><br /><li><a href="http://arxiv.org/abs/1512.03547">"Graph isomorphism in quasipolynomial time", arXiv:1512.03547</a>, by Babai. So much has already been written about this one. Need I say more? But there is more: I've seen some statistics on most-downloaded papers on the arXiv (too rough to link to), and this is the cs.DS representative on the list, with tens of thousands of accesses. So obviously it's getting read far beyond its own specialized research community.</li></ul><a name='cutid1-end'></a>http://11011110.livejournal.com/322718.htmlalgorithmspaperspublic5http://11011110.livejournal.com/322482.htmlFri, 01 Jan 2016 03:43:03 GMTLinkage for the end of the year
http://11011110.livejournal.com/322482.html
<ul><li><a href="http://www.theage.com.au/comment/why-wikipedia-at-15-is-a-beautiful-exercise-in-scholarly-excellence-20151209-glj79f.html">Why Wikipedia at 15 is a beautiful exercise in scholarly excellence</a> (<a href="https://plus.google.com/100003628603413742554/posts/CeGNjP62EkY">G+</a>)</li><br /><li><a href="http://www.csun.edu/gd2015/">Graph Drawing 2015 proceedings open access through Jan.18</a> (follow link from conference page; <a href="https://plus.google.com/100003628603413742554/posts/38BHprrWCqP">G+</a>)</li><br /><li><a href="http://bit.ly/1O0PXRc">How circle packings bring together some important ideas in geometry, topology, and analysis</a> (<a href="https://plus.google.com/100003628603413742554/posts/Ntc64jLdC9B">G+</a>)</li><br /><li><a href="http://www.theguardian.com/science/2015/dec/14/many-women-in-stem-fields-expect-to-quit-within-five-years-survey-finds">Many women in STEM fields expect to quit within five years, survey finds</a> (<a href="https://plus.google.com/100003628603413742554/posts/NzP4FuzVfs7">G+</a>)</li><br /><li><a href="https://pbelmans.wordpress.com/2015/12/21/on-towards-mathjax-3-0/">The MathJax project moves away from thinking of itself as a steppingstone to MathML</a> (<a href="https://plus.google.com/100003628603413742554/posts/disnZBsNEKR">G+</a>)</li><br /><li><a href="http://scholarlyoa.com/2015/12/17/instead-of-a-peer-review-reviewer-sends-warning-to-authors/">Continued issues with peer review at MDPI</a> (<a href="https://plus.google.com/100003628603413742554/posts/JYQuzosjqsP">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Two_ears_theorem">Two ears theorem</a> (<a href="https://plus.google.com/100003628603413742554/posts/6KQK3asxPsn">G+</a>)</li><br /><li><a href="https://www.youtube.com/watch?v=QAja2jp1VjE">Using dot patterns to visualize Euclidean transformations</a> (<a href="https://plus.google.com/100003628603413742554/posts/RujpJHmVSdS">G+</a>)</li><br /><li><a href="http://retractionwatch.com/2015/12/23/korean-prosecutors-seek-jail-time-for-professors-in-massive-plagiarism-scheme/">Academic plagiarism leads to criminal charges in South Korea</a> (<a href="https://plus.google.com/100003628603413742554/posts/BKrHNXmTRWz">G+</a>)</li><br /><li><a href="http://blogs.scientificamerican.com/roots-of-unity/contrasts-in-number-theory">Evelyn Lamb compares Piper Harron's and Shinichi Mochizuki's approaches to telling the world about their mathematics</a> (<a href="https://plus.google.com/100003628603413742554/posts/SMqXRpC839x">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Binary_logarithm">Binary logarithm</a>, newly listed as a Wikipedia Good Article (<a href="https://plus.google.com/100003628603413742554/posts/7bHRTJDEfQG">G+</a>)</li><br /><li><a href="http://bit.ly/1NXd9QR">Mathematical artwork visualizing conjugacy classes of subgroups of the icosahedral group</a>, with new years wishes from the AMS (<a href="https://plus.google.com/100003628603413742554/posts/8cMb5UbP8CU">G+</a>)</li><br /><li><a href="https://en.wikipedia.org/wiki/Secret_sharing">Secret sharing</a>, and an attempt to make more sense out of a minor technical subplot of <i>Star Wars</i> (<a href="https://plus.google.com/100003628603413742554/posts/11tL6jWf2NU">G+</a>)</li></ul>http://11011110.livejournal.com/322482.htmlfeminismgraph drawingwikipediacirclespeer reviewartgeometrynumber theoryplagiarismpublic0http://11011110.livejournal.com/322140.htmlTue, 22 Dec 2015 01:55:26 GMTDiscrepancy of uniform hypergraphs
http://11011110.livejournal.com/322140.html
A hypergraph is just another way of talking about a family of sets: one thinks of the elements of the sets as vertices and the sets themselves as being like edges of a graph. Except that, unlike edges, sets in a family of sets can have more than two vertices, so we call them hyperedges rather than edges. An <i>r</i>-uniform hypergraph is one in which all the hyperedges have the same number of vertices as each other; for instance, a 2-uniform hypergraph is just an ordinary graph.<br /><br />If the vertices of a hypergraph are given two colors (black and white), the <a href="https://en.wikipedia.org/wiki/Discrepancy_of_hypergraphs">discrepancy</a> of the coloring measures how evenly each hyperedge is colored. In an ordinary graph, a proper 2-coloring has equal numbers of each color in each edge, and we want to get as close to that as we can in a hypergraph as well. So the discrepancy of a hyperedge is defined to be the absolute value of the difference between the numbers of black and white vertices, the discrepancy of a coloring is defined as the maximum of the discrepancies of any of the edges, and the discrepancy of a hypergraph is defined as the minimum discrepancy of any of its 2-colorings. For instance, the 4-uniform hypergraph shown as a Venn diagram below has discrepancy 2: it turns out not to be possible to 2-color the vertices so that all four hyperedges are evenly balanced between black and white. For if it were, the three lower sets (red, blue, and yellow, all sharing the bottom three vertices but each with a different top vertex) would force the three top vertices to have the same color as each other, causing the upper green set to be unbalanced.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/4-unbalanced.png"></div><br /><br />How many hyperedges must an <i>r</i>-uniform hypergraph have in order to force it to be unbalanced? This question generalizes the question of how many edges are needed to make a graph non-bipartite, for which the answer is three: a triangle is non-bipartite, and anything with fewer edges isn't. For <i>r</i> = 4, the example above (and some messy case analysis for fewer sets) shows that the answer is four. But for <i>r</i> = 6, it's three again: a 6-uniform hypergraph formed by tripling each vertex of a triangle (without changing the edge intersection pattern) has discrepancy two, because two of the sets of three equivalent vertices must have the same majority color.<br /><br /><div align="center"><img src="http://www.ics.uci.edu/~eppstein/0xDE/6-unbalanced.png"></div><br /><br />Generalizations of these examples show that three sets can force a nonzero discrepancy whenever <i>r</i> is 2 mod 4, and four can force a nonzero discrepancy whenever <i>r</i> is 4 or 8 mod 12, so the remaining cases are the ones where <i>r</i> is divisible by 12. On the other hand, the best upper bound I know how to prove that is valid for arbitrary <i>r</i> is logarithmic in <i>r</i>. I don't even know whether the number of sets needed to force a nonzero discrepancy is bounded for all <i>r</i>, or whether it can grow without bound as a function of <i>r</i>.<br /><br />One can ask the same sort of question when <i>r</i> is an odd number, of course. To prevent the problem from becoming trivial, we can define a hypergraph to be balanced when its discrepancy is at most one, and ask for the minimum number of hyperedges in an unbalanced <i>r</i>-uniform hypergraph. For this variation of the problem, the number of hyperedges needed to force the hypergraph to be unbalanced has an even weaker upper bound, of the form <i>r</i> + <i>O</i>(log <i>r</i>).<br /><br />This problem comes up in my latest preprint with Dan Hirschberg, "<a href="http://arxiv.org/abs/1512.06488">From Discrepancy to Majority</a>", arXiv:1512.06488, to appear at LATIN 2016. We use the odd-<i>r</i> case as a preliminary step in an algorithm<br />that takes as input a two-colored set of elements, and is allowed to access the coloring only by means of an oracle that returns the discrepancy of an <i>r</i>-subset of the elements. This problem was introduced in a paper by De Marco and Kranakis, motivated by fault diagnosis of distributed systems, and we improve their bounds on the number of queries needed by roughly a factor of <i>r</i>/2. In order to get any useful information at all from the oracle, we need to make it give an answer different from "this set has the minimum possible discrepancy", and to do that we need to set up a system of sets where at least one of them does not have the minimum possible discrepancy.<br /><br />But I think the problem of finding minimal unbalanced uniform hypergraphs is interesting on its own, even aside from this application. The bounds we give on it in our paper seem to be far from tight, in part because they give lower-order contributions to the overall query bound for our algorithm so we didn't have a lot of motivation for tightening them. So there should be scope for plenty more exploration of this problem.<a name='cutid1-end'></a>http://11011110.livejournal.com/322140.htmlcombinatoricsalgorithmspaperspublic0