{"id":3054,"date":"2016-12-13T20:07:09","date_gmt":"2016-12-14T01:07:09","guid":{"rendered":"https:\/\/scottaaronson.blog\/?p=3054"},"modified":"2017-01-12T09:09:36","modified_gmt":"2017-01-12T14:09:36","slug":"the-teaser","status":"publish","type":"post","link":"https:\/\/scottaaronson.blog\/?p=3054","title":{"rendered":"The teaser"},"content":{"rendered":"<p>Tomorrow, I&#8217;ll have something <strong>big<\/strong> to announce here. \u00a0So, just to whet your appetites, and to get myself back into the habit of blogging, I figured I&#8217;d offer you an appetizer course: some more miscellaneous non-Trump-related news.<\/p>\n<hr \/>\n<p>(1) My former student Leonid Grinberg points me to an astonishing\u00a0art form, which I somehow hadn&#8217;t known about: namely, music videos generated by executable files\u00a0that fit in only 4K of memory. \u00a0Some of these videos <a href=\"https:\/\/www.youtube.com\/watch?v=RCh3Q08HMfs\">have to be seen to be believed<\/a>. \u00a0(See also <a href=\"https:\/\/www.youtube.com\/watch?v=jB0vBmiTr6o&amp;app=desktop\">this one<\/a>.) \u00a0Much like, let&#8217;s say, a\u00a0<a href=\"https:\/\/scottaaronson.blog\/?p=2725\">small Turing machine whose behavior is independent of set theory<\/a>, these videos represent exercises\u00a0in applied (or, OK, recreational) <a href=\"https:\/\/en.wikipedia.org\/wiki\/Kolmogorov_complexity\">Kolmogorov complexity<\/a>: how\u00a0far out do you need to go in the space of all computer programs before you find\u00a0beauty and humor and adaptability\u00a0and surprise?<\/p>\n<p>Admittedly, Leonid explains to me that the rules allow these programs to call DirectX and Visual Studio libraries to handle things like the 3D rendering (with the libraries not counted toward the 4K program size). \u00a0This makes the programs&#8217; existence <em>merely<\/em>\u00a0extremely impressive, rather than a sign of alien superintelligence.<\/p>\n<p>In some sense, all the programming enthusiasts over the decades who&#8217;ve burned their free time and processor\u00a0cycles on <a href=\"https:\/\/en.wikipedia.org\/wiki\/Conway's_Game_of_Life\">Conway&#8217;s Game of Life<\/a> and the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Mandelbrot_set\">Mandelbrot set<\/a> and so forth were captivated by the same eerie beauty showcased by the videos: that of data compression,\u00a0of the vast unfolding of a simple deterministic rule. \u00a0But I also feel like the videos add a bit\u00a0extra: the 3D rendering, the music, the panning across natural or manmade-looking dreamscapes. \u00a0What we have here is a wonderful resource for either an acid trip or\u00a0an undergrad computability and complexity course.<\/p>\n<hr \/>\n<p>(2) A week ago Igor Oliveira, together with my longtime friend Rahul Santhanam, released a striking paper entitled\u00a0<a href=\"http:\/\/eccc.hpi-web.de\/report\/2016\/196\/\">Pseudodeterministic Constructions in Subexponential Time<\/a>. \u00a0To understand what this paper does, let&#8217;s start with <a href=\"https:\/\/polymathprojects.org\/2009\/07\/27\/proposal-deterministic-way-to-find-primes\/\">Terry Tao&#8217;s 2009 polymath challenge<\/a>: namely, to <em>find\u00a0a fast, deterministic method that provably generates large prime numbers<\/em>. \u00a0Tao&#8217;s challenge still stands today:\u00a0one of the most basic, simplest-to-state\u00a0unsolved problems in\u00a0algorithms and number theory.<\/p>\n<p>To be clear, we already have a fast deterministic method to decide whether a <em>given<\/em> number is prime: that was the 2002 breakthrough by\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/AKS_primality_test\">Agrawal, Kayal, and Saxena<\/a>. \u00a0We also have a fast <em>probabilistic<\/em> method to\u00a0<em>generate<\/em> large primes: namely, just keep picking n-digit numbers at random, test each one, and stop when you find one that&#8217;s prime! \u00a0And those methods can be made deterministic assuming far-reaching conjectures in number theory, such as <a href=\"https:\/\/en.wikipedia.org\/wiki\/Cram%C3%A9r's_conjecture\">Cramer&#8217;s Conjecture<\/a> (though note that even the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Riemann_hypothesis\">Riemann Hypothesis<\/a> wouldn&#8217;t lead to\u00a0a polynomial-time algorithm, but &#8220;merely&#8221; a faster exponential-time one).<\/p>\n<p>But, OK, what if you want a 5000-digit prime number, and you want it <em>now<\/em>: provably, deterministically, and fast? \u00a0That was Tao&#8217;s challenge. \u00a0The new paper by Oliveira and Santhanam doesn&#8217;t quite\u00a0solve it, but it makes some exciting progress. \u00a0Specifically, it gives a deterministic algorithm to generate n-digit prime numbers, with merely the following four caveats:<\/p>\n<ul>\n<li>The algorithm isn&#8217;t polynomial time, but subexponential (2<sup>n^o(1)<\/sup>) time.<\/li>\n<li>The algorithm isn&#8217;t deterministic, but <em>pseudodeterministic<\/em>\u00a0(a concept introduced\u00a0by <a href=\"http:\/\/eccc.hpi-web.de\/report\/2011\/136\/\">Gat and Goldwasser<\/a>). \u00a0That is, the algorithm uses randomness, but it almost always succeeds, and it outputs the <em>same<\/em> n-digit prime number in every\u00a0case where it succeeds.<\/li>\n<li>The algorithm might not\u00a0work for all input lengths n, but merely for infinitely many of them.<\/li>\n<li>Finally, the authors\u00a0can&#8217;t quite say what the algorithm is&#8212;they merely prove\u00a0that it <em>exists<\/em>! \u00a0If there&#8217;s a huge complexity collapse, such as ZPP=PSPACE, then the algorithm is one thing, while if not\u00a0then the algorithm is something else.<\/li>\n<\/ul>\n<p>Strikingly, Oliveira and Santhanam&#8217;s advance on the polymath problem is pure complexity theory: hitting sets and pseudorandom generators and win-win arguments and stuff like that. \u00a0Their paper uses absolutely nothing specific\u00a0to the prime numbers, except\u00a0the facts that (a) there are lots of them (the <a href=\"https:\/\/en.wikipedia.org\/wiki\/Prime_number_theorem\">Prime Number Theorem<\/a>), and (b) we\u00a0can efficiently decide whether a given number is prime (the AKS algorithm). \u00a0It seems almost certain that one could do better by exploiting more about primes.<\/p>\n<hr \/>\n<p>(3) I&#8217;m in Lyon, France right now, to give three quantum computing and complexity theory talks. \u00a0I arrived\u00a0here today from London, where I gave another two lectures. \u00a0So far, the trip has been phenomenal, my hosts gracious, the audiences bristling with interesting questions.<\/p>\n<p>But getting from London to Lyon also taught me an important life lesson that I wanted\u00a0to share: <strong>never fly EasyJet.<\/strong> \u00a0Or at least, if you fly one of the European &#8220;discount&#8221; airlines, realize that you get what you pay for (I&#8217;m told that Ryanair is even worse). \u00a0These airlines have a fundamentally dishonest business model, based on selling impossibly cheap tickets, but then forcing passengers\u00a0to check even tiny bags and charging exorbitant fees for it, counting on snagging enough travelers who just na\u00efvely clicked &#8220;yes&#8221;\u00a0to\u00a0whatever would get them from point A to point B at a certain time, assuming\u00a0that all\u00a0airlines followed more-or-less similar\u00a0rules. \u00a0Which might not\u00a0be so bad&#8212;it&#8217;s only money&#8212;if the minuscule, overworked staff of these quasi-airlines didn&#8217;t <em>also<\/em>\u00a0treat the passengers like beef cattle, barking orders and berating people\u00a0for failing to\u00a0obey rules that one could log hundreds of thousands of miles on normal airlines without ever once encountering. \u00a0Anyway, if the airlines\u00a0won&#8217;t warn you, then <em>Shtetl-Optimized<\/em> will.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tomorrow, I&#8217;ll have something big to announce here. \u00a0So, just to whet your appetites, and to get myself back into the habit of blogging, I figured I&#8217;d offer you an appetizer course: some more miscellaneous non-Trump-related news. (1) My former student Leonid Grinberg points me to an astonishing\u00a0art form, which I somehow hadn&#8217;t known about: [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":false},"categories":[10,31,5,11,3],"tags":[],"class_list":["post-3054","post","type-post","status-publish","format-standard","hentry","category-adventures-in-meatspace","category-announcements","category-complexity","category-nerd-interest","category-procrastination"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/3054","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3054"}],"version-history":[{"count":6,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/3054\/revisions"}],"predecessor-version":[{"id":3066,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/3054\/revisions\/3066"}],"wp:attachment":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3054"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3054"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3054"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}