{"id":4229,"date":"2019-07-02T00:15:43","date_gmt":"2019-07-02T05:15:43","guid":{"rendered":"https:\/\/scottaaronson.blog\/?p=4229"},"modified":"2019-09-24T21:18:06","modified_gmt":"2019-09-25T02:18:06","slug":"sensitivity-conjecture-proof-by-the-book","status":"publish","type":"post","link":"https:\/\/scottaaronson.blog\/?p=4229","title":{"rendered":"Sensitivity Conjecture resolved"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The Sensitivity Conjecture, which I blogged about <a href=\"https:\/\/scottaaronson.blog\/?p=453\">here<\/a>, says that, for every Boolean function f:{0,1}<sup>n<\/sup>\u2192{0,1}, the <em>sensitivity<\/em> of f&#8212;that is, the maximum, over all 2<sup>n<\/sup> input strings x\u2208{0,1}<sup>n<\/sup>, of the number of input bits such that flipping them changes the value of f&#8212;is at most polynomially smaller than a bunch of other complexity measures of f, including f&#8217;s block sensitivity, degree as a real polynomial, and classical and quantum query complexities.  (For more, see for example <a href=\"http:\/\/www.cs.columbia.edu\/~rocco\/Teaching\/S12\/Readings\/BdW.pdf\">this survey<\/a> by Buhrman and de Wolf.  Or for quick definitions of the relevant concepts, <a href=\"https:\/\/cstheory.stackexchange.com\/questions\/19902\/boolean-functions-where-sensitivity-equals-block-sensitivity\">see here<\/a>.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ever since it was posed by Nisan and Szegedy in 1989, this conjecture has stood as one of the most frustrating and embarrassing open problems in all of combinatorics and theoretical computer science.  It seemed so easy, and so similar to other statements that had 5-line proofs.  But a lot of the best people in the field sank months into trying to prove it.  For whatever it&#8217;s worth, I also sank &#8230; well, at least weeks into it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now <a href=\"http:\/\/www.mathcs.emory.edu\/~hhuan30\/\">Hao Huang<\/a>, a mathematician at Emory University, has posted a <a href=\"http:\/\/www.mathcs.emory.edu\/~hhuan30\/papers\/sensitivity_1.pdf\">6-page preprint<\/a> on his homepage that finally proves the Sensitivity Conjecture, in the form s(f)\u2265\u221adeg(f).  (I thank Ryan O&#8217;Donnell for tipping me off to this.)  Within the preprint, the proof itself is about a page and a half.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whenever there&#8217;s an announcement like this, ~99% of the time either the proof is wrong, or at any rate it&#8217;s way too complicated for outsiders to evaluate it quickly.  This is one of the remaining 1% of cases.  I&#8217;m rather confident that the proof is right.  Why?  Because I read and understood it.  It took me about half an hour.  If you&#8217;re comfortable with concepts like <em>induced subgraph<\/em> and <em>eigenvalue<\/em>, you can do the same.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">From pioneering work by Gotsman and Linial in 1992, it was known that to prove the Sensitivity Conjecture, it suffices to prove the following even simpler combinatorial conjecture:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>Let S be any subset of the n-dimensional Boolean hypercube, {0,1}<sup>n<\/sup>, which has size 2<sup>n-1<\/sup>+1.  Then there must be a point in S with at least ~n<sup>c<\/sup> neighbors in S.<\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Here c&gt;0 is some constant (say 1\/2), and two points in S are &#8220;neighbors&#8221; if and only they differ in a single coordinate.  Note that if S had size 2<sup>n-1<\/sup>, then the above statement would be false&#8212;as witnessed, for example, by the set of all n-bit strings with an even number of 1&#8217;s.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Huang proceeds by proving the Gotsman-Linial Conjecture.  And the way he proves Gotsman-Linial is &#8230; well, at this point maybe I should just let you <a href=\"http:\/\/www.mathcs.emory.edu\/~hhuan30\/papers\/sensitivity_1.pdf\">read the damn preprint<\/a> yourself.  I can&#8217;t say it more simply than he does.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If I had to try anyway, I&#8217;d say: Huang constructs a 2<sup>n<\/sup>\u00d72<sup>n<\/sup> matrix, called A<sub>n<\/sub>, that has 0&#8217;s where there are no edges between the corresponding vertices of the Boolean hypercube, and either 1&#8217;s or -1&#8217;s where there <em>are<\/em> edges&#8212;with a simple, weird pattern of 1&#8217;s and -1&#8217;s that magically makes everything work.  He then lets H be an induced subgraph of the Boolean hypercube of size 2<sup>n-1<\/sup>+1.  He lower-bounds the maximum degree of H by the largest eigenvalue of the corresponding (2<sup>n-1<\/sup>+1)\u00d7(2<sup>n-1<\/sup>+1) submatrix of A<sub>n<\/sub>.  Finally, he lower-bounds that largest eigenvalue by &#8230; no, I don&#8217;t want to spoil it!  Read it yourself!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Paul Erd\u00f6s famously spoke of a book, maintained by God, in which was written the simplest, most beautiful proof of each theorem.  The highest compliment Erd\u00f6s could give a proof was that it &#8220;came straight from the book.&#8221;  In this case, I find it hard to imagine that even God knows how to prove the Sensitivity Conjecture in any simpler way than this.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Indeed, the question is: how could such an elementary 1.5-page argument have been overlooked for 30 years?  I don&#8217;t have a compelling answer to that, besides noting that &#8220;short&#8221; and &#8220;elementary&#8221; often have little to do with &#8220;obvious.&#8221;  Once you start looking at the spectral properties of this matrix A<sub>n<\/sub>, the pieces snap together in precisely the right way&#8212;but how would you know to look at that?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">By coincidence, earlier today I finished reading my first PG Wodehouse novel (<em><a href=\"http:\/\/www.gutenberg.org\/files\/10554\/10554-h\/10554-h.htm\">Right Ho, Jeeves!<\/a><\/em>), on the gushing recommendation of a friend.  I don&#8217;t know how I&#8217;d missed Wodehouse for 38 years.  His defining talent is his ability to tie together five or six plot threads in a way that feels perfect and inevitable even though you didn&#8217;t see it coming.  This produces a form of pleasure that&#8217;s nearly indistinguishable from the pleasure one feels in reading a &#8220;proof from the book.&#8221;  So my pleasure centers are pretty overloaded today&#8212;but in such depressing times for the world, I&#8217;ll take pleasure wherever I can get it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Huge congratulations to Hao!<\/p>\n\n\n\n<p><strong>Added thought:<\/strong> What this really is, is one of the purest illustrations I&#8217;ve seen in my career of the power and glory of the P&ne;NP phenomenon.  We talk all the time about how proofs are easier to verify than to find.  In practice, though, it can be far from obvious that that&#8217;s true.  Consider your typical STOC\/FOCS paper: writing it probably took the authors several months, while fully understanding the thing from scratch would probably take &#8230; <em>also<\/em> several months!  If there&#8217;s a gap, it&#8217;s only by a factor of 4 or 5 or something.  Whereas in this case, I don&#8217;t know how long Huang spent searching for the proof, but the combined search efforts of the community add up to years or decades.  The ratio of the difficulty of finding to the difficulty of completely grasping is in the hundreds of thousands or millions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Another added thought:<\/strong> Because Hao actually proves a stronger statement than the original Sensitivity Conjecture, it has additional implications, a few of which Hao mentions in his preprint.  Here&#8217;s one he didn&#8217;t mention: any randomized algorithm to guess the parity of an n-bit string, which succeeds with probability at least 2\/3 on the majority of strings, must make at least ~\u221an queries to the string, while any such quantum algorithm must make at least ~n<sup>1\/4<\/sup> queries.  For more, see the paper <a href=\"https:\/\/arxiv.org\/pdf\/1312.0036.pdf\">Weak Parity<\/a> by me, Ambainis, Balodis, and Bavarian (Section 6).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Important Update:<\/strong> Hao Huang himself has graciously <a href=\"https:\/\/scottaaronson.blog\/?p=4229#comment-1813116\">visited the comment section<\/a> to satisfy readers&#8217; curiosity by providing a detailed timeline of his work on the Sensitivity Conjecture.  (tl;dr: he was introduced to the problem by Mike Saks in 2012, and had been attacking it on and off since then, until he finally had the key insight this past month while writing a grant proposal.  Who knew that grant proposals could ever be useful for anything?!?)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Another Update:<\/strong> In the comments section, my former student Shalev Ben-David points out a <a href=\"https:\/\/scottaaronson.blog\/?p=4229#comment-1813084\">simplification<\/a> of Huang&#8217;s argument, which no longer uses Cauchy&#8217;s interlacing theorem.  I thought there was no way this proof could possibly be made any simpler, and I was wrong!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Sensitivity Conjecture, which I blogged about here, says that, for every Boolean function f:{0,1}n\u2192{0,1}, the sensitivity of f&#8212;that is, the maximum, over all 2n input strings x\u2208{0,1}n, of the number of input bits such that flipping them changes the value of f&#8212;is at most polynomially smaller than a bunch of other complexity measures of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","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":[5],"tags":[],"class_list":["post-4229","post","type-post","status-publish","format-standard","hentry","category-complexity"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/4229","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=4229"}],"version-history":[{"count":5,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/4229\/revisions"}],"predecessor-version":[{"id":4249,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=\/wp\/v2\/posts\/4229\/revisions\/4249"}],"wp:attachment":[{"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4229"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4229"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scottaaronson.blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4229"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}