<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:11011110</id>
  <title>0xDE</title>
  <subtitle>0xDE</subtitle>
  <author>
    <name>0xDE</name>
  </author>
  <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom"/>
  <updated>2012-05-17T02:55:55Z</updated>
  <lj:journal userid="7784841" username="11011110" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://11011110.livejournal.com/data/atom" title="0xDE"/>
  <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:248442</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/248442.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=248442"/>
    <title>Link roundup</title>
    <published>2012-05-17T02:55:55Z</published>
    <updated>2012-05-17T02:55:55Z</updated>
    <content type="html">Some links not long enough for their own separate posts:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://news.cnet.com/8301-1035_3-57435601-94/verizon-to-kill-unlimited-data-plans-for-existing-subscribers/"&gt;Verizon to kill unlimited data plans for existing subscribers&lt;/a&gt;. As a happy user of a 3G android phone with Verizon's unlimited plan, this is causing me some apprehension: I don't want to be switched to a new plan on a new and expensive 4G phone.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://scholarlykitchen.sspnet.org/2012/04/10/emergence-of-a-citation-cartel/"&gt;Yet another instance of Goodhart's law in bibliometrics&lt;/a&gt;. Some journal editors are driving up the impact factors of their journals by publishing review articles that cite everything they've recently published. I hesitate to call it fraudulent because why shouldn't they write review papers? But it does seem from the details to be less about trying to help other people find the literature and more about just making numbers bigger. I still don't understand why authors and tenure committees care about impact factors at all, anyway. If you want to tell whether a paper has been having an impact, look at its own citations, not at the citations of the other papers it happens to have been published with. Via &lt;a href="http://www.metafilter.com/115956/The-Emergence-of-a-Citation-Cartel"&gt;MF&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In case you are an ACM member and still haven't voted in the ACM elections (as I hadn't until today), Brighton Godfrey has helpfully collected &lt;a href="http://youinfinitesnake.blogspot.com/2012/05/notes-on-acm-open-access-and-copyright.html"&gt;the candidates' positions on open access and copyright&lt;/a&gt;. Via &lt;a href="https://plus.google.com/101113174615409489753/posts/AgJv7WC6FFR"&gt;Sariel&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://boingboing.net/2012/05/16/global-subway-systems-converge.html"&gt;ideal shape for a metropolitan subway system&lt;/a&gt; turns out to be well-connected in the city center and tree-like in the suburbs, with a fixed ratio of suburb distance to center radius.&lt;br /&gt;&lt;br /&gt;I've been looking at cars lately. Here's &lt;a href="http://en.wikipedia.org/wiki/Alfa_Romeo_Giulietta_(2010)"&gt;a pretty and popular European car&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Dodge_Dart_(2013)"&gt;the ruined and hit-with-an-ugly-stick American version&lt;/a&gt;. Why does Detroit do this to us?&lt;br /&gt;&lt;br /&gt;And finally, a video that becomes even more impressive when you learn that its images and music were generated algorithmically from only 4k of code (via &lt;a href="https://plus.google.com/116789976245745688459/posts/bAMiw2SWMST"&gt;Josiah&lt;/a&gt;, also on &lt;a href="http://boingboing.net/2012/05/10/4kb-of-code-generated-this-ama.html"&gt;BoingBoing&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;lj-embed id="26" /&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:248265</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/248265.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=248265"/>
    <title>Open-access research and Wikipedia</title>
    <published>2012-05-14T22:21:12Z</published>
    <updated>2012-05-14T22:21:12Z</updated>
    <category term="wikipedia"/>
    <content type="html">A report on open-access issues in Wikipedia, &lt;a href="http://en.wikipedia.org/wiki/Wikipedia:Wikipedia_Signpost/2012-05-14/Special_report"&gt;Wikimedia and the "seismic shift" towards open-access research publication&lt;/a&gt;, has just been published in the weekly newsletter &lt;i&gt;The Signpost&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;The most obvious issue is: what to cite. Although there's some natural pressure towards citing open-access sources in Wikipedia just because that's what its editors can easily find, Wikipedia doesn't discriminate against closed sources. However, there's been talk of using a lock icon to distinguish more clearly between open and closed sources. It's not obvious to me that that's a distinction that can always be made easily: for instance, when the New York Times allows anyone to read a certain number of articles per month but then switches to a pay-per-view model for readers who exceed that limit, is it open access or not?&lt;br /&gt;&lt;br /&gt;Additionally, although most discussions of open access focus on whether people can read publications without having to pay an access fee or a subscription fee, there's another issue the report brings up: licensing conditions for reuse. If papers are published under a sufficiently liberal Creative Commons license, their text and figures can be reused within Wikipedia (with proper attribution), and vice versa. But there are subtle issues here involving compatibility of different variations of the licenses.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:247843</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/247843.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=247843"/>
    <title>Flip distance is NP-complete</title>
    <published>2012-05-14T06:38:13Z</published>
    <updated>2012-05-14T06:38:13Z</updated>
    <category term="flip graphs"/>
    <category term="triangulation"/>
    <content type="html">A paper uploaded to the arXiv this evening by Anna Lubiw and Vinayak Pathak just caught my attention. I think the title speaks for itself (always a good thing for a title to do): &lt;a href="http://arxiv.org/abs/1205.2425"&gt;Flip Distance Between Two Triangulations of a Point-Set is NP-complete&lt;/a&gt;. The proof doesn't look very hard, once you see it: a standard gadget-based reduction to a variation of the problem for polygons with holes, together with another reduction from polygons to point sets that consists of protecting the polygon edges with layers of triangles that would be too expensive to flip through.&lt;br /&gt;&lt;br /&gt;Although it's a big step forward, the paper still doesn't resolve the question of how hard it is to compute flip distance between triangulations of a convex polygon. This remains as a big open problem, one of a small number of natural problems neither known to be polynomial time nor known to be NP-hard.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:247725</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/247725.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=247725"/>
    <title>Hot Rods for Rancho</title>
    <published>2012-05-11T06:52:04Z</published>
    <updated>2012-05-11T06:52:04Z</updated>
    <category term="photography"/>
    <content type="html">In the last few weeks the main thing I've been doing with my camera is taking pictures of the whiteboard in the lectures for my &lt;a href="http://www.ics.uci.edu/~eppstein/163/index.html"&gt;graph algorithms class&lt;/a&gt; (a trick I learned about from Joe Mitchell) so that the students can have some instant lecture notes. But I also found time last weekend to take &lt;a href="http://www.ics.uci.edu/~eppstein/hr4r/index.html"&gt;a few photos&lt;/a&gt; at a small car show at my son's school. Here's one of a pink Cadillac that got all the schoolgirls to flock around it:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.ics.uci.edu/~eppstein/pix/hr4r/PinkCaddyTailfin.html"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/pix/hr4r/PinkCaddyTailfin-m.jpg" border="2" style="border-color:black;" /&gt;&lt;/a&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:247500</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/247500.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=247500"/>
    <title>Comprehensive update to PADS</title>
    <published>2012-05-09T23:46:46Z</published>
    <updated>2012-05-09T23:46:46Z</updated>
    <category term="python"/>
    <content type="html">I just updated my &lt;a href="http://www.ics.uci.edu/~eppstein/PADS/"&gt;PADS&lt;/a&gt; library of Python algorithms to Python 2.7. So it will no longer run on older versions of Python, but on the other hand it now appears to pass all the compatibility checks for Python 3 (although I haven't tried actually running it in Python 3).&lt;br /&gt;&lt;br /&gt;My favorite things about upgrading from 2.6 to 2.7 are set expressions, set comprehensions and dict comprehensions. That is, you can write {1,2,3} and get a set object containing the elements 1,2,3, you can write &lt;nobr&gt;{i:(i^1,i^2,i^4) for i in range(8)}&lt;/nobr&gt; to make a dictionary that maps each integer from 0 to 7 to its three cube neighbors (that is, in &lt;a href="http://www.python.org/doc/essays/graphs/"&gt;van Rossum's format for representing graphs&lt;/a&gt;, the graph of the cube), and you can write expressions like &lt;nobr&gt;{v for v in avail if len(avail[v]) == 1}&lt;/nobr&gt; to make a set of the elements mapped by avail to a one-element list.&lt;br /&gt;&lt;br /&gt;Most of my changes involved replacing the old Set package with the slightly-less-old built-in set type, and using the new comprehension syntax. One minor issue that caused me a little difficulty was that it used to be possible to compare None with other objects, which allowed it to be used as a flag value in certain cases and which also allowed expressions like map(min,L1,L2) to find the minima of items in the same positions of two lists even when the lists had different lengths, but now that causes a compatibility warning. Another thing that took me a while to figure out was &lt;a href="http://bugs.python.org/issue11796"&gt;issue 11796&lt;/a&gt;, which means that set and dict comprehensions (and in Python 3 list comprehensions) are not really usable when you're initializing class variables, because they mostly can't see the other class variables.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:247187</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/247187.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=247187"/>
    <title>Insecurity questions</title>
    <published>2012-04-28T19:37:13Z</published>
    <updated>2012-04-28T19:37:13Z</updated>
    <category term="security"/>
    <content type="html">The iTunes music store will no longer let me buy music from them unless I fill out what they call "security questions". You know the kind: what was the first car you ever owned? What was the favorite of the cars you've owned? What was the least favorite? (These are all actual options and it lets you choose all three as your three security questions.) So anyone who knows enough about your personal history can impersonate you. For the record, I have owned a grand total of four cars, and I don't keep their brands secret from the world (for instance they've probably shown up in some of my photos).&lt;br /&gt;&lt;br /&gt;These things always fall back to allowing you to reset your password and send you a temporary one by email, anyway. So fortunately it works to fill these things out with gibberish answers, knowing I won't remember them and nobody else will be able to guess them. I'm dreading the day when they put enough AI in the setup interface to require you to select actual makes of cars.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:247018</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/247018.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=247018"/>
    <title>An object that moves by folding and unfolding itself</title>
    <published>2012-04-26T18:25:41Z</published>
    <updated>2012-04-26T18:25:41Z</updated>
    <category term="origami"/>
    <content type="html">&lt;div align="center"&gt;&lt;lj-embed id="20" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;It makes me wonder about control issues: I would think that this one doesn't have enough degrees of freedom to both turn and propel itself. But then, I could say the same thing about a one-string kite: really all you can do is pull or let go the string, giving you only one degree of freedom to control it, but still kites can be flown and controlled. And obviously, this one can be flown as well.&lt;br /&gt;&lt;br /&gt;(&lt;a href="http://www.metafilter.com/115317/On-some-alien-planet-this-is-how-they-do-wheels"&gt;Via MF&lt;/a&gt;)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:246718</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/246718.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=246718"/>
    <title>Fourier Life</title>
    <published>2012-04-22T22:53:16Z</published>
    <updated>2012-04-22T22:53:16Z</updated>
    <category term="cellular automata"/>
    <content type="html">Sean Murphy has been doing some interesting experiments with two-dimensional cellular automata, described at his &lt;a href="http://stm1968.tripod.com/fourierlife/"&gt;Fourier Life&lt;/a&gt; web site. The name comes from his use of &lt;a href="http://stm1968.tripod.com/fourierlife/solution.htm"&gt;Fourier analysis&lt;/a&gt; to detect &lt;a href="http://www.ics.uci.edu/~eppstein/ca/replicators/"&gt;replicators&lt;/a&gt; in cellular automaton rules: if one does a Fourier transform of the graph of live cells vs time starting from random initial conditions, replicators show up as regularly spaced peaks in the frequency domain, in contrast to oscillators which would only show up as a single peak.&lt;br /&gt;&lt;br /&gt;Based on this technique, he's found &lt;a href="http://stm1968.tripod.com/fourierlife/creatures.htm"&gt;many individual replicators&lt;/a&gt; and near-replicators, with interesting patterns of behavior. Two of my favorites are "Qix!" and "Butterflies vs Centipedes" (both on three-state semitotalistic Von Neumann neighborhood automata): in Qix!, replicators compete with wick-stretchers, that eventually fill the grid with a Mondrian-like rectangular subdivision, while in "Butterflies vs Centipedes" the butterflies and centipedes refer to two different types of replicators that can both be seen at the same time in different regions of the grid.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:246438</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/246438.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=246438"/>
    <title>COCOON acceptances</title>
    <published>2012-04-20T00:05:43Z</published>
    <updated>2012-04-20T00:05:43Z</updated>
    <category term="graph drawing"/>
    <category term="conferences"/>
    <content type="html">&lt;p&gt;The &lt;a href="http://cocoon.it.usyd.edu.au/accepted.html"&gt;list of accepted papers and abstracts from COCOON 2012&lt;/a&gt; is online.&lt;/p&gt;

Quite a few of them are about graph drawing and geometric graphs:
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://arxiv.org/abs/1106.2694"&gt;Geometric RAC simultaneous drawings of graphs&lt;/a&gt;, by Evmorfia Argyriou, Michael Bekos, Michael Kaufmann and Antonios Symvonis&lt;/li&gt;
&lt;li&gt;Monotone paths in planar convex subdivisions, by Adrian Dumitrescu, Günter Rote and Csaba Toth&lt;/li&gt;
&lt;li&gt;Simultaneous embeddings with vertices mapping to pre-specified points, by Taylor Gordon&lt;/li&gt;
&lt;li&gt;Multilevel drawings of clustered graphs, by Fabrizio Frati&lt;/li&gt;
&lt;li&gt;&lt;a href="http://page.math.tu-berlin.de/~knauer/lncs_slopes.pdf"&gt;Outerplanar graph drawings with few slopes&lt;/a&gt;, by Kolja Knauer, Piotr Micek and Bartosz Walczak&lt;/li&gt;
&lt;li&gt;&lt;a href="http://sydney.edu.au/engineering/it/~shhong/1planar2.pdf"&gt;Fáry's theorem for 1-planar graphs&lt;/a&gt;, by Seok-Hee Hong, Peter Eades, Giuseppe Liotta and S Poon&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.cs.bgu.ac.il/~chaitman/SteinerRatio.pdf"&gt;Unexplored Steiner ratios in geometric networks&lt;/a&gt;, by Lilach Chaitman-Yerushalmi and Paz Carmi&lt;/li&gt;
&lt;/ul&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:246085</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/246085.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=246085"/>
    <title>Binary numbers without the zeros</title>
    <published>2012-04-18T00:09:36Z</published>
    <updated>2012-04-18T03:12:20Z</updated>
    <category term="number theory"/>
    <content type="html">Every positive integer has a unique representation using a form of base-2 place-value notation (that is, the digits represent 1's, 2's, 4's, 8's, etc just as in binary notation) but where the digits are 1 and 2 rather than 0 and 1:&lt;br /&gt;&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;111&lt;br /&gt;112&lt;br /&gt;121&lt;br /&gt;122&lt;br /&gt;211&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;These same digit strings in the same ordering can also be interpreted as the ternary numbers that don't have any 0 digits. The successor to a number is computed by finding the lowest-order non-two digit, incrementing it, and resetting all the lower-order 2's back to 1's. This differs from ternary, where the successor would reset all the lower-order 2's to 0's.&lt;br /&gt;&lt;br /&gt;It's also easy to add these numbers directly, by the standard right-to-left method with carries. Each carry is 0, 1, or 2; in each digit, we compute the sum of the two given digits and the previous carry, write down 1 if the sum is even and 2 if it is odd, and carry half the remaining amount.&lt;br /&gt;&lt;br /&gt;ETA: Via &lt;a href="http://oeis.org/A007931"&gt;OEIS&lt;/a&gt; I find &lt;a href="http://www.jstor.org/stable/3029479"&gt;"A number system without a zero" (Foster, Math. Mag. 1947)&lt;/a&gt; which does the same sort of thing in decimal.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:245823</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/245823.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=245823"/>
    <title>GD2012 poster</title>
    <published>2012-04-13T07:33:23Z</published>
    <updated>2012-04-13T07:33:23Z</updated>
    <category term="nauru graph"/>
    <category term="graph drawing"/>
    <category term="conferences"/>
    <category term="lombardi"/>
    <content type="html">The &lt;a href="http://www.gd2012.org/gd2012poster.pdf"&gt;poster for Graph Drawing 2012&lt;/a&gt; (in September in Redmond, Washington) is out, and it looks like they're using a &lt;a href="http://11011110.livejournal.com/201066.html"&gt;Lombardi Spirograph&lt;/a&gt; drawing of the &lt;a href="http://en.wikipedia.org/wiki/Nauru_graph"&gt;Nauru graph&lt;/a&gt; as a central design element.&lt;br /&gt;&lt;br /&gt;The submission deadline is June 8, less than two months away, so there's still time to come up with new graph drawing ideas and write them up for the conference. The &lt;a href="http://www.gd2012.org/"&gt;conference web site&lt;/a&gt; has more information.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:245688</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/245688.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=245688"/>
    <title>New Google+ user interface</title>
    <published>2012-04-11T20:44:44Z</published>
    <updated>2012-04-11T22:01:48Z</updated>
    <category term="tools"/>
    <content type="html">Come on, Google, you can do better than this. Put the "you might like" entries under the stream, instead of under the trending topics. That way, you can reduce the useful part of the UI to an even tinier fraction of the screen, and make the web browsing experience match the smartphone experience even more closely.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/new-g+-ui.png"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;ETA: For a lot more on this, see &lt;a href="https://plus.google.com/s/%23whitespace"&gt;#whitespace&lt;/a&gt;. In other news, Google+ is now trying to be twitter as well as trying to be facebook.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:245408</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/245408.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=245408"/>
    <title>Easter eggs</title>
    <published>2012-04-08T07:10:34Z</published>
    <updated>2012-04-08T07:10:34Z</updated>
    <category term="photography"/>
    <category term="family"/>
    <content type="html">The kids (and their parents) are still not too old to have some fun decorating eggs...&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.ics.uci.edu/~eppstein/pix/easter12/index.html"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/pix/easter12/EasterEggs-m.jpg" border="2" style="border-color:black;" /&gt;&lt;/a&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:245164</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/245164.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=245164"/>
    <title>SWAT acceptances</title>
    <published>2012-04-07T15:31:33Z</published>
    <updated>2012-04-07T15:32:06Z</updated>
    <category term="conferences"/>
    <category term="papers"/>
    <content type="html">The &lt;a href="http://swat2012.helsinki.fi/programme/#papers"&gt;list of accepted papers (with abstracts)&lt;/a&gt; to the &lt;a href="http://swat2012.helsinki.fi/"&gt;13th Scandinavian Symposium and Workshops on Algorithm Theory (SWAT 2012)&lt;/a&gt; is now public.&lt;br /&gt;&lt;br /&gt;(Via &lt;a href="https://plus.google.com/101546077160053841119"&gt;+Jukka Suomela&lt;/a&gt; and &lt;a href="https://plus.google.com/106617317941442455743"&gt;+SWAT 2012&lt;/a&gt;)</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:244894</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/244894.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=244894"/>
    <title>Configurations</title>
    <published>2012-04-05T05:16:17Z</published>
    <updated>2012-04-05T05:16:17Z</updated>
    <category term="configurations"/>
    <category term="wikipedia"/>
    <content type="html">I've been having some fun lately making drawings of some famous &lt;a href="http://en.wikipedia.org/wiki/Configuration_(geometry)"&gt;configurations&lt;/a&gt; of points and lines (in most cases with equal numbers of points per line and equal numbers of lines per point). You can go read the Wikipedia article if you want detailed explanations, but here are just the pictures.&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;The &lt;a href="http://en.wikipedia.org/wiki/Cremona%E2%80%93Richmond_configuration"&gt;Cremona–Richmond configuration&lt;/a&gt;, whose points correspond to pairs of elements from a six-element set and whose lines correspond to triples of disjoint pairs:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/CR.png" style="background:white;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://en.wikipedia.org/wiki/Hesse_configuration"&gt;Hesse configuration&lt;/a&gt;, formed from the inflection points of an elliptic curve in the complex projective plane but impossible to realize in the Euclidean plane:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/Hesse.png" style="background:white;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://en.wikipedia.org/wiki/Reye_configuration"&gt;Reye configuration&lt;/a&gt; of the edges and long diagonals of a cube:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/Reye.png" style="background:white;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://en.wikipedia.org/wiki/Perles_configuration"&gt;Perles configuration&lt;/a&gt;, not as uniform as the other ones but with the golden ratio hiding inside it, forcing it to have irrational vertex coordinates:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/Perles.png" style="background:white;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;And here are two older drawings with new articles. The &lt;a href="http://en.wikipedia.org/wiki/Schl%C3%A4fli_double_six"&gt;Schläfli double six&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/Double6.png" style="background:white;"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;And the &lt;a href="http://en.wikipedia.org/wiki/Desargues_configuration"&gt;Desargues configuration&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/configs/Desargues.png" style="background:white;"&gt;&lt;/div&gt;&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:244684</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/244684.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=244684"/>
    <title>New uses for old illustrations</title>
    <published>2012-03-31T18:18:16Z</published>
    <updated>2012-03-31T18:18:16Z</updated>
    <category term="media theory"/>
    <category term="conferences"/>
    <content type="html">Probably I knew this already long since and forgot, but I recently rediscovered the fact that the &lt;a href="http://www.siam.org/meetings/dm12/"&gt;2012 SIAM Conference on Discrete Mathematics&lt;/a&gt; is using one of my illustrations as its logo.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.siam.org/meetings/dm12/images/DM12-logo.jpg"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;It's from &lt;a href="http://arxiv.org/abs/0905.4537"&gt;a paper with Bandelt and Chepoi&lt;/a&gt; on &lt;a href="http://en.wikipedia.org/wiki/Squaregraph"&gt;squaregraphs&lt;/a&gt;, and what it illustrates is the process of augmenting a family of sets (the ovals and white circles) by adding additional elements (the dark circle) so that the augmented family has the &lt;a href="http://en.wikipedia.org/wiki/Helly_family"&gt;Helly property&lt;/a&gt;: any pairwise-intersecting subfamily has a common element. I illustrated the same thing (with the same sets) more whimsically, in the Wikipedia article for &lt;a href="http://en.wikipedia.org/wiki/Median_graph"&gt;median graphs&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/0xDE/median-mice.png"&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The two illustrations weren't originally lined up quite so similarly to each other but the SIAM designer rotated the logo from its original vertical orientation, coincidentally giving the sets and elements the same placement as they have in the mouse version. As for why the ovals are so asymmetric: it's to make room for some labels giving the sets and the added element names, in order to explain some of the notation in the paper.&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:244377</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/244377.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=244377"/>
    <title>An almost-forgotten combinatorist: Heinrich August Rothe </title>
    <published>2012-03-28T06:06:04Z</published>
    <updated>2012-03-28T06:44:11Z</updated>
    <category term="combinatorics"/>
    <category term="wikipedia"/>
    <category term="academia"/>
    <content type="html">&lt;p&gt;At the end of the 18th century and the beginning of the 19th, combinatorics flourished in German mathematics research, under the leadership of &lt;a href="http://en.wikipedia.org/wiki/Carl_Hindenburg"&gt;Carl Hindenburg&lt;/a&gt;. Later opinion has not been kind:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&lt;i&gt;"ill-advised and purposeless modification"&lt;/i&gt; — &lt;a href="http://books.google.com/books?id=mxgPAAAAIAAJ&amp;amp;pg=PA55"&gt;Sir Thomas Muir 1906&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;i&gt;"of limited scope and restricted application"&lt;/i&gt; — &lt;a href="http://books.google.com/books?id=L0UbAQAAMAAJ&amp;amp;pg=RA1-PA752"&gt;Encyclopaedia Brittanica 1910&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;i&gt;"mired in the mathematical trivia by which the School itself was plagued"&lt;/i&gt; — &lt;a href="http://dx.doi.org/10.1007/BF00327297"&gt;Manning 1975&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;i&gt;"The faults of his [Euler's] time found their culmination in the Combinatorial School in Germany, which has now passed into oblivion"&lt;/i&gt; — &lt;a href="http://books.google.com/books?id=mGJRjIC9fZgC&amp;amp;pg=PA373"&gt;Cajori 1991&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;i&gt;"thousands of pages filled with esoteric symbolism that must have impressed many nonmathematicians"&lt;/i&gt; — &lt;a href="http://books.google.com/books?id=56LNfE2QGtYC&amp;amp;pg=PA70"&gt;Knuth 2006&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Knuth goes on to call &lt;a href="http://en.wikipedia.org/wiki/Heinrich_August_Rothe"&gt;Heinrich August Rothe&lt;/a&gt; "Hindenberg's best student", and says that his work is "not completely trivial", but cites as evidence only an algorithm for finding the successor and predecessor of a morse code sequence in lexicographic order.&lt;/p&gt;

&lt;p&gt;Here are some Rothe's other contributions, from just one of his publications:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The first definition of the inverse of a permutation&lt;/li&gt;
&lt;li&gt;A proof that the number of inversions of a permutation (the concept that Muir called "ill-advised and purposeless") is the same as for its inverse&lt;/li&gt;
&lt;li&gt;A proof that the determinant of a matrix is the same as for its transpose&lt;/li&gt;
&lt;li&gt;A diagram (the Rothe diagram) still used for visualization of permutations and inversions&lt;/li&gt;
&lt;li&gt;The first definition of a self-inverse permutation&lt;/li&gt;
&lt;li&gt;A simple recurrence formula for the &lt;a href="http://oeis.org/A000085"&gt;number of self-inverse permutations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Not completely trivial?!&lt;/p&gt;

&lt;p&gt;Yes, these results are easy nowadays, but in part that's because we learn about permutations from our beginning years of college, if not earlier. And where did what we learn about come from?&lt;/p&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:243973</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/243973.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=243973"/>
    <title>Playgroup</title>
    <published>2012-03-27T06:37:50Z</published>
    <updated>2012-03-27T06:37:50Z</updated>
    <category term="photography"/>
    <category term="family"/>
    <content type="html">The kids below (except for the two younger boys in front) have all known each other since they were babies. It's difficult to believe they're already getting ready to graduate from high school and scatter to the four winds to go to college.&lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;a href="http://www.ics.uci.edu/~eppstein/pix/ff12/Playgroup.html"&gt;&lt;img src="http://www.ics.uci.edu/~eppstein/pix/ff12/Playgroup-m.jpg" border="2" style="border-color:black;" /&gt;&lt;/a&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:243715</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/243715.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=243715"/>
    <title>Fast Go game recognition</title>
    <published>2012-03-23T20:42:31Z</published>
    <updated>2012-03-23T20:42:31Z</updated>
    <category term="game theory"/>
    <category term="data structures"/>
    <content type="html">Suppose you are given as input a sequence of moves in a game of Go; that is, just the positions at which each player moves in each turn. You want to verify in real time that this is a correct game sequence (no moves on top of existing stones or suicidal moves), recognize when a capture has been made, and identify the captured pieces. How quickly can you do this?&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;I have a solution with alpha(n) amortized time per move based on union-find (detailed below), where n is the side length of the Go board. (There's a hint of the same algorithm, without details, in &lt;a href="http://dx.doi.org/10.1007/3-540-45622-8_5"&gt;this paper&lt;/a&gt;.) But it's not clear to me that this is optimal; maybe there's a clever way of getting constant amortized time per move. The amortization is necessary, though, because the output size from a capture move may be nonconstant.&lt;br /&gt;&lt;br /&gt;The basic idea is to maintain a union-find data structure that has an element for each stone. In this structure, we form a set for each connected string of stones, and we annotate the root of each tree in the union-find structure with the color and number of liberties of its string. Here, by a "liberty" I mean the edge connecting the string to an empty position on the board, not the empty position itself, so a single empty position could correspond to as many as four different liberties. We also need a separate array or hash table that maps board positions to stones within the union-find structure; we'll call this the "position map".&lt;br /&gt;&lt;br /&gt;A move is valid if it is to an unoccupied position and is not suicidal. Whether a position is occupied or not can be checked easily with the position map, but checking whether a move is suicidal is trickier. We have to find the strings of stones surrounding the move position (by using the position map to find neighboring stones and using the union-find structure to find the strings for these stones), determine the number of liberties of each string that would be taken away by the new move (the same as the number of neighboring stones that belong to the same string), and compare this to the total number of liberties of the string. A move is non-suicidal if at least one of the following three conditions is met: it has a vacant adjacent position, it takes the last liberty from an opposing string, or it connects to a string of the same color which has more liberties than the move takes away.&lt;br /&gt;&lt;br /&gt;After making a move, we need to group the new stone with its neighbors of the same color into a larger string (union operations), sum the liberty counts of any strings that become merged as part of this operation, and subtract off the numbers of liberties taken by the new stone (its number of neighbors in the same string). We must also subtract the new stone's liberties from any adjacent strings of the opposite color, and if their liberty counts go to zero, capture their stones.&lt;br /&gt;&lt;br /&gt;In order to perform a capture, we need a variant of union find that can also list the elements of each set, but this is not difficult to do within the time bounds of the standard union-find structure. For each stone in a captured string, we clear the corresponding cell from the position map, and use the position map to search for adjacent stones that do not belong to the captured string. Whenever we find a non-captured stone adjacent to one of the captured stones, we increment the number of liberties of its group. This takes a constant number of data structure operations per captured stone, the time for which can be charged against the move in which the stone was placed. The captured string can be removed from the union-find structure or left to site there, it doesn't matter, but whenever we re-occupy the same positions with new stones we need to be sure that they're represented by new elements of the union-find structure.&lt;br /&gt;&lt;br /&gt;Fortunately, it's not necessary in any of this to be able to count the number of eyes of each string. That looks quite a bit more difficult.&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:243568</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/243568.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=243568"/>
    <title>Big batch of brief biographies</title>
    <published>2012-03-13T06:38:01Z</published>
    <updated>2012-03-13T06:38:01Z</updated>
    <category term="wikipedia"/>
    <category term="academia"/>
    <content type="html">If you've spent any time on Wikipedia you've probably noticed its &lt;a href="http://en.wikipedia.org/wiki/Wikipedia:Red_link"&gt;red links&lt;/a&gt;, links on certain words and phrases that don't actually go to another Wikipedia article. They're supposed to flag topics where Wikipedia should have an article but doesn't, and encourage people to start editing a new article on the topic. And often they do work that way. But they also tend to accumulate, especially on lists, and once they start doing that they tend to include many words and phrases on topics that aren't ready to be made into articles.&lt;br /&gt;&lt;br /&gt;So anyway, for the last few weeks (in my copious spare time) I've been clearing out the red from &lt;a href="http://en.wikipedia.org/wiki/List_of_people_by_Erd%C5%91s_number"&gt;List of people by Erdős number&lt;/a&gt;. It was never intended to be comprehensive; that's for the &lt;a href="http://www.oakland.edu/enp/"&gt;Erdős number project&lt;/a&gt; or maybe for the collaboration distance calculator built into MathSciNet. Rather, it's just supposed to list the subset of people who both have (or should have) Wikipedia articles and have a small Erdős number. The #3 section of the list has been clear of red for a long time, and now the #2 is. Most of what I did was to remove names, but along the way I found quite a few people who (it seemed to me) should so clearly have articles that I made new ones. They are:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Baruch_Awerbuch"&gt;Baruch Awerbuch&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Robert_G._Bland"&gt;Robert G. Bland&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Hans_L._Bodlaender"&gt;Hans Bodlaender&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Derek_Corneil"&gt;Derek Corneil&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Danny_Dolev"&gt;Danny Dolev&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Rod_Downey"&gt;Rod Downey&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Amos_Fiat"&gt;Amos Fiat&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Benedict_Freedman"&gt;Benedict Freedman&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Nancy_Freedman"&gt;Nancy Freedman&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Uriel_Frisch"&gt;Uriel Frisch&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/L%C3%A1szl%C3%B3_Fuchs"&gt;László Fuchs&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Curtis_Greene"&gt;Curtis Greene&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/John_P._Hayes"&gt;John P. Hayes&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/David_Jerison"&gt;David Jerison&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Lila_Kari"&gt;Lila Kari&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Anna_Karlin"&gt;Anna Karlin&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Jon_Lee_(mathematician)"&gt;Jon Lee&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Darrell_Long"&gt;Darrell Long&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Heikki_Mannila"&gt;Heikki Mannila&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Paul_G._Mezey"&gt;Paul G. Mezey&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Cris_Moore"&gt;Cris Moore&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Bernard_Moret"&gt;Bernard Moret&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/George_Nemhauser"&gt;George Nemhauser&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Nathan_Netanyahu"&gt;Nathan Netanyahu&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Noam_Nisan"&gt;Noam Nisan&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Alfred_van_der_Poorten"&gt;Alfred van der Poorten&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/John_E._Savage"&gt;John E. Savage&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Boris_M._Schein"&gt;Boris M. Schein&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Norman_Schofield"&gt;Norman Schofield&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Eli_Shamir"&gt;Eli Shamir&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Mike_Steel_(mathematician)"&gt;Mike Steel&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Ileana_Streinu"&gt;Ileana Streinu&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Subhash_Suri"&gt;Subhash Suri&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Stevo_Todor%C4%8Devi%C4%87"&gt;Stevo Todorčević&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Dorothea_Wagner"&gt;Dorothea Wagner&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Stan_Wagon"&gt;Stan Wagon&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Tandy_Warnow"&gt;Tandy Warnow&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Dominic_Welsh"&gt;Dominic Welsh&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Moti_Yung"&gt;Moti Yung&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/William_S._Zwicker"&gt;William S. Zwicker&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;(There are one or two in there that I didn't make but expanded someone else's recently created one. And at least one of the names above is not actually on the Erdős number list.)&lt;br /&gt;&lt;br /&gt;You might notice that they're not all the same length or level of detail. That has very little to do with how important I think these people are, and very much to do with how easy I found it to write about them. Also, the fact that I removed a name doesn't imply that I think that person hasn't met &lt;a href="Wikipedia:Notability (academics)"&gt;the Wikipedia inclusion criteria for articles on academics&lt;/a&gt;: there were quite a few other names that I removed from the list for whom I would support the creation of an article, but wasn't ready to do it myself.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:243308</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/243308.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=243308"/>
    <title>Wikipedia coverage of German CS</title>
    <published>2012-03-10T00:22:32Z</published>
    <updated>2012-03-11T08:24:57Z</updated>
    <category term="wikipedia"/>
    <category term="academia"/>
    <content type="html">I just added two new Wikipedia articles on the &lt;a href="http://en.wikipedia.org/wiki/Gesellschaft_f%C3%BCr_Informatik"&gt;Gesellschaft für Informatik&lt;/a&gt; (a major German computer science society) and their &lt;a href="http://en.wikipedia.org/wiki/Konrad_Zuse_Medal"&gt;Konrad Zuse Medal&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In general I've found the English-language Wikipedia's coverage of German-language topics in the sciences to be somewhat spotty. Maybe it's because of the language barrier; maybe it's because the German-language Wikipedia is itself pretty good so German speakers don't feel the need to use or improve the English one. Whatever the reason, there's plenty more to be done in that direction.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:243155</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/243155.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=243155"/>
    <title>Gadgets and isomorphism</title>
    <published>2012-02-28T23:05:57Z</published>
    <updated>2012-02-28T23:07:39Z</updated>
    <category term="complexity theory"/>
    <category term="wikipedia"/>
    <content type="html">I recently expanded the Wikipedia article on &lt;a href="http://en.wikipedia.org/wiki/Gadget_(computer_science)"&gt;gadgets&lt;/a&gt;, the basic building blocks of most NP-completeness proofs, after its previous poor state led another editor to try to get it deleted.&lt;br /&gt;&lt;br /&gt;While doing so, I discovered that we didn't already have an article on the &lt;a href="http://en.wikipedia.org/wiki/Berman%E2%80%93Hartmanis_conjecture"&gt;Berman–Hartmanis conjecture&lt;/a&gt; according to which every two NP-complete problems should be related by a polynomial-time isomorphism, so I wrote one. Supposedly nobody believes this any more but despite that there are recent papers such as &lt;a href="http://www.cse.iitk.ac.in/users/manindra/isomorphism/easy-cylinder-conjecture.pdf"&gt;Agrawal and Watanabe CCC 2009&lt;/a&gt; that seem to be more positive than negative.&lt;br /&gt;&lt;br /&gt;I'm not a complexity theorist, so it's entirely likely that I've misunderstood some of the sources. If so, please correct me.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:242711</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/242711.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=242711"/>
    <title>Solving single-digit Sudoku subproblems</title>
    <published>2012-02-24T01:22:25Z</published>
    <updated>2012-02-24T01:22:25Z</updated>
    <category term="sudoku"/>
    <category term="python"/>
    <category term="exponential algorithms"/>
    <category term="papers"/>
    <content type="html">My paper for &lt;a href="http://www.dsi.unive.it/~fun2012/"&gt;FUN 2012&lt;/a&gt;, "Solving Single-digit Sudoku Subproblems", is now on arXiv.org as &lt;a href="http://arxiv.org/abs/1202.5074"&gt;arXiv:1202.5074&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In it, I revisited a problem I'd looked at earlier in &lt;a href="http://11011110.livejournal.com/20637.html"&gt;a blog post from 2005&lt;/a&gt;, in which you want to make deductions about a Sudoku puzzle by looking only at the candidate locations of a single digit at a time. In that blog post, I showed that this kind of deduction is NP-hard to make optimally, which is why I had resorted to heuristics that never make incorrect deductions but that might fail to make some correct deductions. In my new paper, I describe an exponential-time algorithm that finds all possible correct deductions and takes time o(2&lt;sup&gt;n&lt;/sup&gt;) on nxn Sudoku puzzles. That's fast enough to be very practical for 9x9 and 16x16 Sudoku and makes the heuristics unnecessary.&lt;br /&gt;&lt;br /&gt;By this point there's a large body of work on exact exponential time algorithms for NP-hard problems (mostly graph algorithms), and also a large body of work on the &lt;a href="http://www.ics.uci.edu/~eppstein/cgt/hard.html"&gt;computational complexity of combinatorial games and puzzles&lt;/a&gt; showing that they give rise to NP-hard problems. What I haven't seen much of is work like my new paper that puts these two together and does worst-case analysis of algorithms for exactly solving games and puzzles. So I think there may be a lot of low-hanging fruit in this direction.&lt;br /&gt;&lt;br /&gt;This wasn't just a theoretical exercise, by the way: I implemented my new algorithm and included it in the Sudoku software included as part of my &lt;a href="http://www.ics.uci.edu/~eppstein/PADS/"&gt;PADS&lt;/a&gt; library of Python algorithm implementations. Relatedly, because of &lt;a href="http://11011110.livejournal.com/242004.html"&gt;my migration from CVS to Git&lt;/a&gt;, PADS has a new distribution mechanism: rather than downloading a tarball, you can get it by cloning a Git repository. See &lt;a href="http://www.ics.uci.edu/~eppstein/PADS/ABOUT-PADS.txt"&gt;the README file&lt;/a&gt; for details.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:242510</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/242510.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=242510"/>
    <title>COCOON deadline extended</title>
    <published>2012-02-21T02:48:14Z</published>
    <updated>2012-02-21T02:48:14Z</updated>
    <category term="conferences"/>
    <content type="html">The deadline for &lt;a href="http://cocoon.it.usyd.edu.au/"&gt;COCOON&lt;/a&gt;, previously February 18, has been extended to February 28. So if you had a paper that you were thinking of submitting, but didn't quite have time to get ready, now you have time again.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:11011110:242315</id>
    <link rel="alternate" type="text/html" href="http://11011110.livejournal.com/242315.html"/>
    <link rel="self" type="text/xml" href="http://11011110.livejournal.com/data/atom/?itemid=242315"/>
    <title>Fun</title>
    <published>2012-02-20T20:51:27Z</published>
    <updated>2012-02-20T20:51:27Z</updated>
    <category term="conferences"/>
    <content type="html">The &lt;a href="http://www.dsi.unive.it/~fun2012/accepted.php"&gt;list of accepted papers&lt;/a&gt; for the &lt;a href="http://www.dsi.unive.it/~fun2012/"&gt;Sixth International Conference on Fun with Algorithms&lt;/a&gt; (to be held next June in Venice) just came out.&lt;br /&gt;&lt;br /&gt;I have one in there; I'll post more about it once I've had time to revise and upload a preprint.</content>
  </entry>
</feed>

