CINXE.COM
Undergraduate Upends a 40-Year-Old Data Science Conjecture | Quanta Magazine
<!doctype html> <html lang='en'> <head> <meta charset='utf-8'> <meta name='viewport' content='width=device-width, initial-scale=1, minimum-scale=1'> <link rel='icon' href='https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/images/favicon.png' /> <link rel='apple-touch-icon' href='https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/images/apple-touch-icon.png' /> <script>window.dataLayer = window.dataLayer || []; dataLayer.push({'content_id':'Q-DOMAIN-CS','content_group':'Computer Science','story_type':'News Story','topic':'algorithms','special_project':''});</script><title>Undergraduate Upends a 40-Year-Old Data Science Conjecture | Quanta Magazine</title> <!-- The SEO Framework by Sybre Waaijer --> <link rel="canonical" href="https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/" /> <meta name="description" content="A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible." /> <meta property="og:type" content="article" /> <meta property="og:locale" content="en_US" /> <meta property="og:site_name" content="Quanta Magazine" /> <meta property="og:title" content="Undergraduate Upends a 40-Year-Old Data Science Conjecture | Quanta Magazine" /> <meta property="og:description" content="A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible." /> <meta property="og:url" content="https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/" /> <meta property="og:image" content="https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Social.jpg" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta property="og:image:alt" content="A tool chest with a tray full of different sized arrows against a red-orange backdrop." /> <meta property="article:published_time" content="2025-02-10T15:17:37+00:00" /> <meta property="article:modified_time" content="2025-02-10T17:02:30+00:00" /> <meta property="article:publisher" content="https://www.facebook.com/QuantaNews" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@QuantaMagazine" /> <meta name="twitter:title" content="Undergraduate Upends a 40-Year-Old Data Science Conjecture | Quanta Magazine" /> <meta name="twitter:description" content="A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible." /> <meta name="twitter:image" content="https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Social.jpg" /> <meta name="twitter:image:alt" content="A tool chest with a tray full of different sized arrows against a red-orange backdrop." /> <script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://www.quantamagazine.org/#/schema/WebSite","url":"https://www.quantamagazine.org/","name":"Quanta Magazine","description":"Illuminating science","inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.quantamagazine.org/search/{search_term_string}/"},"query-input":"required name=search_term_string"},"publisher":{"@type":"Organization","@id":"https://www.quantamagazine.org/#/schema/Organization","name":"Quanta Magazine","url":"https://www.quantamagazine.org/"}},{"@type":"WebPage","@id":"https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/","url":"https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/","name":"Undergraduate Upends a 40-Year-Old Data Science Conjecture | Quanta Magazine","description":"A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible.","inLanguage":"en-US","isPartOf":{"@id":"https://www.quantamagazine.org/#/schema/WebSite"},"breadcrumb":{"@type":"BreadcrumbList","@id":"https://www.quantamagazine.org/#/schema/BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":"https://www.quantamagazine.org/","name":"Quanta Magazine"},{"@type":"ListItem","position":2,"item":"https://www.quantamagazine.org/./computer-science/","name":"Computer Science News, Interviews and Columns From Quanta Magazine"},{"@type":"ListItem","position":3,"name":"Undergraduate Upends a 40-Year-Old Data Science Conjecture"}]},"potentialAction":{"@type":"ReadAction","target":"https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/"},"datePublished":"2025-02-10T15:17:37+00:00","dateModified":"2025-02-10T17:02:30+00:00","author":{"@type":"Person","@id":"https://www.quantamagazine.org/#/schema/Person/8433e400042f336826878236b6ae810e","name":"Steve Nadis","description":"Steve Nadis lives in Cambridge, Massachusetts. His articles have appeared in numerous magazines, including Discover and Astronomy. He is co-author, most recently, of The Gravity of Math (Basic Books, 2024)."}}]}</script> <script type="application/ld+json">{"@context":"https://schema.org","@type":"NewsArticle","mainEntityOfPage":{"@type":"WebPage","@id":"https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/"},"headline":"Undergraduate Upends a 40-Year-Old Data Science Conjecture","image":{"@type":"ImageObject","url":"https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Social.jpg","width":1200,"height":630},"datePublished":"2025-02-10T15:17:37+00:00","dateModified":"2025-02-10T17:02:30+00:00","author":{"@type":"Person","name":"Steve Nadis","url":"https://www.quantamagazine.org/authors/nadis_steven/"},"description":"A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible."}</script> <!-- / The SEO Framework by Sybre Waaijer | 8.33ms meta | 0.18ms boot --> <link rel="alternate" type="application/rss+xml" title="Quanta Magazine » Undergraduate Upends a 40-Year-Old Data Science Conjecture Comments Feed" href="https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/feed/" /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.quantamagazine.org\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.6.2"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <style id='wp-emoji-styles-inline-css' type='text/css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link rel='stylesheet' id='wp-block-library-css' href='https://www.quantamagazine.org/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' type='text/css' media='all' /> <style id='co-authors-plus-coauthors-style-inline-css' type='text/css'> .wp-block-co-authors-plus-coauthors.is-layout-flow [class*=wp-block-co-authors-plus]{display:inline} </style> <style id='co-authors-plus-avatar-style-inline-css' type='text/css'> .wp-block-co-authors-plus-avatar :where(img){height:auto;max-width:100%;vertical-align:bottom}.wp-block-co-authors-plus-coauthors.is-layout-flow .wp-block-co-authors-plus-avatar :where(img){vertical-align:middle}.wp-block-co-authors-plus-avatar:is(.alignleft,.alignright){display:table}.wp-block-co-authors-plus-avatar.aligncenter{display:table;margin-inline:auto} </style> <style id='co-authors-plus-image-style-inline-css' type='text/css'> .wp-block-co-authors-plus-image{margin-bottom:0}.wp-block-co-authors-plus-image :where(img){height:auto;max-width:100%;vertical-align:bottom}.wp-block-co-authors-plus-coauthors.is-layout-flow .wp-block-co-authors-plus-image :where(img){vertical-align:middle}.wp-block-co-authors-plus-image:is(.alignfull,.alignwide) :where(img){width:100%}.wp-block-co-authors-plus-image:is(.alignleft,.alignright){display:table}.wp-block-co-authors-plus-image.aligncenter{display:table;margin-inline:auto} </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='privacy-consent-front-css' href='https://www.quantamagazine.org/wp-content/plugins/sf-privacy-consent/css/front.min.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='fonts-css' href='https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/css/fonts.css' type='text/css' media='all' /> <link rel='stylesheet' id='main-css' href='https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/dist/main.min.css?ver=1738854830' type='text/css' media='all' /> <link rel='stylesheet' id='simple-favorites-css' href='https://www.quantamagazine.org/wp-content/plugins/quanta-favorites/assets/css/favorites.css?ver=2.3.4' type='text/css' media='all' /> <link rel="https://api.w.org/" href="https://www.quantamagazine.org/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.quantamagazine.org/wp-json/wp/v2/posts/146421" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.quantamagazine.org/xmlrpc.php?rsd" /> <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.quantamagazine.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.quantamagazine.org%2Fundergraduate-upends-a-40-year-old-data-science-conjecture-20250210%2F" /> <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.quantamagazine.org/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.quantamagazine.org%2Fundergraduate-upends-a-40-year-old-data-science-conjecture-20250210%2F&format=xml" /> <script> // Define dataLayer and the gtag function. window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} // Set default consent to 'denied' gtag('consent', 'default', { 'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'analytics_storage': 'granted' }); </script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KZGMXJ7');</script> <!-- End Google Tag Manager --> <style> #postBody {--theme-text: #1a1a1a;--theme-accent: #ff8600;--theme-background: #FFFFFF;}.theme__text {color: #1a1a1a;}.theme__text-background,.flickity-page-dots .dot {background-color: #1a1a1a;}.theme__text-hover:hover {color: #1a1a1a;}.theme__background {color: #FFFFFF;}.theme__background-background {background-color: #FFFFFF;}.putz__inner,.theme__accent {color: #ff8600;}.theme__accent-background, .theme__accent-bg-hover:hover,.flickity-page-dots .dot.is-selected {background-color: #ff8600;}.theme__accent-hover:hover, .download-button * {color: #ff8600;}.theme__accent-hover-child:hover * {color: #ff8600;}.theme__anchors--underline a {box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 #1a1a1a;}.theme__anchors--underline a:hover {box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 #ff8600;}.theme__anchors--solid a {color: #ff8600;}.theme__anchors--solid a:hover {color: #1a1a1a;}.theme__anchors--underline h2.large a {color: #1a1a1a;box-shadow: none;}.theme__anchors--underline h2.large a:hover {color: #ff8600;}.is-hover .card__title {color: #ff8600;}.text-1a1a1a,.text-1a1a1a:hover{color:#1a1a1a;}.text-ffffff,.text-ffffff:hover{color:#ffffff;}.text-999999,.text-999999:hover{color:#999999;}.text-fec962,.text-fec962:hover{color:#fec962;}.text-ff8600,.text-ff8600:hover{color:#ff8600;} </style> </head> <body class="post-template-default single single-post postid-146421 single-format-standard "> <header class='nav fixed fit-t fit-l fit-r z9 '> <div class="relative z0"> <div class="mega fixed fit-x z0 bg-black transition-opacity duration-500 opacity-0 invisible" id="menu" role="menu"> <div class="mega__outer flex flex-items-center"> <div class="mega__inner pv2 transition-transform duration-500 transition-opacity ease-in-out -translate-y-10 opacity-0"> <div class="flex fill-h mha container--m"> <section class="outer flex scale0 fill-h"> <div class="flex flex-wrap flex-items-start align-c pv2 fill-h"> <div class="mega__logo relative mv1 fill-h align-c"> <a href="/"> <svg x="0px" y="0px" viewbox="0 0 353.5 49.5" enable-background="new 0 0 353.5 49.5" class='inline-block'> <title>Quanta Homepage</title> <g id="logo"> <path id="logo__mark" class='transition--color orange' fill="currentColor" d="M28.4,5.9c1,0,1.9-0.8,1.9-1.9c0-1-0.8-1.9-1.9-1.9c-1,0-1.9,0.8-1.9,1.9C26.5,5.1,27.3,5.9,28.4,5.9z M28.4,43.6c-1,0-1.9,0.8-1.9,1.9c0,1,0.8,1.9,1.9,1.9c1,0,1.9-0.8,1.9-1.9C30.3,44.5,29.4,43.6,28.4,43.6z M10.9,33.3 c-0.5-0.1-1-0.1-1.4,0.2c-0.4,0.3-0.7,0.7-0.9,1.1c-0.1,0.5-0.1,1,0.2,1.4c0.4,0.6,1,0.9,1.6,0.9c0.3,0,0.6-0.1,0.9-0.3 c0.4-0.3,0.8-0.7,0.9-1.1c0.1-0.5,0.1-1-0.2-1.4C11.8,33.7,11.4,33.4,10.9,33.3z M46.8,12.6c-0.5-0.1-1-0.1-1.4,0.2 c-0.9,0.5-1.2,1.7-0.7,2.6c0.3,0.4,0.7,0.7,1.1,0.9c0.2,0,0.3,0.1,0.5,0.1c0.3,0,0.6-0.1,0.9-0.3c0.4-0.3,0.8-0.7,0.9-1.1 c0.1-0.5,0.1-1-0.2-1.4C47.7,13,47.3,12.7,46.8,12.6z M47.3,33.5c-0.4-0.3-0.9-0.3-1.4-0.2c-0.3,0.1-0.6,0.3-0.8,0.5l-3.4-2 c0.2-0.5,0.2-1,0.1-1.5c-0.2-0.7-0.6-1.2-1.2-1.6c-1.3-0.7-2.9-0.3-3.6,1c-0.4,0.6-0.4,1.3-0.3,2c0,0.1,0,0.1,0.1,0.2l-6.3,3.6 c-0.5-0.6-1.2-0.9-2-0.9c-0.8,0-1.5,0.4-2,0.9l-6.3-3.6c0-0.1,0-0.1,0.1-0.2c0.2-0.7,0.1-1.4-0.3-2c-0.4-0.6-0.9-1-1.6-1.2 c-0.1,0-0.1,0-0.2,0v-7.3c0.1,0,0.1,0,0.2,0c0.7-0.2,1.2-0.6,1.6-1.2c0.4-0.6,0.4-1.3,0.3-2c0-0.1,0-0.1-0.1-0.2l6.3-3.6 c0.5,0.6,1.2,0.9,2,0.9c1.5,0,2.6-1.2,2.6-2.6s-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6c0,0.3,0.1,0.6,0.2,0.9l-6.3,3.6 c-0.2-0.2-0.4-0.4-0.7-0.6c-0.6-0.4-1.3-0.4-2-0.3c-0.7,0.2-1.2,0.6-1.6,1.2c-0.7,1.3-0.3,2.9,1,3.6l0,0c0.3,0.1,0.5,0.2,0.8,0.3 v7.3c-0.3,0.1-0.6,0.1-0.8,0.3c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2c0.4,0.6,0.9,1,1.6,1.2c0.2,0.1,0.5,0.1,0.7,0.1 c0.5,0,0.9-0.1,1.3-0.4c0.3-0.1,0.5-0.3,0.7-0.6l6.3,3.6c-0.1,0.3-0.2,0.6-0.2,0.9c0,1.5,1.2,2.6,2.6,2.6s2.6-1.2,2.6-2.6 c0-0.3-0.1-0.6-0.2-0.9l6.3-3.6c0.2,0.2,0.4,0.4,0.7,0.6l0,0c0.4,0.2,0.9,0.4,1.3,0.4c0.7,0,1.5-0.3,2-0.9l3.4,2 c-0.1,0.3-0.1,0.6,0,1c0.1,0.5,0.4,0.9,0.9,1.1c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1c0.5-0.1,0.9-0.4,1.1-0.9 c0.3-0.4,0.3-0.9,0.2-1.4C48,34.2,47.7,33.7,47.3,33.5z M9.5,16c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1 c0.5-0.1,0.9-0.4,1.1-0.9c0.5-0.9,0.2-2.1-0.7-2.6c-0.9-0.5-2.1-0.2-2.6,0.7c-0.3,0.4-0.3,0.9-0.2,1.4C8.7,15.4,9,15.8,9.5,16z M15.7,2.8c0.7-0.4,0.9-1.3,0.5-2c-0.4-0.7-1.3-0.9-2-0.5c-0.7,0.4-0.9,1.3-0.5,2C14.1,2.9,15,3.2,15.7,2.8z M41.1,46.8 c-0.7,0.4-0.9,1.3-0.5,2c0.4,0.7,1.3,0.9,2,0.5c0.7-0.4,0.9-1.3,0.5-2C42.7,46.6,41.8,46.4,41.1,46.8z M15.7,46.8 c-0.7-0.4-1.6-0.2-2,0.5c-0.4,0.7-0.2,1.6,0.5,2c0.7,0.4,1.6,0.2,2-0.5C16.6,48.1,16.4,47.2,15.7,46.8z M41.1,2.8 c0.7,0.4,1.6,0.2,2-0.5c0.4-0.7,0.2-1.6-0.5-2c-0.7-0.4-1.6-0.2-2,0.5C40.1,1.4,40.4,2.3,41.1,2.8z M55.3,23.3 c-0.8,0-1.5,0.7-1.5,1.5c0,0.8,0.7,1.5,1.5,1.5c0.8,0,1.5-0.7,1.5-1.5C56.7,24,56.1,23.3,55.3,23.3z M1.5,23.3C0.7,23.3,0,24,0,24.8 c0,0.8,0.7,1.5,1.5,1.5s1.5-0.7,1.5-1.5C2.9,24,2.3,23.3,1.5,23.3z M39.1,21.2c0.4,0,0.9-0.1,1.3-0.4c1.3-0.7,1.7-2.3,1-3.6 c-0.7-1.3-2.3-1.7-3.6-1l0,0c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2C37.3,20.7,38.2,21.2,39.1,21.2z"></path> <path id="logo__quanta" class='transition--color orange' fill="currentColor" d="M309.9,14c0,1.1-0.9,1.8-2,1.8c-0.9,0-1.8-0.7-1.8-1.8c0-1.2,0.8-2,1.9-2C309.2,12,309.9,12.8,309.9,14z M85.5,28.7c0.6-1.3,0.8-2.6,0.8-4.2c0-2.9-1-5.2-2.9-7.1c-1.9-1.9-4.2-2.8-7-2.8s-5.1,0.9-7,2.8c-1.9,1.9-2.9,4.2-2.9,7.1 c0,2.9,1,5.2,2.9,7.1c1.9,1.9,4.2,2.8,7,2.8c2.7,0,4.9-0.9,6.8-2.6l2.6,1.7l2.2-3.3L85.5,28.7z M82.1,26.5L79.8,25l-2.2,3.3l2.3,1.5 c-1,0.7-2.1,1.1-3.5,1.1c-1.8,0-3.2-0.6-4.3-1.7c-1.1-1.2-1.6-2.7-1.6-4.6c0-1.9,0.5-3.4,1.6-4.6c1.1-1.2,2.5-1.7,4.3-1.7 c1.8,0,3.2,0.6,4.3,1.7c1.1,1.1,1.6,2.7,1.6,4.6C82.3,25.2,82.2,25.9,82.1,26.5z M103.2,27.3c0,1.2-0.3,2.1-0.9,2.8 c-0.6,0.6-1.5,1-2.5,1s-1.9-0.3-2.5-1c-0.6-0.6-0.9-1.6-0.9-2.8v-8.5h-3.9v9c0,2,0.6,3.7,1.7,4.8c1.1,1.2,2.5,1.7,4.3,1.7 c2.2,0,3.6-0.4,4.8-1.7v1.5h3.9V18.9h-3.9V27.3z M144.3,18.9c-2.2,0-3.6,0.4-4.8,1.7v-1.5h-3.9v15.4h3.9V26c0-1.2,0.3-2.1,0.9-2.8 c0.6-0.6,1.5-1,2.5-1c1.1,0,1.9,0.3,2.5,1c0.6,0.6,0.9,1.6,0.9,2.8v8.5h3.9v-9c0-2-0.6-3.7-1.7-4.8C147.4,19.5,146,18.9,144.3,18.9z M124.8,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7c0,2.3,0.7,4.2,2.1,5.7 c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H124.8z M123.6,29.9c-0.8,0.8-1.8,1.2-2.8,1.2c-1.1,0-2-0.4-2.8-1.2 c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3c0.8-0.8,1.8-1.2,2.8-1.2c1.1,0,2,0.4,2.9,1.2c0.8,0.8,1.2,1.9,1.2,3.3 C124.8,28,124.4,29.1,123.6,29.9z M180.1,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7 c0,2.3,0.7,4.2,2.1,5.7c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H180.1z M178.9,29.9c-0.8,0.8-1.8,1.2-2.8,1.2 c-1.1,0-2-0.4-2.8-1.2c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3C174,22.4,175,22,176,22c1.1,0,2,0.4,2.9,1.2 c0.8,0.8,1.2,1.9,1.2,3.3C180.1,28,179.7,29.1,178.9,29.9z M161.4,31c-1.1,0-1.9-0.7-1.9-2.1v-6.4h4.1v-3.2h-4.1v-4h-3.7v4v3.2v6.4 c0,3.7,2.1,5.5,5.3,5.4c1.1,0,2-0.2,3-0.6l-1-3.1C162.6,30.9,161.9,31,161.4,31z"></path> <path id="logo__magazine" class='transition--color gray2' fill="currentColor" d="M218.3,33.5l-0.1,1c-1.1,0-2.4-0.1-3.9-0.1c-1.5,0-2.7,0.1-3.6,0.1v-1c1.6-0.1,2-0.3,2-0.9 c0.1-0.8,0.1-2.4,0.1-5.1c0-4.4,0-4.9-0.3-5.4c-0.4-0.9-1.2-1.4-2.4-1.4c-1.6,0-3,1-3.7,2.3c-0.2,0.5-0.4,0.9-0.4,1.5v4.7 c0,1.3,0,2.6,0.1,3.4c0,0.7,0.4,0.9,2.2,0.9l-0.1,1c-0.9,0-2.5-0.1-3.9-0.1c-1.4,0-2.6,0.1-3.5,0.1v-1c1.6-0.1,2-0.2,2-1 c0.1-1.1,0.1-2.2,0.1-4.4v-2.8c0-2.4,0-2.8-0.2-3.3c-0.4-0.9-1.1-1.3-2.3-1.3c-1.5,0-3,0.9-3.8,2.4c-0.3,0.6-0.4,0.9-0.4,1.7v4.6 c0,1.4,0,2.5,0.1,3.3c0.1,0.7,0.4,0.8,2.1,0.9l-0.1,0.9c-0.8,0-2.5-0.1-3.8-0.1c-1.3,0-2.6,0.1-3.7,0.1v-1c1.8,0,2.1-0.2,2.1-1 c0-0.9,0.1-2.3,0.1-4.2v-2.9c0-1.9,0-3.4-0.1-4.3c0-0.5-0.3-0.6-2.2-0.6l0.1-0.9c1.7,0,3.6-0.2,5.2-0.5c0.1,0.6,0.2,2.2,0.2,2.7 c1.3-1.3,3.2-2.9,5.7-2.9c2,0,2.9,0.8,3.4,1.5c0.3,0.4,0.5,0.9,0.6,1.3c1.2-1.2,3-2.8,5.7-2.8c2.1,0,3.3,1.1,3.8,2 c0.4,0.7,0.5,1.5,0.5,2.3v9.4C216,33.3,216.2,33.4,218.3,33.5z M238.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4c-1.8,0-2.5-1.1-2.7-2.6 c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4c0-1.5-0.7-3-2.7-3 c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4c-0.8,0-1.5-0.4-1.5-1.6 c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5C237.5,33.1,238,32.4,238.4,31z M233,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3c0.1-0.4,0.2-1,0.2-1.5V25.3z M255.8,27.1c-1.3,0-2.8-0.1-3.7-0.1l0,0.9l1.5,0.1c1.2,0.1,1.4,0.3,1.4,1.3c0,1,0,2.4-0.1,3.2c-0.1,0.8-1.1,1.3-2.5,1.3 c-1.5,0-2.8-0.5-3.8-1.8c-0.9-1.1-1.3-3.1-1.3-5.1c0-2.2,0.5-3.9,1.4-5.1c0.8-1.2,2-1.8,3.5-1.8c2.6,0,4.1,1.7,4.4,5l0.9,0 c-0.1-2.1,0.2-4.8,0.4-5.7l-0.8-0.3l-0.5,1.3c-0.5-0.5-1.8-1.4-4.3-1.4c-1.6,0-3,0.3-4.2,1c-2.4,1.3-3.8,3.9-3.8,7 c0,2.4,0.6,4.2,1.7,5.5c1.2,1.5,3.2,2.3,6.1,2.3c1.2,0,2.5-0.3,3.6-0.6c1-0.3,1.8-0.6,2.4-0.7c-0.1-0.5-0.2-1.3-0.2-2.5 c0-0.7,0-1.7,0.1-2.3c0-0.5,0.3-0.6,1.5-0.8l0-0.9C258.4,27.1,257.1,27.1,255.8,27.1z M279.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4 c-1.8,0-2.5-1.1-2.7-2.6c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4 c0-1.5-0.7-3-2.7-3c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4 c-0.8,0-1.5-0.4-1.5-1.6c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5 C278.5,33.1,279,32.4,279.4,31z M274,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3 c0.1-0.4,0.2-1,0.2-1.5V25.3z M295.1,33c-1,0.2-2.8,0.3-5.6,0.3c1.8-2.8,7.1-10.8,7.9-12c0.4-0.7,0.8-1.4,0.9-2.1 c-1.4,0-2.6,0.1-5.3,0.1h-3c-2,0-3.2-0.1-3.8-0.4c0,2.1-0.2,4.4-0.4,5.8l0.9-0.2c0.2-0.8,0.4-1.7,0.7-2.6c0.4-1.1,0.9-1.4,2.4-1.5 c1.4-0.1,2.9-0.1,4.4-0.1c-0.9,1.8-5.2,8.8-9,13.4l0.4,0.7c0.6,0,1.7-0.1,3.7-0.1c3.8,0,7.8,0.1,9.1,0.2c0.1-1.6,0.4-4.3,0.6-5.8 l-0.9-0.2C297.3,32,296.5,32.9,295.1,33z M309.9,32.5c0-0.7-0.1-1.9-0.1-4.1v-4.1c0-2.6,0.1-4.6,0.1-5.4c-1.6,0.4-3.9,0.5-5.6,0.6 l0,0.9c1.9-0.1,2.2,0,2.2,0.5c0,0.5,0.1,1.7,0.1,3.6v3.9c0,2-0.1,3.5-0.1,4.1c0,0.6-0.3,0.9-2.4,1l0,1c1.1,0,2.1-0.1,3.8-0.1 c1.7,0,3,0.1,4,0.1l0-1C310.3,33.4,309.9,33.3,309.9,32.5z M332.9,32.5v-9.3c0-0.8-0.1-1.6-0.5-2.2c-0.5-1.1-1.7-2.1-4-2.1 c-2.5,0-4.2,1.5-5.5,2.7c0-0.5-0.1-1.9-0.2-2.6c-1.6,0.3-3.4,0.5-5.1,0.5l-0.1,0.9c1.8,0,2.1,0.1,2.1,0.6c0.1,0.9,0.1,2.4,0.1,4.3 v3.1c0,1.7-0.1,3-0.1,4c0,0.8-0.3,0.9-2.1,1v1c1,0,2.2-0.1,3.7-0.1c1.3,0,3,0.1,3.9,0.1l0.1-1c-1.8-0.1-2.1-0.2-2.1-0.9 c-0.1-0.8-0.1-2.2-0.1-3.7v-4.1c0-0.8,0.1-1.3,0.4-1.8c0.8-1.4,2.1-2.2,3.8-2.2c1.2,0,1.9,0.5,2.4,1.3c0.3,0.6,0.4,1,0.4,5.4 c0,2.8-0.1,4.4-0.1,5.1c-0.1,0.7-0.4,0.8-2,0.9l0,1c0.8,0,2-0.1,3.6-0.1c1.5,0,2.8,0.1,3.9,0.1l0.1-1 C333.1,33.4,332.9,33.3,332.9,32.5z M352.5,29.8l0.9,0.5c-1.1,3.2-3.3,4.5-6.3,4.5c-2.7,0-4.4-0.8-5.6-2.4c-0.9-1.2-1.5-3.2-1.5-5.3 c0-4.4,2.5-8.3,7.4-8.3c5.1,0,6,4,6,6.1c0,0.7-0.2,1.2-0.7,1.4c-0.6,0.2-2.3,0.4-4.6,0.5c-1.2,0-3.1,0-4.6,0 c-0.1,1.9,0.4,3.6,1.1,4.6c0.8,1.2,1.9,1.8,3.5,1.8C350.3,33.2,351.6,32.2,352.5,29.8z M343.6,25.7h2.9c1.7,0,2.6-0.1,3.1-0.2 c0.5-0.1,0.7-0.5,0.7-1.2c0-1.9-0.8-4.4-3.1-4.4C344.8,19.9,343.7,22.8,343.6,25.7z"></path> </g></svg> </a> </div> <nav class="mega__main mega__group h2 orange fill-h"> <ul> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="https://www.quantamagazine.org/./physics/">Physics</a> </li> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="https://www.quantamagazine.org/./mathematics/">Mathematics</a> </li> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="https://www.quantamagazine.org/./biology/">Biology</a> </li> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="https://www.quantamagazine.org/./computer-science/">Computer Science</a> </li> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="/topics">Topics</a> </li> <li class="pv05"> <a class="mega__link pangram mbold" role="menuitem" href="https://www.quantamagazine.org/archive/">Archive</a> </li> </ul> </nav> <nav class="mega__secondary mega__group h3 gray3 fill-h"> <ul> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="https://www.quantamagazine.org/./abstractions/">Blog</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="/tag/quantized">Columns</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="https://www.quantamagazine.org/./qa/">Interviews</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="/podcasts/">Podcasts</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="https://www.quantamagazine.org/./puzzles/">Puzzles</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="https://www.quantamagazine.org/./multimedia/">Multimedia</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="/videos">Videos</a> </li> <li class="pv075"> <a class="mega__link merriweather" role="menuitem" href="https://www.quantamagazine.org/about/">About Quanta</a> </li> </ul> </nav> <div class="mega__other mega__group white fill-h grid"> <div class="mega__notice mb2"> <p class="h5 mt025 italic o6"> <em>An editorially independent publication supported by the Simons Foundation.</em> </p> </div> <div class="mega__social"> <div class="mv0 bold h2t"> Follow Quanta </div> <div class='social-links flex flex-justify-between flex-items-center social-links--mega mt1 pt05 flex-justify-center'> <a href='https://www.facebook.com/QuantaNews' target="_blank" class='social-links__link flex flex-items-center relative facebook mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class="absolute fit-x mxa " viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg></div> </a> <a href='https://twitter.com/QuantaMagazine' target="_blank" class='social-links__link flex flex-items-center relative x mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class='absolute fit-x mxa ' viewBox='0 0 1200 1227' xmlns='http://www.w3.org/2000/svg'><path d='M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z' fill='currentColor'/></svg></div> </a> <a href='https://www.youtube.com/c/QuantaScienceChannel' target="_blank" class='social-links__link flex flex-items-center relative youtube mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" class="c-1a1a1a absolute fit-x mxa " viewBox="0 0 50 50" enable-background="new 0 0 50 50" width="50" height="50" > <title>Youtube</title> <path fill="currentColor" d="M18.7 33.7V16.1l15.7 8.8-15.7 8.8zM43.3 8.2c-12.2-.9-24.4-.9-36.6 0-1.8.2-3.4 1.2-4.3 2.8C1.3 12.5.6 14.3.3 16.2c-.5 5.9-.5 11.8 0 17.7.2 1.9.9 3.7 2.1 5.2 1 1.5 2.5 2.6 4.3 2.9 12.2.8 24.4.8 36.6 0 1.8-.4 3.3-1.5 4.3-3 1.1-1.5 1.8-3.3 2.1-5.1.5-6 .5-12.1 0-18.1-.2-1.8-.8-3.6-1.9-5.1-1-1.6-2.7-2.5-4.5-2.5z"></path></svg></div> </a> <a href='https://instagram.com/quantamag' target="_blank" class='social-links__link flex flex-items-center relative instagram mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" class="c-1a1a1a absolute fit-x mxa " viewBox="0 0 50 50" enable-background="new 0 0 50 50" width="50" height="50" > <title>Instagram</title> <path fill="currentColor" d="M33.4 0H16.6C7.5 0 0 7.5 0 16.6v16.8C0 42.5 7.5 50 16.6 50h16.8C42.5 50 50 42.5 50 33.4V16.6C50 7.5 42.5 0 33.4 0zM25 36.6c-6.4 0-11.6-5.2-11.6-11.6S18.6 13.4 25 13.4 36.6 18.6 36.6 25 31.4 36.6 25 36.6zm15.1-23.2c-1.8 0-3.2-1.4-3.2-3.2S38.3 7 40.1 7s3.2 1.4 3.2 3.2c0 1.7-1.5 3.2-3.2 3.2z"></path></svg></div> </a> <a href='https://www.quantamagazine.org/feed/' target="_blank" class='social-links__link flex flex-items-center relative rss mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class="c-1a1a1a absolute fit-x mxa " viewbox="0 0 50 50" enable-background="new 0 0 50 50"><title>RSS</title><path fill="currentColor" d="M0 0v8.8c22.7 0 41.2 18.5 41.2 41.2H50C50 22.4 27.6 0 0 0z"></path><path fill="currentColor" d="M0 17.2v8.7c13.3 0 24.1 10.8 24.1 24.1h8.7c0-18.1-14.7-32.8-32.8-32.8z"></path><circle fill="currentColor" cx="7.4" cy="42.6" r="7.4"></circle></svg></div> </a> <a href='https://bsky.app/profile/did:plc:vfktz6qe6vy7serr3wqutpzt' target="_blank" class='social-links__link flex flex-items-center relative bluesky mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class='absolute fit-x mxa ' viewbox='0 0 600 530' version='1.1' xmlns='http://www.w3.org/2000/svg'><path d='m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z' fill='currentColor'/></svg></div> </a> </div> <div class='mega__other__divider mv2 white o2'></div> </div> <section class='outer mega__newsletter ' id='nav-newsletter'> <div class='scale0 mt1 mha container--xs pt05'> <div class='mt0 bold h2t'> Newsletter </div> <p class='h5 mt025 italic o6'> <em>Get the latest news delivered to your inbox.</em> </p> <div class='newsletter__form block mha newsletter--mega mb2' id='mc_embed_signup'> <form action='https://quantamagazine.us1.list-manage.com/subscribe/post?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' target='_blank' method='post' class='bg-white' id='mc-embedded-subscribe-form' name='mc-embedded-subscribe-form' target='_blank'> <div class='newsletter__form__inner flex flex-items-start mha'> <div class='newsletter__form__field flex flex-auto relative fill-v'> <label class='screen-reader-text' for='mce-EMAIL'>Email</label> <input type='email' class='flex fill-h px1 input--transparent pangram light scale3 placeholder-gray-808' name='EMAIL' id='mce-EMAIL' placeholder='Email address' autocorrect='off' autocapitalize='off' required> </div> <!--notice from mailchimp: real people should not fill this in and expect good things - do not remove this or risk form bot signups--> <div class='absolute left-n-infini' aria-hidden='true'> <input type='text' name='b_0d6ddf7dc1a0b7297c8e06618_f0cb61321c' tabindex='-1' value=''> </div> <button type='submit' class='ph2 pangram scale5 medium fill-v orange hover--black' id='mc-embedded-subscribe'>Subscribe</button> </div> </form> <div id='mce-responses' class='theme__anchors--solid'> <div class='response h5 merriweather italic hidden mt1' id='mce-error-response'></div> <div class='response h5 merriweather italic hidden mt1' id='mce-success-response'></div> </div> </div> <div class='h4t mb0'> <a target='_blank' href='http://us1.campaign-archive2.com/home/?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' class='mega__newsletter__link pangram bold scale5 relative'> <span class='p'>Recent newsletters</span> <svg class='icon inline orange ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </div> </div> <div class='mega__other__divider mv2 white o2 shop_divider'></div> </section> <div class="mega__store shop"> <div class="mv0 bold h2t"> Gift Store </div> <div class="mt025 h4t"> <a class="mega__newsletter__link pangram bold scale5 relative" href="/gift-store"> <span class="p">Shop Quanta gear</span> <svg class='icon inline orange ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </div> </div> </div> </div> </section> </div> </div> </div> </div> </div> <div> <div class='nav__container z1 fill-v mha absolute fit-x'> <div class='nav__inner fill-v relative z1'> <section class='outer header__inner flex fill-v relative z1'> <nav class='flex fill-h'> <div class='header__group flex relative z1'> <a class='header__logo flex flex-items-center mr1 absolute fit-t fit-b' href='/'> <svg x="0px" y="0px" viewbox="0 0 353.5 49.5" enable-background="new 0 0 353.5 49.5" class=''> <title>Quanta Homepage</title> <g id="logo"> <path id="logo__mark" class='transition--color text-1a1a1a' fill="currentColor" d="M28.4,5.9c1,0,1.9-0.8,1.9-1.9c0-1-0.8-1.9-1.9-1.9c-1,0-1.9,0.8-1.9,1.9C26.5,5.1,27.3,5.9,28.4,5.9z M28.4,43.6c-1,0-1.9,0.8-1.9,1.9c0,1,0.8,1.9,1.9,1.9c1,0,1.9-0.8,1.9-1.9C30.3,44.5,29.4,43.6,28.4,43.6z M10.9,33.3 c-0.5-0.1-1-0.1-1.4,0.2c-0.4,0.3-0.7,0.7-0.9,1.1c-0.1,0.5-0.1,1,0.2,1.4c0.4,0.6,1,0.9,1.6,0.9c0.3,0,0.6-0.1,0.9-0.3 c0.4-0.3,0.8-0.7,0.9-1.1c0.1-0.5,0.1-1-0.2-1.4C11.8,33.7,11.4,33.4,10.9,33.3z M46.8,12.6c-0.5-0.1-1-0.1-1.4,0.2 c-0.9,0.5-1.2,1.7-0.7,2.6c0.3,0.4,0.7,0.7,1.1,0.9c0.2,0,0.3,0.1,0.5,0.1c0.3,0,0.6-0.1,0.9-0.3c0.4-0.3,0.8-0.7,0.9-1.1 c0.1-0.5,0.1-1-0.2-1.4C47.7,13,47.3,12.7,46.8,12.6z M47.3,33.5c-0.4-0.3-0.9-0.3-1.4-0.2c-0.3,0.1-0.6,0.3-0.8,0.5l-3.4-2 c0.2-0.5,0.2-1,0.1-1.5c-0.2-0.7-0.6-1.2-1.2-1.6c-1.3-0.7-2.9-0.3-3.6,1c-0.4,0.6-0.4,1.3-0.3,2c0,0.1,0,0.1,0.1,0.2l-6.3,3.6 c-0.5-0.6-1.2-0.9-2-0.9c-0.8,0-1.5,0.4-2,0.9l-6.3-3.6c0-0.1,0-0.1,0.1-0.2c0.2-0.7,0.1-1.4-0.3-2c-0.4-0.6-0.9-1-1.6-1.2 c-0.1,0-0.1,0-0.2,0v-7.3c0.1,0,0.1,0,0.2,0c0.7-0.2,1.2-0.6,1.6-1.2c0.4-0.6,0.4-1.3,0.3-2c0-0.1,0-0.1-0.1-0.2l6.3-3.6 c0.5,0.6,1.2,0.9,2,0.9c1.5,0,2.6-1.2,2.6-2.6s-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6c0,0.3,0.1,0.6,0.2,0.9l-6.3,3.6 c-0.2-0.2-0.4-0.4-0.7-0.6c-0.6-0.4-1.3-0.4-2-0.3c-0.7,0.2-1.2,0.6-1.6,1.2c-0.7,1.3-0.3,2.9,1,3.6l0,0c0.3,0.1,0.5,0.2,0.8,0.3 v7.3c-0.3,0.1-0.6,0.1-0.8,0.3c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2c0.4,0.6,0.9,1,1.6,1.2c0.2,0.1,0.5,0.1,0.7,0.1 c0.5,0,0.9-0.1,1.3-0.4c0.3-0.1,0.5-0.3,0.7-0.6l6.3,3.6c-0.1,0.3-0.2,0.6-0.2,0.9c0,1.5,1.2,2.6,2.6,2.6s2.6-1.2,2.6-2.6 c0-0.3-0.1-0.6-0.2-0.9l6.3-3.6c0.2,0.2,0.4,0.4,0.7,0.6l0,0c0.4,0.2,0.9,0.4,1.3,0.4c0.7,0,1.5-0.3,2-0.9l3.4,2 c-0.1,0.3-0.1,0.6,0,1c0.1,0.5,0.4,0.9,0.9,1.1c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1c0.5-0.1,0.9-0.4,1.1-0.9 c0.3-0.4,0.3-0.9,0.2-1.4C48,34.2,47.7,33.7,47.3,33.5z M9.5,16c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1 c0.5-0.1,0.9-0.4,1.1-0.9c0.5-0.9,0.2-2.1-0.7-2.6c-0.9-0.5-2.1-0.2-2.6,0.7c-0.3,0.4-0.3,0.9-0.2,1.4C8.7,15.4,9,15.8,9.5,16z M15.7,2.8c0.7-0.4,0.9-1.3,0.5-2c-0.4-0.7-1.3-0.9-2-0.5c-0.7,0.4-0.9,1.3-0.5,2C14.1,2.9,15,3.2,15.7,2.8z M41.1,46.8 c-0.7,0.4-0.9,1.3-0.5,2c0.4,0.7,1.3,0.9,2,0.5c0.7-0.4,0.9-1.3,0.5-2C42.7,46.6,41.8,46.4,41.1,46.8z M15.7,46.8 c-0.7-0.4-1.6-0.2-2,0.5c-0.4,0.7-0.2,1.6,0.5,2c0.7,0.4,1.6,0.2,2-0.5C16.6,48.1,16.4,47.2,15.7,46.8z M41.1,2.8 c0.7,0.4,1.6,0.2,2-0.5c0.4-0.7,0.2-1.6-0.5-2c-0.7-0.4-1.6-0.2-2,0.5C40.1,1.4,40.4,2.3,41.1,2.8z M55.3,23.3 c-0.8,0-1.5,0.7-1.5,1.5c0,0.8,0.7,1.5,1.5,1.5c0.8,0,1.5-0.7,1.5-1.5C56.7,24,56.1,23.3,55.3,23.3z M1.5,23.3C0.7,23.3,0,24,0,24.8 c0,0.8,0.7,1.5,1.5,1.5s1.5-0.7,1.5-1.5C2.9,24,2.3,23.3,1.5,23.3z M39.1,21.2c0.4,0,0.9-0.1,1.3-0.4c1.3-0.7,1.7-2.3,1-3.6 c-0.7-1.3-2.3-1.7-3.6-1l0,0c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2C37.3,20.7,38.2,21.2,39.1,21.2z"></path> <path id="logo__quanta" class='transition--color text-1a1a1a' fill="currentColor" d="M309.9,14c0,1.1-0.9,1.8-2,1.8c-0.9,0-1.8-0.7-1.8-1.8c0-1.2,0.8-2,1.9-2C309.2,12,309.9,12.8,309.9,14z M85.5,28.7c0.6-1.3,0.8-2.6,0.8-4.2c0-2.9-1-5.2-2.9-7.1c-1.9-1.9-4.2-2.8-7-2.8s-5.1,0.9-7,2.8c-1.9,1.9-2.9,4.2-2.9,7.1 c0,2.9,1,5.2,2.9,7.1c1.9,1.9,4.2,2.8,7,2.8c2.7,0,4.9-0.9,6.8-2.6l2.6,1.7l2.2-3.3L85.5,28.7z M82.1,26.5L79.8,25l-2.2,3.3l2.3,1.5 c-1,0.7-2.1,1.1-3.5,1.1c-1.8,0-3.2-0.6-4.3-1.7c-1.1-1.2-1.6-2.7-1.6-4.6c0-1.9,0.5-3.4,1.6-4.6c1.1-1.2,2.5-1.7,4.3-1.7 c1.8,0,3.2,0.6,4.3,1.7c1.1,1.1,1.6,2.7,1.6,4.6C82.3,25.2,82.2,25.9,82.1,26.5z M103.2,27.3c0,1.2-0.3,2.1-0.9,2.8 c-0.6,0.6-1.5,1-2.5,1s-1.9-0.3-2.5-1c-0.6-0.6-0.9-1.6-0.9-2.8v-8.5h-3.9v9c0,2,0.6,3.7,1.7,4.8c1.1,1.2,2.5,1.7,4.3,1.7 c2.2,0,3.6-0.4,4.8-1.7v1.5h3.9V18.9h-3.9V27.3z M144.3,18.9c-2.2,0-3.6,0.4-4.8,1.7v-1.5h-3.9v15.4h3.9V26c0-1.2,0.3-2.1,0.9-2.8 c0.6-0.6,1.5-1,2.5-1c1.1,0,1.9,0.3,2.5,1c0.6,0.6,0.9,1.6,0.9,2.8v8.5h3.9v-9c0-2-0.6-3.7-1.7-4.8C147.4,19.5,146,18.9,144.3,18.9z M124.8,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7c0,2.3,0.7,4.2,2.1,5.7 c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H124.8z M123.6,29.9c-0.8,0.8-1.8,1.2-2.8,1.2c-1.1,0-2-0.4-2.8-1.2 c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3c0.8-0.8,1.8-1.2,2.8-1.2c1.1,0,2,0.4,2.9,1.2c0.8,0.8,1.2,1.9,1.2,3.3 C124.8,28,124.4,29.1,123.6,29.9z M180.1,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7 c0,2.3,0.7,4.2,2.1,5.7c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H180.1z M178.9,29.9c-0.8,0.8-1.8,1.2-2.8,1.2 c-1.1,0-2-0.4-2.8-1.2c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3C174,22.4,175,22,176,22c1.1,0,2,0.4,2.9,1.2 c0.8,0.8,1.2,1.9,1.2,3.3C180.1,28,179.7,29.1,178.9,29.9z M161.4,31c-1.1,0-1.9-0.7-1.9-2.1v-6.4h4.1v-3.2h-4.1v-4h-3.7v4v3.2v6.4 c0,3.7,2.1,5.5,5.3,5.4c1.1,0,2-0.2,3-0.6l-1-3.1C162.6,30.9,161.9,31,161.4,31z"></path> <path id="logo__magazine" class='transition--color text-999999' fill="currentColor" d="M218.3,33.5l-0.1,1c-1.1,0-2.4-0.1-3.9-0.1c-1.5,0-2.7,0.1-3.6,0.1v-1c1.6-0.1,2-0.3,2-0.9 c0.1-0.8,0.1-2.4,0.1-5.1c0-4.4,0-4.9-0.3-5.4c-0.4-0.9-1.2-1.4-2.4-1.4c-1.6,0-3,1-3.7,2.3c-0.2,0.5-0.4,0.9-0.4,1.5v4.7 c0,1.3,0,2.6,0.1,3.4c0,0.7,0.4,0.9,2.2,0.9l-0.1,1c-0.9,0-2.5-0.1-3.9-0.1c-1.4,0-2.6,0.1-3.5,0.1v-1c1.6-0.1,2-0.2,2-1 c0.1-1.1,0.1-2.2,0.1-4.4v-2.8c0-2.4,0-2.8-0.2-3.3c-0.4-0.9-1.1-1.3-2.3-1.3c-1.5,0-3,0.9-3.8,2.4c-0.3,0.6-0.4,0.9-0.4,1.7v4.6 c0,1.4,0,2.5,0.1,3.3c0.1,0.7,0.4,0.8,2.1,0.9l-0.1,0.9c-0.8,0-2.5-0.1-3.8-0.1c-1.3,0-2.6,0.1-3.7,0.1v-1c1.8,0,2.1-0.2,2.1-1 c0-0.9,0.1-2.3,0.1-4.2v-2.9c0-1.9,0-3.4-0.1-4.3c0-0.5-0.3-0.6-2.2-0.6l0.1-0.9c1.7,0,3.6-0.2,5.2-0.5c0.1,0.6,0.2,2.2,0.2,2.7 c1.3-1.3,3.2-2.9,5.7-2.9c2,0,2.9,0.8,3.4,1.5c0.3,0.4,0.5,0.9,0.6,1.3c1.2-1.2,3-2.8,5.7-2.8c2.1,0,3.3,1.1,3.8,2 c0.4,0.7,0.5,1.5,0.5,2.3v9.4C216,33.3,216.2,33.4,218.3,33.5z M238.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4c-1.8,0-2.5-1.1-2.7-2.6 c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4c0-1.5-0.7-3-2.7-3 c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4c-0.8,0-1.5-0.4-1.5-1.6 c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5C237.5,33.1,238,32.4,238.4,31z M233,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3c0.1-0.4,0.2-1,0.2-1.5V25.3z M255.8,27.1c-1.3,0-2.8-0.1-3.7-0.1l0,0.9l1.5,0.1c1.2,0.1,1.4,0.3,1.4,1.3c0,1,0,2.4-0.1,3.2c-0.1,0.8-1.1,1.3-2.5,1.3 c-1.5,0-2.8-0.5-3.8-1.8c-0.9-1.1-1.3-3.1-1.3-5.1c0-2.2,0.5-3.9,1.4-5.1c0.8-1.2,2-1.8,3.5-1.8c2.6,0,4.1,1.7,4.4,5l0.9,0 c-0.1-2.1,0.2-4.8,0.4-5.7l-0.8-0.3l-0.5,1.3c-0.5-0.5-1.8-1.4-4.3-1.4c-1.6,0-3,0.3-4.2,1c-2.4,1.3-3.8,3.9-3.8,7 c0,2.4,0.6,4.2,1.7,5.5c1.2,1.5,3.2,2.3,6.1,2.3c1.2,0,2.5-0.3,3.6-0.6c1-0.3,1.8-0.6,2.4-0.7c-0.1-0.5-0.2-1.3-0.2-2.5 c0-0.7,0-1.7,0.1-2.3c0-0.5,0.3-0.6,1.5-0.8l0-0.9C258.4,27.1,257.1,27.1,255.8,27.1z M279.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4 c-1.8,0-2.5-1.1-2.7-2.6c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4 c0-1.5-0.7-3-2.7-3c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4 c-0.8,0-1.5-0.4-1.5-1.6c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5 C278.5,33.1,279,32.4,279.4,31z M274,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3 c0.1-0.4,0.2-1,0.2-1.5V25.3z M295.1,33c-1,0.2-2.8,0.3-5.6,0.3c1.8-2.8,7.1-10.8,7.9-12c0.4-0.7,0.8-1.4,0.9-2.1 c-1.4,0-2.6,0.1-5.3,0.1h-3c-2,0-3.2-0.1-3.8-0.4c0,2.1-0.2,4.4-0.4,5.8l0.9-0.2c0.2-0.8,0.4-1.7,0.7-2.6c0.4-1.1,0.9-1.4,2.4-1.5 c1.4-0.1,2.9-0.1,4.4-0.1c-0.9,1.8-5.2,8.8-9,13.4l0.4,0.7c0.6,0,1.7-0.1,3.7-0.1c3.8,0,7.8,0.1,9.1,0.2c0.1-1.6,0.4-4.3,0.6-5.8 l-0.9-0.2C297.3,32,296.5,32.9,295.1,33z M309.9,32.5c0-0.7-0.1-1.9-0.1-4.1v-4.1c0-2.6,0.1-4.6,0.1-5.4c-1.6,0.4-3.9,0.5-5.6,0.6 l0,0.9c1.9-0.1,2.2,0,2.2,0.5c0,0.5,0.1,1.7,0.1,3.6v3.9c0,2-0.1,3.5-0.1,4.1c0,0.6-0.3,0.9-2.4,1l0,1c1.1,0,2.1-0.1,3.8-0.1 c1.7,0,3,0.1,4,0.1l0-1C310.3,33.4,309.9,33.3,309.9,32.5z M332.9,32.5v-9.3c0-0.8-0.1-1.6-0.5-2.2c-0.5-1.1-1.7-2.1-4-2.1 c-2.5,0-4.2,1.5-5.5,2.7c0-0.5-0.1-1.9-0.2-2.6c-1.6,0.3-3.4,0.5-5.1,0.5l-0.1,0.9c1.8,0,2.1,0.1,2.1,0.6c0.1,0.9,0.1,2.4,0.1,4.3 v3.1c0,1.7-0.1,3-0.1,4c0,0.8-0.3,0.9-2.1,1v1c1,0,2.2-0.1,3.7-0.1c1.3,0,3,0.1,3.9,0.1l0.1-1c-1.8-0.1-2.1-0.2-2.1-0.9 c-0.1-0.8-0.1-2.2-0.1-3.7v-4.1c0-0.8,0.1-1.3,0.4-1.8c0.8-1.4,2.1-2.2,3.8-2.2c1.2,0,1.9,0.5,2.4,1.3c0.3,0.6,0.4,1,0.4,5.4 c0,2.8-0.1,4.4-0.1,5.1c-0.1,0.7-0.4,0.8-2,0.9l0,1c0.8,0,2-0.1,3.6-0.1c1.5,0,2.8,0.1,3.9,0.1l0.1-1 C333.1,33.4,332.9,33.3,332.9,32.5z M352.5,29.8l0.9,0.5c-1.1,3.2-3.3,4.5-6.3,4.5c-2.7,0-4.4-0.8-5.6-2.4c-0.9-1.2-1.5-3.2-1.5-5.3 c0-4.4,2.5-8.3,7.4-8.3c5.1,0,6,4,6,6.1c0,0.7-0.2,1.2-0.7,1.4c-0.6,0.2-2.3,0.4-4.6,0.5c-1.2,0-3.1,0-4.6,0 c-0.1,1.9,0.4,3.6,1.1,4.6c0.8,1.2,1.9,1.8,3.5,1.8C350.3,33.2,351.6,32.2,352.5,29.8z M343.6,25.7h2.9c1.7,0,2.6-0.1,3.1-0.2 c0.5-0.1,0.7-0.5,0.7-1.2c0-1.9-0.8-4.4-3.1-4.4C344.8,19.9,343.7,22.8,343.6,25.7z"></path> </g></svg> </a> </div> <div class='header__divider flex mh1 relative text-999999'> </div> <div class='header__main header__group flex relative'> <ul class='flex fill-v'> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='https://www.quantamagazine.org/./physics/'> <span class='mv0 h4t'>Physics</span> <span class='__underline text-ff8600'></span> </a> </li> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='https://www.quantamagazine.org/./mathematics/'> <span class='mv0 h4t'>Mathematics</span> <span class='__underline text-ff8600'></span> </a> </li> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='https://www.quantamagazine.org/./biology/'> <span class='mv0 h4t'>Biology</span> <span class='__underline text-ff8600'></span> </a> </li> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='https://www.quantamagazine.org/./computer-science/'> <span class='mv0 h4t'>Computer Science</span> <span class='__underline text-ff8600'></span> </a> </li> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='/topics'> <span class='mv0 h4t'>Topics</span> <span class='__underline text-ff8600'></span> </a> </li> <li class='flex flex-items-center fill-v'> <a class='header__link flex flex-items-center relative mh05 ph025 transition--color text-1a1a1a' href='https://www.quantamagazine.org/archive/'> <span class='mv0 h4t'>Archive</span> <span class='__underline text-ff8600'></span> </a> </li> </ul> </div> <div class='header__group flex flex-auto relative'> <ul class='header__icons flex flex-auto'> <li class='header__bookmarks header__icon flex flex-items-center mh05 z1 text-1a1a1a' aria-haspopup='dialog' data-icon-color=' text-1a1a1a'> <button class='relative ' data-function='trigger' data-name='nav-bookmarks'> <svg viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Saved articles</title><path fill="currentColor" d="M37.1,5.6v34.7l-8.9-5.1l-2.7-1.6l-2.8,1.5l-9.8,5.4V5.6H37.1 M42.7,0H7.3v50l18.1-9.9L42.7,50V0L42.7,0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement top-0 w-85'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='header__bookmarks__tooltip relative pv1 ph1'> <h2 class='mt0 mb05'>Saved Articles</h2> <p class='mt0 gray4 italic'>Create a reading list by clicking the Read Later icon next to the articles you wish to save.</p> <button class='button orange mr1 fill-h flex flex-items-center'> <a href='/saved-articles'> <span>See all saved articles</span> <svg class='icon ml05 icon orange icon-offset' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </button> </div> </div> </div> </div> </li> <li class='header__account header__icon flex flex-items-center mh05 z1 text-1a1a1a' aria-haspopup='dialog' data-icon-color=' text-1a1a1a'> <button class='relative ' data-function='trigger' data-name='nav-account'> <svg viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg" class=""><title>Login</title><path fill="currentColor" d="M35.2 29.9c3.9-3.1 6.4-7.8 6.4-13.2C41.7 7.5 34.2 0 25 0S8.3 7.5 8.3 16.7c0 5.4 2.5 10.1 6.4 13.2C6.1 33.4 0 41.1 0 50h5.6c0-9.1 8.7-16.5 19.4-16.5S44.4 40.9 44.4 50H50c0-8.9-6.1-16.6-14.8-20.1zM25 5.6c6.1 0 11.1 5 11.1 11.2S31.1 28 25 28s-11.1-5-11.1-11.2S18.9 5.6 25 5.6z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-28 top-19-5 ml-n14'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='relative align-c pv05 ph1'> <h4 id='logout' class='pb075 mv0 relative theme__accent z1 link'>Log out</h4> <hr class='o2 mb075'> <h4 id='resetPW' class='mv0 relative theme__accent z1 link' data-function='trigger' data-name='reset-password'>Change password</h4> </div> </div> </div> </div> </li> <li class='header__search header__icon relative flex flex-items-center flex-auto flex-justify-end mh05 z1 text-1a1a1a'> <button class='relative' aria-haspopup='dialog' data-function='trigger' data-name='nav-search'> <svg class="" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Search</title><path fill="currentColor" d="M48.8 46.2l-9.2-9.4c3.5-3.9 5.7-9.1 5.7-14.7C45.3 9.9 35.4 0 23.2 0s-22 9.9-22 22.1 9.9 22.1 22 22.1c4.4 0 8.5-1.3 12-3.6l9.5 9.5 4.1-3.9zM7.1 22.1c0-8.9 7.2-16.2 16.2-16.2 8.9 0 16.2 7.3 16.2 16.2s-7.3 16.2-16.2 16.2c-9-.1-16.2-7.3-16.2-16.2z"></path></svg> </button> </li> <li class='header__hamburger-outer flex flex-items-center mh05 relative'> <div class='header__hamburger'> <button class='hamburger block z10 relative theme__header-primary mha text-999999' aria-haspopup='menu' aria-label='open the menu'> <span class='hamburger__bar absolute fit-x mxa'></span> <span class='hamburger__bar absolute fit-x mxa'></span> <span class='hamburger__bar absolute fit-x mxa'></span> </button> </div> </li> </ul> </div> </nav> </section> </div> </div> <script type='text/javascript'> let headerArray = '{"type":"default","solid_primary_color":" text-1a1a1a","solid_secondary_color":" text-999999","solid_hover_color":" text-ff8600","solid_background_color":null,"solid_border_color":null}'; </script> </div> <div class='relative z0'> <div class='nav-search h-screen fit-x z0 bg-black hidden' role='dialog' data-function='toggle' data-name='nav-search'> <div class='nav-search__outer relative pt-0'> <div class='nav-search__inner pv2 relative flex flex-items-center opacity-100 translate-y-0'> <div class='fill-h mha container--sm'> <div class='scale0 fill-h'> <div class='pv2 fill-h'> <div class='white fill-h scale1 nav-search__form-container'> <p class='white pangram h6 uppercase kern--w bold'>Type search term(s)<span class='nav-search__title-addon'> and press enter</span></p> <form action='/' class='fill-h align-l relative' method='get' data-name='search-form'> <div class='search-input-container h0 '> <input id='nav-search-input' value='' name='s' class='search-input ' type='text' /> <label for='nav-search-input' data-label='What are you looking for?'>What are you looking for?</label> </div> <button class='nav-search__submit ' type='submit' value='Submit' disabled='disabled'> <svg class="nav-search__icon orange hover--white" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Search</title><path fill="currentColor" d="M48.8 46.2l-9.2-9.4c3.5-3.9 5.7-9.1 5.7-14.7C45.3 9.9 35.4 0 23.2 0s-22 9.9-22 22.1 9.9 22.1 22 22.1c4.4 0 8.5-1.3 12-3.6l9.5 9.5 4.1-3.9zM7.1 22.1c0-8.9 7.2-16.2 16.2-16.2 8.9 0 16.2 7.3 16.2 16.2s-7.3 16.2-16.2 16.2c-9-.1-16.2-7.3-16.2-16.2z"></path></svg> </button> </form> </div> <nav class='nav-search__popular scale1 theme fill-h align-l flex flex-wrap'> <p class='nav-search__popular-title gray4 pangram h6 uppercase kern bold mt1'>Popular Searches</p> <ul class='nav-search__popular-list relative flex flex-wrap'> <li class='nav-search__popular-item pv05 scale0'> <a class='nav-search__popular-link pangram white block theme__primary--hover color-transition' href='/?s=math'> Mathematics<svg class='icon icon-s orange float-r icon-offset--lg' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </li> <li class='nav-search__popular-item pv05 scale0'> <a class='nav-search__popular-link pangram white block theme__primary--hover color-transition' href='/?s=physics'> Physics<svg class='icon icon-s orange float-r icon-offset--lg' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </li> <li class='nav-search__popular-item pv05 scale0'> <a class='nav-search__popular-link pangram white block theme__primary--hover color-transition' href='/?s=black+holes'> Black Holes<svg class='icon icon-s orange float-r icon-offset--lg' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </li> <li class='nav-search__popular-item pv05 scale0'> <a class='nav-search__popular-link pangram white block theme__primary--hover color-transition' href='/?s=evolution'> Evolution<svg class='icon icon-s orange float-r icon-offset--lg' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </li> </ul> </nav> </div> </div> </div> </div> </div> </div> </div> </header> <main> <div id='postContent' class='post'> <div class='fixed fit-t fit-l fit-r z10 ' > <div class='nav__local fill-v z1 absolute fit-x is-hidden ' data-role='hidden-on-scroll'> <section class='outer header__inner flex fill-v relative'> <div class='header__group flex relative z1'> <a class='header__logo header__logo--local flex flex-items-center absolute fit-t fit-b theme__accent-hover' href='/'> <svg x="0px" y="0px" viewbox="0 0 56.7 49.5" enable-background="new 0 0 56.7 49.5" class="logo-mark " xmlns="http://www.w3.org/2000/svg"><path id="logo__mark__icon" class="c-1a1a1a" fill="currentColor" d="M28.4,5.9c1,0,1.9-0.8,1.9-1.9c0-1-0.8-1.9-1.9-1.9c-1,0-1.9,0.8-1.9,1.9C26.5,5.1,27.3,5.9,28.4,5.9z M28.4,43.6c-1,0-1.9,0.8-1.9,1.9c0,1,0.8,1.9,1.9,1.9c1,0,1.9-0.8,1.9-1.9C30.3,44.5,29.4,43.6,28.4,43.6z M10.9,33.3 c-0.5-0.1-1-0.1-1.4,0.2c-0.4,0.3-0.7,0.7-0.9,1.1c-0.1,0.5-0.1,1,0.2,1.4c0.4,0.6,1,0.9,1.6,0.9c0.3,0,0.6-0.1,0.9-0.3 c0.4-0.3,0.8-0.7,0.9-1.1c0.1-0.5,0.1-1-0.2-1.4C11.8,33.7,11.4,33.4,10.9,33.3z M46.8,12.6c-0.5-0.1-1-0.1-1.4,0.2 c-0.9,0.5-1.2,1.7-0.7,2.6c0.3,0.4,0.7,0.7,1.1,0.9c0.2,0,0.3,0.1,0.5,0.1c0.3,0,0.6-0.1,0.9-0.3c0.4-0.3,0.8-0.7,0.9-1.1 c0.1-0.5,0.1-1-0.2-1.4C47.7,13,47.3,12.7,46.8,12.6z M47.3,33.5c-0.4-0.3-0.9-0.3-1.4-0.2c-0.3,0.1-0.6,0.3-0.8,0.5l-3.4-2 c0.2-0.5,0.2-1,0.1-1.5c-0.2-0.7-0.6-1.2-1.2-1.6c-1.3-0.7-2.9-0.3-3.6,1c-0.4,0.6-0.4,1.3-0.3,2c0,0.1,0,0.1,0.1,0.2l-6.3,3.6 c-0.5-0.6-1.2-0.9-2-0.9c-0.8,0-1.5,0.4-2,0.9l-6.3-3.6c0-0.1,0-0.1,0.1-0.2c0.2-0.7,0.1-1.4-0.3-2c-0.4-0.6-0.9-1-1.6-1.2 c-0.1,0-0.1,0-0.2,0v-7.3c0.1,0,0.1,0,0.2,0c0.7-0.2,1.2-0.6,1.6-1.2c0.4-0.6,0.4-1.3,0.3-2c0-0.1,0-0.1-0.1-0.2l6.3-3.6 c0.5,0.6,1.2,0.9,2,0.9c1.5,0,2.6-1.2,2.6-2.6s-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6c0,0.3,0.1,0.6,0.2,0.9l-6.3,3.6 c-0.2-0.2-0.4-0.4-0.7-0.6c-0.6-0.4-1.3-0.4-2-0.3c-0.7,0.2-1.2,0.6-1.6,1.2c-0.7,1.3-0.3,2.9,1,3.6l0,0c0.3,0.1,0.5,0.2,0.8,0.3 v7.3c-0.3,0.1-0.6,0.1-0.8,0.3c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2c0.4,0.6,0.9,1,1.6,1.2c0.2,0.1,0.5,0.1,0.7,0.1 c0.5,0,0.9-0.1,1.3-0.4c0.3-0.1,0.5-0.3,0.7-0.6l6.3,3.6c-0.1,0.3-0.2,0.6-0.2,0.9c0,1.5,1.2,2.6,2.6,2.6s2.6-1.2,2.6-2.6 c0-0.3-0.1-0.6-0.2-0.9l6.3-3.6c0.2,0.2,0.4,0.4,0.7,0.6l0,0c0.4,0.2,0.9,0.4,1.3,0.4c0.7,0,1.5-0.3,2-0.9l3.4,2 c-0.1,0.3-0.1,0.6,0,1c0.1,0.5,0.4,0.9,0.9,1.1c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1c0.5-0.1,0.9-0.4,1.1-0.9 c0.3-0.4,0.3-0.9,0.2-1.4C48,34.2,47.7,33.7,47.3,33.5z M9.5,16c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1 c0.5-0.1,0.9-0.4,1.1-0.9c0.5-0.9,0.2-2.1-0.7-2.6c-0.9-0.5-2.1-0.2-2.6,0.7c-0.3,0.4-0.3,0.9-0.2,1.4C8.7,15.4,9,15.8,9.5,16z M15.7,2.8c0.7-0.4,0.9-1.3,0.5-2c-0.4-0.7-1.3-0.9-2-0.5c-0.7,0.4-0.9,1.3-0.5,2C14.1,2.9,15,3.2,15.7,2.8z M41.1,46.8 c-0.7,0.4-0.9,1.3-0.5,2c0.4,0.7,1.3,0.9,2,0.5c0.7-0.4,0.9-1.3,0.5-2C42.7,46.6,41.8,46.4,41.1,46.8z M15.7,46.8 c-0.7-0.4-1.6-0.2-2,0.5c-0.4,0.7-0.2,1.6,0.5,2c0.7,0.4,1.6,0.2,2-0.5C16.6,48.1,16.4,47.2,15.7,46.8z M41.1,2.8 c0.7,0.4,1.6,0.2,2-0.5c0.4-0.7,0.2-1.6-0.5-2c-0.7-0.4-1.6-0.2-2,0.5C40.1,1.4,40.4,2.3,41.1,2.8z M55.3,23.3 c-0.8,0-1.5,0.7-1.5,1.5c0,0.8,0.7,1.5,1.5,1.5c0.8,0,1.5-0.7,1.5-1.5C56.7,24,56.1,23.3,55.3,23.3z M1.5,23.3C0.7,23.3,0,24,0,24.8 c0,0.8,0.7,1.5,1.5,1.5s1.5-0.7,1.5-1.5C2.9,24,2.3,23.3,1.5,23.3z M39.1,21.2c0.4,0,0.9-0.1,1.3-0.4c1.3-0.7,1.7-2.3,1-3.6 c-0.7-1.3-2.3-1.7-3.6-1l0,0c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2C37.3,20.7,38.2,21.2,39.1,21.2z"></path></svg> <span class='screen-reader-text'>Home</span> </a> </div> <div class='header__divider flex mh075 relative text-gray-999'> </div> <div class='nav__local__left header__group flex relative flex-items-center'> <div class='ml025 h3 noe mv0' data-role='nav-local-title'> Undergraduate Upends a 40-Year-Old Data Science Conjecture </div> </div> <div class='nav__local__right header__group flex relative flex-items-center flex-auto flex-justify-end h5'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover ' data-name='comment-bubble' > <a href='https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class='o2'><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146421 https://www.quantamagazine.org/?p=146421'></span> </div> </a> </div> <span class='o-divider mh1 relative'></span> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146421' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 top-13-75'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> <span class='o-divider mh1 relative'></span> <div class='nav__local__share mr1 ph05 pv2 flex flex-items-center transition--color pointer relative theme__accent-hover'> <span class='__label flex flex-items-center absolute fit-t fit-b fit-r mr05'> <svg class='icon-l o2' x='0px' y='0px' viewbox='0 0 50 50' enable-background='new 0 0 50 50' xml:space='preserve' xmlns='http://www.w3.org/2000/svg'><path fill='currentColor' d='M41.9,34.2c-2.2,0-4.1,0.9-5.5,2.3L15.7,26.2c0.1-0.4,0.1-0.8,0.1-1.2c0-0.4,0-0.8-0.1-1.2l20.7-10.3 c1.4,1.4,3.4,2.3,5.5,2.3c4.2,0,7.7-3.4,7.7-7.7s-3.4-7.7-7.7-7.7c-4.2,0-7.7,3.4-7.7,7.7c0,0.4,0,0.8,0.1,1.2L13.6,19.7 c-1.4-1.4-3.4-2.3-5.5-2.3c-4.2,0-7.7,3.4-7.7,7.7c0,4.2,3.4,7.7,7.7,7.7c2.2,0,4.1-0.9,5.5-2.3l20.7,10.3c-0.1,0.4-0.1,0.8-0.1,1.2 c0,4.2,3.4,7.7,7.7,7.7c4.2,0,7.7-3.4,7.7-7.7C49.6,37.7,46.1,34.2,41.9,34.2L41.9,34.2z M41.9,34.2'></path></svg> <h6 class='uppercase kern mv0 ml1'>Share</h6> </span> <span class='__links flex flex-items-center absolute fit-x mxa'> <div data-id='social-links'> <div class='social-links social-links--share flex flex-justify-between'> <a href='http://www.facebook.com/sharer.php?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg></div> </a> <a href='https://twitter.com/share?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&text=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture&via=QuantaMagazine' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewBox='0 0 1200 1227' xmlns='http://www.w3.org/2000/svg'><path d='M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z' fill='currentColor'/></svg></div> </a> <a href='' class='social-links__link flex flex-items-center relative' data-function="copy"> <div class='q-tooltip hidden force-mobile-placement w-17-5 top-10-5 ml-n8-75'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern mv0'>Copied!</div> </div> </div> </div> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Copy link</title><g><path fill="currentColor" d="M20.6,38.5c-0.8,0-1.6,0.3-2.2,0.8L16,41.9c-1.1,1-2.4,1.6-3.9,1.6c-1.5,0-2.8-0.5-3.9-1.6c-0.5-0.5-0.9-1.1-1.2-1.8 c-0.3-0.7-0.4-1.4-0.4-2.1c0-0.7,0.1-1.4,0.4-2.1c0.3-0.7,0.7-1.2,1.2-1.8l9.1-9c1-0.9,2.2-1.8,3.8-2.7s3-0.7,4.3,0.7 c0.6,0.6,1.3,0.8,2.2,0.8s1.5-0.3,2.1-0.9c0.6-0.6,0.9-1.3,0.9-2.2s-0.3-1.6-0.9-2.2c-2.2-2.2-4.8-3.1-7.8-2.7 c-3,0.4-5.9,2-8.8,4.8l-9.2,9c-1.1,1.1-1.9,2.4-2.5,3.8C0.7,35,0.4,36.5,0.4,38c0,1.6,0.3,3,0.9,4.4c0.6,1.4,1.4,2.7,2.5,3.8 c1.1,1.1,2.4,2,3.8,2.5c1.4,0.6,2.9,0.8,4.4,0.8s2.9-0.3,4.3-0.8c1.4-0.6,2.7-1.4,3.8-2.5l2.5-2.5c0.6-0.6,0.9-1.3,0.9-2.1 s-0.3-1.6-0.9-2.2C22.1,38.8,21.4,38.5,20.6,38.5z"></path><path fill="currentColor" d="M48.7,7.9c-0.6-1.4-1.4-2.7-2.5-3.8c-2.4-2.4-5.1-3.6-8-3.7c-3-0.1-5.5,0.9-7.7,3.1l-3.1,3.1c-0.6,0.6-0.9,1.3-0.9,2.1 s0.3,1.6,0.9,2.2s1.3,0.9,2.2,0.9s1.6-0.3,2.2-0.8l3.1-3.1c1.2-1.1,2.4-1.5,3.7-1.3c1.3,0.3,2.5,0.9,3.4,1.9 c0.5,0.5,0.9,1.1,1.2,1.8c0.3,0.7,0.4,1.4,0.4,2.1c0,0.7-0.1,1.4-0.4,2.1c-0.3,0.7-0.7,1.2-1.2,1.8l-9.7,9.6 c-2.2,2.2-3.9,3.1-5.1,2.7s-2-0.8-2.4-1.3c-0.6-0.6-1.3-0.8-2.2-0.8s-1.5,0.3-2.1,0.9c-0.6,0.6-0.9,1.3-0.9,2.2s0.3,1.5,0.9,2.1 c1,1,2.1,1.8,3.2,2.3s2.4,0.7,3.6,0.7c1.5,0,3-0.4,4.6-1.1c1.6-0.7,3.1-1.9,4.6-3.4l9.8-9.6c1.1-1.1,1.9-2.4,2.5-3.8 c0.6-1.4,0.9-2.9,0.9-4.4C49.6,10.8,49.3,9.3,48.7,7.9z"></path></g></svg></div> </a> <a href="/cdn-cgi/l/email-protection#f4cb8781969e919780c9a19a9091869386959081958091dfa184919a9087df95dfc0c4d9ad919586d9bb9890dfb0958095dfa7979d919a9791dfb79b9a9e919780818691d2969b908dc9b5d48d9b819a93d4979b998481809186d487979d919a809d8780d4959a90d480839bd4979b9898919593819187d4879c9b83d4809c9580d487919586979c9187d4839d809c9d9ad490958095d487808681978081869187d4979598989190d49c95879cd4809596989187d497959ad49691d49981979cd4929587809186d4809c959ad4848691829d9b8187988dd4909191999190d4849b87879d969891daa89aa89a9c80808487cedbdb838383da8581959a8095999593958e9d9a91da9b8693db819a9091869386959081958091d98184919a9087d995d9c0c4d98d919586d99b9890d990958095d987979d919a9791d9979b9a9e919780818691d9c6c4c6c1c4c6c5c4db" class='social-links__link flex flex-items-center relative'> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Email</title><path fill="currentColor" d="M25,29.5l-5.2-4.3L1.8,43.8h46L30.1,25.2L25,29.5z M32.6,23.2l17.2,17.9c0-0.2,0.1-0.3,0.1-0.5c0-0.2,0-0.4,0-0.6V9.1 L32.6,23.2z M0,9.1v31c0,0.2,0,0.4,0,0.6s0.1,0.3,0.1,0.5l17.3-17.8L0,9.1z M48.4,6.2H1.6L25,25L48.4,6.2z"></path></svg></div> </a> </div> <div class='social-hide closed' data-function='toggle' data-name='social-show-more'> <div class='social-links social-links--share flex flex-justify-between'> <a href='https://getpocket.com/save?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&title=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Pocket</title><path fill="currentColor" d="M2.6,1.7C1.3,1.6,0.1,2.7,0,4.1c0,0.1,0,0.3,0,0.4v9.9c0,8.1,8,14.4,15,14.4c8-0.1,14.6-6.4,15-14.4v-10 c0.1-1.4-0.9-2.6-2.3-2.8c-0.2,0-0.4,0-0.5,0L2.6,1.7z M9,9.8l6,5.7l6-5.7c2.8-1.1,3.9,2,2.8,2.8L16,20.1c-0.6,0.3-1.3,0.3-1.9,0 l-7.9-7.5C5.2,11.5,6.5,8.4,9,9.8L9,9.8z"></path></svg></div> </a> <a href='https://www.reddit.com/submit?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="4 0 33 33" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Reddit</title><path fill="currentColor" d="M39.58,19.65A4.72,4.72,0,0,0,31.91,16a22.4,22.4,0,0,0-10.42-3.09l2-6.38,5.6,1.31a3.91,3.91,0,1,0,.43-2.08L23.05,4.27A1.08,1.08,0,0,0,21.79,5L19.26,12.9A22.6,22.6,0,0,0,8,16a4.68,4.68,0,1,0-5.56,7.51,8.32,8.32,0,0,0-.08,1.12c0,3.21,1.89,6.2,5.31,8.41a22.69,22.69,0,0,0,12.23,3.3A22.67,22.67,0,0,0,32.15,33c3.43-2.21,5.31-5.2,5.31-8.41a8.77,8.77,0,0,0-.06-1,4.65,4.65,0,0,0,2.18-3.93M33.05,5.8a1.78,1.78,0,1,1-1.8,1.78,1.79,1.79,0,0,1,1.8-1.78M11.52,22.53a2.71,2.71,0,0,1,2.69-2.66,2.65,2.65,0,1,1-2.69,2.66m14.93,7.73c-1.37,1.35-3.47,2-6.43,2h0c-3,0-5.06-.65-6.43-2a1.05,1.05,0,0,1,0-1.5,1.09,1.09,0,0,1,1.52,0c.94.93,2.54,1.38,4.91,1.38h0c2.37,0,4-.45,4.91-1.38a1.08,1.08,0,0,1,1.52,0,1.07,1.07,0,0,1,0,1.5m-.63-5.1a2.65,2.65,0,1,1,2.66-2.63,2.65,2.65,0,0,1-2.66,2.63" transform="translate(-0.42 -3.68)"></path></svg></div> </a> <a href='https://news.ycombinator.com/submitlink?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&t=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Ycombinator</title><path fill="currentColor" d="M12.9,18L3.2-0.1h4.4l5.7,11.5l0.3,0.6c0.1,0.2,0.2,0.4,0.3,0.7c0,0.1,0,0.2,0,0.2v0.2l0.4,0.9l0.5,0.7 l0.8-1.6l0.9-1.8l5.8-11.5h4.1l-9.8,18.3v11.7h-3.7V18z"></path></svg></div> </a> <a href='https://bsky.app/intent/compose?text=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewbox='0 0 600 530' version='1.1' xmlns='http://www.w3.org/2000/svg'><path d='m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z' fill='currentColor'/></svg></div> </a> </div> </div> <div class='flex flex-justify-center social-more' data-function='trigger' data-name='social-show-more'> <svg class="ml05 icon icon-offset closed" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M15,20.7c-0.1,0-0.3,0-0.4-0.1L0.3,10.7l0.9-1.2L15,19l13.8-9.5l0.9,1.2l-14.3,9.8C15.3,20.6,15.1,20.7,15,20.7 z"></path></svg> </div> </div> </span> </div> </div> <div class='nav__local__mobile flex-auto flex-justify-end fill-v'> <div class='nav__local__menu flex flex-items-center flex-justify-end fill-v'> <li class='flex flex-items-center mh05 relative'> <div class='header__hamburger'> <button class='hamburger hamburger--dots block z10 relative theme__accent mha' data-function='trigger' data-name='nav-local-dropdown'> <span class='hamburger__bar absolute fit-x mxa'></span> <span class='hamburger__bar absolute fit-x mxa'></span> <span class='hamburger__bar absolute fit-x mxa'></span> </button> </div> </li> </div> </div> </section> <ul class='nav__local__dropdown absolute fit-b fit-r bg-white' data-function='toggle' data-name='nav-local-dropdown'> <li class='__link flex flex-items-center flex-justify-start'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover h5' data-name='comment-bubble' > <a href='#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class='o2'><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146421 https://www.quantamagazine.org/?p=146421'></span> </div> <div class='uppercase kern ml05 mv0 h6t'>Comments</div> </a> </div> </li> <li class='__link flex flex-items-center flex-justify-start'> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146421' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> <div class='h6t uppercase kern ml1 mv0 theme__text'> Read Later </div> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 -top-10'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow -bottom-3'></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> </li> </ul> <div class='nav__local__progress absolute fit-b fit-l fit-r z1 theme__accent'> <span class='block' style='transform: translateX(-100%);' data-role='content-progress-bar'></span> </div> </div> </div> <div id='postBody' class='theme__background-background theme__text'> <section class='post__title__wrapper relative '> <section class='outer fill-h relative outer--content '> <div class='mha container--s'> <div class='header-spacer'></div> <div class='post__title pv1 scale1 mha'> <div class='scale0'> <div class='mb1 pb025 mt0 h6t post__title__kicker '> <a class="kicker theme__accent theme__text-hover uppercase" href="/tag/algorithms/">algorithms</a> </div> <h1 class='post__title__title mv025 noe theme__text' >Undergraduate Upends a 40-Year-Old Data Science Conjecture</h1> <div class='post__title__author-date h5 mt1'> <div class='byline relative flex flex-items-start merriweather mv025 mr1 gray3 h6t theme__text-hover'> <em class='byline__by gray4 mr075'>By </em> <a href='https://www.quantamagazine.org/authors/nadis_steven/'> <span class='byline__author uppercase kern light small'>Steve Nadis</span> </a> </div> <p class="h6 mv1 pv025 o6"><em>February 10, 2025</em></p> </div> <div class='post__title__meta flex flex-wrap flex-items-start'> <div class='post__title__excerpt wysiwyg p italic mb1 mt025 pr2 o4 theme__text ' > A young computer scientist and two colleagues show that searches within data structures called hash tables can be much faster than previously deemed possible. </div> <div class='post__title__actions h5 mt025 flex-auto flex flex-items-center'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover h5 theme__accent' data-name='comment-bubble' > <a href='#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class=''><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146421 https://www.quantamagazine.org/?p=146421'></span> </div> </a> </div> <span class='o-divider mh075 relative'></span> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146421' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 -top-10'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow -bottom-3'></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </section> </section> <figure class='leading-0 w-full my-0 mx-auto flex items-center justify-center flex-col max-w-img-large py-0 px-0 l:px-0 l:mb-20'> <div class='w-full flex justify-center max-w-mod-large m:max-w-unset image--module s:flex-col s:m-auto'> <div class='w-auto mr-2 last:mr-0 s:m-0 s:flex s:flex-col flex-1'> <img width="2560" height="1440" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede.webp" class="mb-6 w-full s:mb-4" alt="A tool chest with a tray full of different sized arrows against a red-orange backdrop." decoding="async" fetchpriority="high" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede.webp 2560w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede-1720x968.webp 1720w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede-520x293.webp 520w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede-768x432.webp 768w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede-1536x864.webp 1536w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Hash-Tables-Redux_cr_Nash-Weerasekera-Lede-2048x1152.webp 2048w" sizes="(max-width: 2560px) 100vw, 2560px" /> </div> </div> <figcaption class='block my-0 mx-auto w-full'> <section class='py-0 px-12 s:p-0 m:px-16'> <div class='w-full my-0 mx-auto flex flex-col s:mx-5 s:w-full-minus-25 s:max-w-mod-inline m:max-w-mod-inline l:flex-row l:max-w-mod-large justify-end s:mb-4'> <div class='caption wysiwyg h5 theme__anchors--solid fill-h w-auto l:w-140'> <p>“Tiny pointers,” which show the way to a piece of stored data, inspired the creation of a new kind of faster hash table.</p> </div> <div class='attribution theme__anchors--solid wysiwyg pangram h6 mb1 fill-h text-left w-auto before:block l:before:hidden l:w-half-minus-17 l:text-right l:pl-24'> <p>Nash Weerasekera for <em>Quanta Magazine</em></p> </div> </div> </section> </figcaption> </figure> <div class='acf-content scale1 mt2'> <h2 class='screen-reader-text'>Introduction</h2> <div class='post__wrapper scale0 show-dropcap'> <div class='mha container--m'> <div class='post__content relative flex flex-items-start flex-justify-between'> <aside class='post__sidebar hide flex flex-justify-center '> <div class='post__sidebar__content'> <div class='post__sidebar__content__inner'> <div class='align-c mb075'> <div class='sidebar__author'> <a class='theme__accent-hover transition--color ' href='https://www.quantamagazine.org/authors/nadis_steven/'> <div class='sidebar__author__avatar mha mb1'> <div class='image mx0 relative image--circle '> <div class='image__inner absolute fit-x is-loaded'> <img width="1654" height="1720" src="https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1654x1720.jpg" class="absolute fit-x fill-h fill-v mxa" alt="" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1654x1720.jpg 1654w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-500x520.jpg 500w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-768x798.jpg 768w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1477x1536.jpg 1477w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1970x2048.jpg 1970w" sizes="(max-width: 1654px) 100vw, 1654px" /> </div> </div> </div> <div class='h3t mv05'> <span class='screen-reader-text'>By </span>Steve Nadis </div> <p class="o8 theme__text h5 mt05 mb1"><em>Contributing Writer</em></p> </a> </div> <hr class='mb075 o1'> <p class="h6 mv1 pv025 o6"><em>February 10, 2025</em></p> </div> <form action='https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210' method='get' class='sidebar__actions'> <hr class='mt075 mb1 o1'> <input type='hidden' id='print' name='print' value='1' /> <button type="submit" class='h6 pangram uppercase mv05 pb1 bold kern flex flex-items-center flex-justify-between sidebar__print transition--color theme__accent-hover'> <small>View PDF/Print Mode</small> <svg class="icon-l theme__accent ml05" viewbox="0 0 50 50" enable-background="new 0 0 50 50"><path fill="currentColor" d="M39.9,27.5h4.9v22.4H0.1V5.1h22.4V10H5v35h35V27.5z M49.8,0.1h-2.4h-1H33.8V5h7.6L20.7,25.8l3.4,3.4L45,8.4v7.7h4.9V2.6L49.8,0.1z"></path></svg> </button> </form> <div class='mt1 pt05 sidebar__tag-wrap'> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/algorithms'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>algorithms</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/computer-science'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>computer science</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/data'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>data</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative theme__accent w-full' href='/topics'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text-hover transition--color relative'>All topics</span> <svg class='icon ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </div> </div> <div class='sidebar__poster'> <a href='https://www.quantabooks.org/' title='' target='_blank' class=''> <img width="640" height="1100" src="https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1.png" class="fill-h" alt="" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1.png 640w, https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1-303x520.png 303w" sizes="(max-width: 640px) 100vw, 640px" /></a> </div> </div> </aside> <section class='outer mha js-router-anchors outer--content'> <div class='flex-auto mha container--xs '> <div class='post__content__section wysiwyg p theme__anchors--underline' data-role='selectable'> <div class='post__content wysiwyg p theme__anchors--underline '> <p>Sometime in the fall of 2021, Andrew Krapivin, an undergraduate at Rutgers University, encountered a paper that would change his life. At the time, Krapivin didn’t give it much thought. But two years later, when he finally set aside time to go through the paper (“just for fun,” as he put it), his efforts would lead to a rethinking of a widely used tool in computer science.</p> <p>The paper’s title, “<a href="https://arxiv.org/abs/2111.12800">Tiny Pointers</a>,” referred to arrowlike entities that can direct you to a piece of information, or element, in a computer’s memory. Krapivin soon came up with a potential way to further miniaturize the pointers so they consumed less memory. However, to achieve that, he needed a better way of organizing the data that the pointers would point to.</p> <p>He turned to a common approach for storing data known as a hash table. But in the midst of his tinkering, Krapivin realized that he had invented a new kind of hash table, one that worked faster than expected — taking less time and fewer steps to find specific elements.</p> <p><a href="https://engineering.nyu.edu/faculty/martin-farach-colton">Martín Farach-Colton</a>, a co-author of the “Tiny Pointers” paper and Krapivin’s former professor at Rutgers, was initially skeptical of Krapivin’s new design. Hash tables are among the most thoroughly studied data structures in all of computer science; the advance sounded too good to be true. But just to be sure, he asked a frequent collaborator (and a “Tiny Pointers” co-author), <a href="https://csd.cmu.edu/people/faculty/william-kuszmaul">William Kuszmaul</a> of Carnegie Mellon University, to check out his student’s invention. Kuszmaul had a different reaction. “You didn’t just come up with a cool hash table,” he remembers telling Krapivin. “You’ve actually completely wiped out a 40-year-old conjecture!”</p> </div> </div> </div> </section> <aside class='post__sidebar hide flex flex-justify-center theme__anchors--solid '> <div class='post__sidebar__content'> <div class='post__sidebar__content__inner'> <div class='h3t mt0'> Share this article </div> <div data-id='social-links'> <div class='social-links social-links--share flex flex-justify-between'> <a href='http://www.facebook.com/sharer.php?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg></div> </a> <a href='https://twitter.com/share?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&text=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture&via=QuantaMagazine' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewBox='0 0 1200 1227' xmlns='http://www.w3.org/2000/svg'><path d='M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z' fill='currentColor'/></svg></div> </a> <a href='' class='social-links__link flex flex-items-center relative' data-function="copy"> <div class='q-tooltip hidden force-mobile-placement w-17-5 top-10-5 ml-n8-75'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern mv0'>Copied!</div> </div> </div> </div> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Copy link</title><g><path fill="currentColor" d="M20.6,38.5c-0.8,0-1.6,0.3-2.2,0.8L16,41.9c-1.1,1-2.4,1.6-3.9,1.6c-1.5,0-2.8-0.5-3.9-1.6c-0.5-0.5-0.9-1.1-1.2-1.8 c-0.3-0.7-0.4-1.4-0.4-2.1c0-0.7,0.1-1.4,0.4-2.1c0.3-0.7,0.7-1.2,1.2-1.8l9.1-9c1-0.9,2.2-1.8,3.8-2.7s3-0.7,4.3,0.7 c0.6,0.6,1.3,0.8,2.2,0.8s1.5-0.3,2.1-0.9c0.6-0.6,0.9-1.3,0.9-2.2s-0.3-1.6-0.9-2.2c-2.2-2.2-4.8-3.1-7.8-2.7 c-3,0.4-5.9,2-8.8,4.8l-9.2,9c-1.1,1.1-1.9,2.4-2.5,3.8C0.7,35,0.4,36.5,0.4,38c0,1.6,0.3,3,0.9,4.4c0.6,1.4,1.4,2.7,2.5,3.8 c1.1,1.1,2.4,2,3.8,2.5c1.4,0.6,2.9,0.8,4.4,0.8s2.9-0.3,4.3-0.8c1.4-0.6,2.7-1.4,3.8-2.5l2.5-2.5c0.6-0.6,0.9-1.3,0.9-2.1 s-0.3-1.6-0.9-2.2C22.1,38.8,21.4,38.5,20.6,38.5z"></path><path fill="currentColor" d="M48.7,7.9c-0.6-1.4-1.4-2.7-2.5-3.8c-2.4-2.4-5.1-3.6-8-3.7c-3-0.1-5.5,0.9-7.7,3.1l-3.1,3.1c-0.6,0.6-0.9,1.3-0.9,2.1 s0.3,1.6,0.9,2.2s1.3,0.9,2.2,0.9s1.6-0.3,2.2-0.8l3.1-3.1c1.2-1.1,2.4-1.5,3.7-1.3c1.3,0.3,2.5,0.9,3.4,1.9 c0.5,0.5,0.9,1.1,1.2,1.8c0.3,0.7,0.4,1.4,0.4,2.1c0,0.7-0.1,1.4-0.4,2.1c-0.3,0.7-0.7,1.2-1.2,1.8l-9.7,9.6 c-2.2,2.2-3.9,3.1-5.1,2.7s-2-0.8-2.4-1.3c-0.6-0.6-1.3-0.8-2.2-0.8s-1.5,0.3-2.1,0.9c-0.6,0.6-0.9,1.3-0.9,2.2s0.3,1.5,0.9,2.1 c1,1,2.1,1.8,3.2,2.3s2.4,0.7,3.6,0.7c1.5,0,3-0.4,4.6-1.1c1.6-0.7,3.1-1.9,4.6-3.4l9.8-9.6c1.1-1.1,1.9-2.4,2.5-3.8 c0.6-1.4,0.9-2.9,0.9-4.4C49.6,10.8,49.3,9.3,48.7,7.9z"></path></g></svg></div> </a> <a href="/cdn-cgi/l/email-protection#17286462757d7274632a427973726570657673627663723c4267727973643c763c23273a4e7276653a587b733c537663763c44747e727974723c5478797d727463626572317578736e2a56376e786279703774787a67626372653764747e7279637e646337767973376360783774787b7b72767062726437647f786037637f76633764727665747f726437607e637f7e79377376637637646365627463626572643774767b7b7273377f76647f376376757b726437747679377572377a62747f3771766463726537637f767937676572617e7862647b6e377372727a727337677864647e757b72394b794b797f636367642d3838606060396662767963767a7670766d7e79723978657038627973726570657673627663723a6267727973643a763a23273a6e7276653a787b733a737663763a64747e727974723a7478797d7274636265723a252725222725262738" class='social-links__link flex flex-items-center relative'> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Email</title><path fill="currentColor" d="M25,29.5l-5.2-4.3L1.8,43.8h46L30.1,25.2L25,29.5z M32.6,23.2l17.2,17.9c0-0.2,0.1-0.3,0.1-0.5c0-0.2,0-0.4,0-0.6V9.1 L32.6,23.2z M0,9.1v31c0,0.2,0,0.4,0,0.6s0.1,0.3,0.1,0.5l17.3-17.8L0,9.1z M48.4,6.2H1.6L25,25L48.4,6.2z"></path></svg></div> </a> </div> <div class='social-hide closed' data-function='toggle' data-name='social-show-more'> <div class='social-links social-links--share flex flex-justify-between'> <a href='https://getpocket.com/save?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&title=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Pocket</title><path fill="currentColor" d="M2.6,1.7C1.3,1.6,0.1,2.7,0,4.1c0,0.1,0,0.3,0,0.4v9.9c0,8.1,8,14.4,15,14.4c8-0.1,14.6-6.4,15-14.4v-10 c0.1-1.4-0.9-2.6-2.3-2.8c-0.2,0-0.4,0-0.5,0L2.6,1.7z M9,9.8l6,5.7l6-5.7c2.8-1.1,3.9,2,2.8,2.8L16,20.1c-0.6,0.3-1.3,0.3-1.9,0 l-7.9-7.5C5.2,11.5,6.5,8.4,9,9.8L9,9.8z"></path></svg></div> </a> <a href='https://www.reddit.com/submit?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="4 0 33 33" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Reddit</title><path fill="currentColor" d="M39.58,19.65A4.72,4.72,0,0,0,31.91,16a22.4,22.4,0,0,0-10.42-3.09l2-6.38,5.6,1.31a3.91,3.91,0,1,0,.43-2.08L23.05,4.27A1.08,1.08,0,0,0,21.79,5L19.26,12.9A22.6,22.6,0,0,0,8,16a4.68,4.68,0,1,0-5.56,7.51,8.32,8.32,0,0,0-.08,1.12c0,3.21,1.89,6.2,5.31,8.41a22.69,22.69,0,0,0,12.23,3.3A22.67,22.67,0,0,0,32.15,33c3.43-2.21,5.31-5.2,5.31-8.41a8.77,8.77,0,0,0-.06-1,4.65,4.65,0,0,0,2.18-3.93M33.05,5.8a1.78,1.78,0,1,1-1.8,1.78,1.79,1.79,0,0,1,1.8-1.78M11.52,22.53a2.71,2.71,0,0,1,2.69-2.66,2.65,2.65,0,1,1-2.69,2.66m14.93,7.73c-1.37,1.35-3.47,2-6.43,2h0c-3,0-5.06-.65-6.43-2a1.05,1.05,0,0,1,0-1.5,1.09,1.09,0,0,1,1.52,0c.94.93,2.54,1.38,4.91,1.38h0c2.37,0,4-.45,4.91-1.38a1.08,1.08,0,0,1,1.52,0,1.07,1.07,0,0,1,0,1.5m-.63-5.1a2.65,2.65,0,1,1,2.66-2.63,2.65,2.65,0,0,1-2.66,2.63" transform="translate(-0.42 -3.68)"></path></svg></div> </a> <a href='https://news.ycombinator.com/submitlink?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&t=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Ycombinator</title><path fill="currentColor" d="M12.9,18L3.2-0.1h4.4l5.7,11.5l0.3,0.6c0.1,0.2,0.2,0.4,0.3,0.7c0,0.1,0,0.2,0,0.2v0.2l0.4,0.9l0.5,0.7 l0.8-1.6l0.9-1.8l5.8-11.5h4.1l-9.8,18.3v11.7h-3.7V18z"></path></svg></div> </a> <a href='https://bsky.app/intent/compose?text=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewbox='0 0 600 530' version='1.1' xmlns='http://www.w3.org/2000/svg'><path d='m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z' fill='currentColor'/></svg></div> </a> </div> </div> <div class='flex flex-justify-center social-more' data-function='trigger' data-name='social-show-more'> <svg class="ml05 icon icon-offset closed" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M15,20.7c-0.1,0-0.3,0-0.4-0.1L0.3,10.7l0.9-1.2L15,19l13.8-9.5l0.9,1.2l-14.3,9.8C15.3,20.6,15.1,20.7,15,20.7 z"></path></svg> </div> </div> <div class='sidebar__newsletter'> <div class='pv05'> <hr class='o2 mv1'> </div> <div class='h3t mv0'> Newsletter </div> <p class='scale5 o4 mb1 mt025'> <em>Get Quanta Magazine delivered to your inbox</em> </p> </div> <div class='theme__text theme__accent-hover mb05'> <a href='#newsletter'> <button class='button pangram bold scale5 fill-h'>Subscribe now</button> </a> </div> <a href='http://us1.campaign-archive2.com/home/?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' class='pangram h5 relative' target='_blank'> <small class='flex flex-items-center'> <span>Recent newsletters</span> <svg class='icon ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </small> </a> </div> </div> </aside> </div> </div> </div> </div> <figure class='leading-0 w-full my-0 mx-auto flex items-center justify-center flex-col max-w-img-regular py-0 px-0 l:px-0 '> <div class='w-full flex justify-center max-w-mod-regular m:max-w-unset image--module s:flex-col s:m-auto'> <div class='w-auto mr-2 last:mr-0 s:m-0 s:flex s:flex-col flex-1'> <img width="2560" height="1772" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-scaled.webp" class="mb-6 w-full s:mb-4" alt="Andrew Krapivin in a black T-shirt and checkered flannel shirt stands outside" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-scaled.webp 2560w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-1720x1191.webp 1720w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-520x360.webp 520w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-768x532.webp 768w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-1536x1063.webp 1536w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Posing-2048x1418.webp 2048w" sizes="(max-width: 2560px) 100vw, 2560px" /> </div> </div> <figcaption class='block my-0 mx-auto w-full l:max-w-mod-inline'> <section class='p-0 m:py-0 m:px-16'> <div class='w-full my-0 mx-auto flex flex-col s:mx-5 s:w-full-minus-25 s:max-w-mod-inline m:max-w-mod-inline l:m-0 l:p-0 max-w-mod-inline s:mb-4'> <div class='caption wysiwyg h5 theme__anchors--solid fill-h '> <p>Without setting out to do so, Andrew Krapivin upended the common thinking around hash tables — one of the best-studied tools in computer science.</p> </div> <div class='attribution theme__anchors--solid wysiwyg pangram h6 mb1 fill-h '> <p>Phillip Ammon for <em>Quanta Magazine</em></p> </div> </div> </section> </figcaption> </figure> <div class='acf-content scale1 mt2'> <section class='outer mha js-router-anchors outer--content'> <div class='flex-auto mha container--xs '> <div class='post__content__section wysiwyg p theme__anchors--underline' data-role='selectable'> <div class='post__content wysiwyg p theme__anchors--underline '> <p>Together, Krapivin (now a graduate student at the University of Cambridge), Farach-Colton (now at New York University) and Kuszmaul demonstrated in a <a href="https://arxiv.org/abs/2501.02305">January 2025 paper</a> that this new hash table can indeed find elements faster than was considered possible. ln so doing, they had disproved a conjecture long held to be true.</p> <p>“It’s an important paper,” said <a href="https://ajhconway.com/">Alex Conway</a> of Cornell Tech in New York City. “Hash tables are among the oldest data structures we have. And they’re still one of the most efficient ways to store data.” Yet open questions remain about how they work, he said. “This paper answers a couple of them in surprising ways.”</p> <p>Hash tables have become ubiquitous in computing, partly because of their simplicity and ease of use. They’re designed to allow users to do exactly three things: “query” (search for) an element, delete an element, or insert one into an empty slot. The first hash tables date back to the early 1950s, and computer scientists have studied and used them ever since. Among other things, researchers wanted to figure out the speed limits for some of these operations. How fast, for example, could a new search or insertion possibly be?</p> <aside class="post__aside mb2 relative post__aside--right"><figure class='mb2 mt1 image--shortcode s:mt-0'> <div class='relative image mx0'> <img width="1298" height="1571" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/Martin-Farach-Colton_crAndrew-Farach-Colton.webp" class="block fit-x fill-h fill-v is-loaded mxa large-print-img vertical" alt="Martín Farach-Colton in a gray shirt stands in front of green plants" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/02/Martin-Farach-Colton_crAndrew-Farach-Colton.webp 1298w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Martin-Farach-Colton_crAndrew-Farach-Colton-430x520.webp 430w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Martin-Farach-Colton_crAndrew-Farach-Colton-768x930.webp 768w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Martin-Farach-Colton_crAndrew-Farach-Colton-1269x1536.webp 1269w" sizes="(max-width: 1298px) 100vw, 1298px" /> </div> <figcaption class='image__meta mt1'> <div class='caption wysiwyg h5 theme__anchors--solid fill-h post__aside__caption post__aside__caption--shortcode'> <p>Martín Farach-Colton helped Krapivin prove that his new hash table contradicted a longstanding conjecture.</p> </div> <div class='attribution theme__anchors--solid wysiwyg pangram h6 mb1 fill-h post__aside__attribution'> <p>Andrew Farach-Colton</p> </div> </figcaption> </figure> </aside> <p>The answer generally depends on the amount of time it takes to find an empty spot in a hash table. This, in turn, typically depends on how full the hash table is. Fullness can be described in terms of an overall percentage — this table is 50% full, that one’s 90% — but researchers often deal with much fuller tables. So instead, they may use a whole number, denoted by <em>x</em>, to specify how close the hash table is to 100% full. If <em>x</em> is 100, then the table is 99% full. If <em>x</em> is 1,000, the table is 99.9% full. This measure of fullness offers a convenient way to evaluate how long it should take to perform actions like queries or insertions.<strong> </strong></p> <p>Researchers have long known that for certain common hash tables, the expected time required to make the worst possible insertion — putting an item into, say, the last remaining open spot — is proportional to <em>x</em>. “If your hash table is 99% full,” Kuszmaul said, “it makes sense that you would have to look at around 100 different positions to find a free slot.”</p> <p>In a <a href="https://dl.acm.org/doi/10.1145/3828.3836">1985 paper</a>, the computer scientist <a href="https://amturing.acm.org/award_winners/yao_1611524.cfm">Andrew Yao</a>, who would go on to win the A.M. Turing Award, asserted that among hash tables with a specific set of properties, the best way to find an individual element or an empty spot is to just go through potential spots randomly — an approach known as uniform probing. He also stated that, in the worst-case scenario, where you’re searching for the last remaining open spot, you can never do better than <em>x</em>. for 40 years, most computer scientists assumed that Yao’s conjecture was true.</p> <p>Krapivin was not held back by the conventional wisdom for the simple reason that he was unaware of it. “I did this without knowing about Yao’s conjecture,” he said. His explorations with tiny pointers led to a new kind of hash table — one that did not rely on uniform probing. And for this new hash table, the time required for worst-case queries and insertions is proportional to (log <em>x</em>)<sup>2</sup> — far faster than <em>x</em>. This result directly contradicted Yao’s conjecture. Farach-Colton and Kuszmaul helped Krapivin show that (log <em>x</em>)<sup>2</sup> is the optimal, unbeatable bound for the popular class of hash tables Yao had written about.</p> <p>“This result is beautiful in that it addresses and solves such a classic problem,” said <a href="http://www.cs.cmu.edu/~guyb/">Guy Blelloch</a> of Carnegie Mellon.</p> <p>“It’s not just that they disproved [Yao’s conjecture], they also found the best possible answer to his question,” said <a href="https://cs.uwaterloo.ca/about/people/sassadi">Sepehr Assadi</a> of the University of Waterloo. “We could have gone another 40 years before we knew the right answer.”</p> </div> </div> </div> </section> </div> <figure class='leading-0 w-full my-0 mx-auto flex items-center justify-center flex-col max-w-img-large py-0 px-0 l:px-0 '> <div class='w-full flex justify-center max-w-mod-large m:max-w-unset image--module s:flex-col s:m-auto'> <div class='w-auto mr-2 last:mr-0 s:m-0 s:flex s:flex-col flex-1'> <img width="2560" height="1621" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-scaled.webp" class="mb-6 w-full s:mb-4" alt="Andrew Krapivin in a blue checkered shirt leans on a bridge in front of impressive school buildings" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-scaled.webp 2560w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-1720x1089.webp 1720w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-520x329.webp 520w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-768x486.webp 768w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-1536x973.webp 1536w, https://www.quantamagazine.org/wp-content/uploads/2025/02/Andrew-Krapivin-cr.PhilippAmmon-Bridge-2048x1297.webp 2048w" sizes="(max-width: 2560px) 100vw, 2560px" /> </div> </div> <figcaption class='block my-0 mx-auto w-full'> <section class='py-0 px-12 s:p-0 m:px-16'> <div class='w-full my-0 mx-auto flex flex-col s:mx-5 s:w-full-minus-25 s:max-w-mod-inline m:max-w-mod-inline l:flex-row l:max-w-mod-large justify-end s:mb-4'> <div class='caption wysiwyg h5 theme__anchors--solid fill-h w-auto l:w-140'> <p>Krapivin on the King’s College Bridge at the University of Cambridge. His new hash table can find and store data faster than researchers ever thought possible.</p> </div> <div class='attribution theme__anchors--solid wysiwyg pangram h6 mb1 fill-h text-left w-auto before:block l:before:hidden l:w-half-minus-17 l:text-right l:pl-24'> <p>Phillip Ammon for <em>Quanta Magazine</em></p> </div> </div> </section> </figcaption> </figure> <div class='acf-content scale1 mt2'> <section class='outer mha js-router-anchors outer--content'> <div class='flex-auto mha container--xs '> <div class='post__content__section wysiwyg p theme__anchors--underline' data-role='selectable'> <div class='post__content wysiwyg p theme__anchors--underline '> <p>In addition to refuting Yao’s conjecture, the new paper also contains what many consider an even more astonishing result. It pertains to a related, though slightly different, situation: In 1985, Yao looked not only at the worst-case times for queries, but also at the average time taken across all possible queries. He proved that hash tables with certain properties — including those that are labeled “greedy,” which means that new elements must be placed in the first available spot — could never achieve an average time better than log <em>x</em>.</p> <div class="related-list"> <aside class="post__aside mb2 relative hide-on-print post__aside--right"> <h2 class="mv0 h5 bold uppercase kern">Related:</h2> <hr class="mt1 o2"> <ol class="post__aside__list theme__anchors--none pt05"> <li class="mv075 flex"> <h3 class="h5t mt0 mb025 medium"> <a class="theme__accent theme__text-hover" href="https://www.quantamagazine.org/scientists-find-optimal-balance-of-data-storage-and-time-20240208/"> <span class="' . $span_class . '">Scientists Find Optimal Balance of Data Storage and Time</span> </a> </h3> </li> <li class="mv075 flex"> <h3 class="h5t mt0 mb025 medium"> <a class="theme__accent theme__text-hover" href="https://www.quantamagazine.org/new-book-sorting-algorithm-almost-reaches-perfection-20250124/"> <span class="' . $span_class . '">New Book-Sorting Algorithm Almost Reaches Perfection</span> </a> </h3> </li> <li class="mv075 flex"> <h3 class="h5t mt0 mb025 medium"> <a class="theme__accent theme__text-hover" href="https://www.quantamagazine.org/researchers-approach-new-speed-limit-for-seminal-problem-20240129/"> <span class="' . $span_class . '">Researchers Approach New Speed Limit for Seminal Problem</span> </a> </h3> </li> <li class="mv075 flex"> <h3 class="h5t mt0 mb025 medium"> <a class="theme__accent theme__text-hover" href="https://www.quantamagazine.org/computer-scientists-invent-an-efficient-new-way-to-count-20240516/"> <span class="' . $span_class . '">Computer Scientists Invent an Efficient New Way to Count</span> </a> </h3> </li> </ol> </aside> </div> <p>Farach-Colton, Krapivin and Kuszmaul wanted to see if that same limit also applied to non-greedy hash tables. They showed that it did not by providing a counterexample, a non-greedy hash table with an average query time that’s much, much better than log <em>x</em>. In fact, it doesn’t depend on <em>x</em> at all. “You get a number,” Farach-Colton said, “something that is just a constant and doesn’t depend on how full the hash table is.” The fact that you can achieve a constant average query time, regardless of the hash table’s fullness, was wholly unexpected — even to the authors themselves.</p> <p>The team’s results may not lead to any immediate applications, but that’s not all that matters, Conway said. “It’s important to understand these kinds of data structures better. You don’t know when a result like this will unlock something that lets you do better in practice.”</p> </div> </div> </div> </section> </div> <div class='pv2'></div> <div class='post__footer'> <div class='mha container--m'> <div class='flex flex-wrap flex-items-stretch'> <div class='post__footer__col fill-h pv2 flex flex-items-center flex-justify-center'> <section class='outer'> <aside class='post__sidebar hide flex flex-justify-center post__sidebar--footer'> <div class='post__sidebar__content'> <div class='post__sidebar__content__inner'> <div class='align-c mb075'> <div class='sidebar__author'> <a class='theme__accent-hover transition--color ' href='https://www.quantamagazine.org/authors/nadis_steven/'> <div class='sidebar__author__avatar mha mb1'> <div class='image mx0 relative image--circle '> <div class='image__inner absolute fit-x is-loaded'> <img width="1654" height="1720" src="https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1654x1720.jpg" class="absolute fit-x fill-h fill-v mxa" alt="" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1654x1720.jpg 1654w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-500x520.jpg 500w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-768x798.jpg 768w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1477x1536.jpg 1477w, https://www.quantamagazine.org/wp-content/uploads/2023/01/nadis-1970x2048.jpg 1970w" sizes="(max-width: 1654px) 100vw, 1654px" /> </div> </div> </div> <div class='h3t mv05'> <span class='screen-reader-text'>By </span>Steve Nadis </div> <p class="o8 theme__text h5 mt05 mb1"><em>Contributing Writer</em></p> </a> </div> <hr class='mb075 o1'> <p class="h6 mv1 pv025 o6"><em>February 10, 2025</em></p> </div> <form action='https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210' method='get' class='sidebar__actions'> <hr class='mt075 mb1 o1'> <input type='hidden' id='print' name='print' value='1' /> <button type="submit" class='h6 pangram uppercase mv05 pb1 bold kern flex flex-items-center flex-justify-between sidebar__print transition--color theme__accent-hover'> <small>View PDF/Print Mode</small> <svg class="icon-l theme__accent ml05" viewbox="0 0 50 50" enable-background="new 0 0 50 50"><path fill="currentColor" d="M39.9,27.5h4.9v22.4H0.1V5.1h22.4V10H5v35h35V27.5z M49.8,0.1h-2.4h-1H33.8V5h7.6L20.7,25.8l3.4,3.4L45,8.4v7.7h4.9V2.6L49.8,0.1z"></path></svg> </button> </form> <div class='mt1 pt05 sidebar__tag-wrap'> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/algorithms'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>algorithms</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/computer-science'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>computer science</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative float-left' href='/tag/data'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text theme__accent-hover transition--color relative'>data</span></a> <a class='sidebar__tag h6 pangram medium inline-block mb0 relative theme__accent w-full' href='/topics'> <span class='absolute fit-x theme__text-background o1'></span> <span class='theme__text-hover transition--color relative'>All topics</span> <svg class='icon ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </a> </div> </div> <div class='sidebar__poster'> <a href='https://www.quantabooks.org/' title='' target='_blank' class=''> <img width="640" height="1100" src="https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1.png" class="fill-h" alt="" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1.png 640w, https://www.quantamagazine.org/wp-content/uploads/2025/01/D-Article-Qbooks-Jan2025-1-303x520.png 303w" sizes="(max-width: 640px) 100vw, 640px" /></a> </div> </div> </aside> </section> </div> <div class='post__footer__col fill-h pv2 flex flex-items-center flex-justify-center'> <section class='outer fill-h'> <aside class='post__sidebar hide flex flex-justify-center theme__anchors--solid post__sidebar--footer'> <div class='post__sidebar__content'> <div class='post__sidebar__content__inner'> <div class='h3t mt0'> Share this article </div> <div data-id='social-links'> <div class='social-links social-links--share flex flex-justify-between'> <a href='http://www.facebook.com/sharer.php?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg></div> </a> <a href='https://twitter.com/share?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&text=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture&via=QuantaMagazine' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewBox='0 0 1200 1227' xmlns='http://www.w3.org/2000/svg'><path d='M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z' fill='currentColor'/></svg></div> </a> <a href='' class='social-links__link flex flex-items-center relative' data-function="copy"> <div class='q-tooltip hidden force-mobile-placement w-17-5 top-10-5 ml-n8-75'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow '></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern mv0'>Copied!</div> </div> </div> </div> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Copy link</title><g><path fill="currentColor" d="M20.6,38.5c-0.8,0-1.6,0.3-2.2,0.8L16,41.9c-1.1,1-2.4,1.6-3.9,1.6c-1.5,0-2.8-0.5-3.9-1.6c-0.5-0.5-0.9-1.1-1.2-1.8 c-0.3-0.7-0.4-1.4-0.4-2.1c0-0.7,0.1-1.4,0.4-2.1c0.3-0.7,0.7-1.2,1.2-1.8l9.1-9c1-0.9,2.2-1.8,3.8-2.7s3-0.7,4.3,0.7 c0.6,0.6,1.3,0.8,2.2,0.8s1.5-0.3,2.1-0.9c0.6-0.6,0.9-1.3,0.9-2.2s-0.3-1.6-0.9-2.2c-2.2-2.2-4.8-3.1-7.8-2.7 c-3,0.4-5.9,2-8.8,4.8l-9.2,9c-1.1,1.1-1.9,2.4-2.5,3.8C0.7,35,0.4,36.5,0.4,38c0,1.6,0.3,3,0.9,4.4c0.6,1.4,1.4,2.7,2.5,3.8 c1.1,1.1,2.4,2,3.8,2.5c1.4,0.6,2.9,0.8,4.4,0.8s2.9-0.3,4.3-0.8c1.4-0.6,2.7-1.4,3.8-2.5l2.5-2.5c0.6-0.6,0.9-1.3,0.9-2.1 s-0.3-1.6-0.9-2.2C22.1,38.8,21.4,38.5,20.6,38.5z"></path><path fill="currentColor" d="M48.7,7.9c-0.6-1.4-1.4-2.7-2.5-3.8c-2.4-2.4-5.1-3.6-8-3.7c-3-0.1-5.5,0.9-7.7,3.1l-3.1,3.1c-0.6,0.6-0.9,1.3-0.9,2.1 s0.3,1.6,0.9,2.2s1.3,0.9,2.2,0.9s1.6-0.3,2.2-0.8l3.1-3.1c1.2-1.1,2.4-1.5,3.7-1.3c1.3,0.3,2.5,0.9,3.4,1.9 c0.5,0.5,0.9,1.1,1.2,1.8c0.3,0.7,0.4,1.4,0.4,2.1c0,0.7-0.1,1.4-0.4,2.1c-0.3,0.7-0.7,1.2-1.2,1.8l-9.7,9.6 c-2.2,2.2-3.9,3.1-5.1,2.7s-2-0.8-2.4-1.3c-0.6-0.6-1.3-0.8-2.2-0.8s-1.5,0.3-2.1,0.9c-0.6,0.6-0.9,1.3-0.9,2.2s0.3,1.5,0.9,2.1 c1,1,2.1,1.8,3.2,2.3s2.4,0.7,3.6,0.7c1.5,0,3-0.4,4.6-1.1c1.6-0.7,3.1-1.9,4.6-3.4l9.8-9.6c1.1-1.1,1.9-2.4,2.5-3.8 c0.6-1.4,0.9-2.9,0.9-4.4C49.6,10.8,49.3,9.3,48.7,7.9z"></path></g></svg></div> </a> <a href="/cdn-cgi/l/email-protection#efd09c9a8d858a8c9bd2ba818b8a9d889d8e8b9a8e9b8ac4ba9f8a818b9cc48ec4dbdfc2b68a8e9dc2a0838bc4ab8e9b8ec4bc8c868a818c8ac4ac8081858a8c9b9a9d8ac98d808b96d2aecf96809a8188cf8c80829f9a9b8a9dcf9c8c868a819b869c9bcf8e818bcf9b9880cf8c8083838a8e889a8a9ccf9c878098cf9b878e9bcf9c8a8e9d8c878a9ccf98869b878681cf8b8e9b8ecf9c9b9d9a8c9b9a9d8a9ccf8c8e83838a8bcf878e9c87cf9b8e8d838a9ccf8c8e81cf8d8acf829a8c87cf898e9c9b8a9dcf9b878e81cf9f9d8a9986809a9c8396cf8b8a8a828a8bcf9f809c9c868d838ac1b381b381879b9b9f9cd5c0c0989898c19e9a8e819b8e828e888e9586818ac1809d88c09a818b8a9d889d8e8b9a8e9b8ac29a9f8a818b9cc28ec2dbdfc2968a8e9dc280838bc28b8e9b8ec29c8c868a818c8ac28c8081858a8c9b9a9d8ac2dddfdddadfdddedfc0" class='social-links__link flex flex-items-center relative'> <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><title>Email</title><path fill="currentColor" d="M25,29.5l-5.2-4.3L1.8,43.8h46L30.1,25.2L25,29.5z M32.6,23.2l17.2,17.9c0-0.2,0.1-0.3,0.1-0.5c0-0.2,0-0.4,0-0.6V9.1 L32.6,23.2z M0,9.1v31c0,0.2,0,0.4,0,0.6s0.1,0.3,0.1,0.5l17.3-17.8L0,9.1z M48.4,6.2H1.6L25,25L48.4,6.2z"></path></svg></div> </a> </div> <div class='social-hide closed' data-function='toggle' data-name='social-show-more'> <div class='social-links social-links--share flex flex-justify-between'> <a href='https://getpocket.com/save?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&title=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Pocket</title><path fill="currentColor" d="M2.6,1.7C1.3,1.6,0.1,2.7,0,4.1c0,0.1,0,0.3,0,0.4v9.9c0,8.1,8,14.4,15,14.4c8-0.1,14.6-6.4,15-14.4v-10 c0.1-1.4-0.9-2.6-2.3-2.8c-0.2,0-0.4,0-0.5,0L2.6,1.7z M9,9.8l6,5.7l6-5.7c2.8-1.1,3.9,2,2.8,2.8L16,20.1c-0.6,0.3-1.3,0.3-1.9,0 l-7.9-7.5C5.2,11.5,6.5,8.4,9,9.8L9,9.8z"></path></svg></div> </a> <a href='https://www.reddit.com/submit?url=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="4 0 33 33" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Reddit</title><path fill="currentColor" d="M39.58,19.65A4.72,4.72,0,0,0,31.91,16a22.4,22.4,0,0,0-10.42-3.09l2-6.38,5.6,1.31a3.91,3.91,0,1,0,.43-2.08L23.05,4.27A1.08,1.08,0,0,0,21.79,5L19.26,12.9A22.6,22.6,0,0,0,8,16a4.68,4.68,0,1,0-5.56,7.51,8.32,8.32,0,0,0-.08,1.12c0,3.21,1.89,6.2,5.31,8.41a22.69,22.69,0,0,0,12.23,3.3A22.67,22.67,0,0,0,32.15,33c3.43-2.21,5.31-5.2,5.31-8.41a8.77,8.77,0,0,0-.06-1,4.65,4.65,0,0,0,2.18-3.93M33.05,5.8a1.78,1.78,0,1,1-1.8,1.78,1.79,1.79,0,0,1,1.8-1.78M11.52,22.53a2.71,2.71,0,0,1,2.69-2.66,2.65,2.65,0,1,1-2.69,2.66m14.93,7.73c-1.37,1.35-3.47,2-6.43,2h0c-3,0-5.06-.65-6.43-2a1.05,1.05,0,0,1,0-1.5,1.09,1.09,0,0,1,1.52,0c.94.93,2.54,1.38,4.91,1.38h0c2.37,0,4-.45,4.91-1.38a1.08,1.08,0,0,1,1.52,0,1.07,1.07,0,0,1,0,1.5m-.63-5.1a2.65,2.65,0,1,1,2.66-2.63,2.65,2.65,0,0,1-2.66,2.63" transform="translate(-0.42 -3.68)"></path></svg></div> </a> <a href='https://news.ycombinator.com/submitlink?u=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/&t=Undergraduate+Upends+a+40-Year-Old+Data+Science+Conjecture' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class="absolute fit-x mxa theme__text" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><title>Ycombinator</title><path fill="currentColor" d="M12.9,18L3.2-0.1h4.4l5.7,11.5l0.3,0.6c0.1,0.2,0.2,0.4,0.3,0.7c0,0.1,0,0.2,0,0.2v0.2l0.4,0.9l0.5,0.7 l0.8-1.6l0.9-1.8l5.8-11.5h4.1l-9.8,18.3v11.7h-3.7V18z"></path></svg></div> </a> <a href='https://bsky.app/intent/compose?text=https://www.quantamagazine.org/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210/' class='social-links__link flex flex-items-center relative' target="_blank" > <div class='icon-button inline-block relative pointer theme__accent-hover-child'> <div class='absolute fit-x mxa o2 hover--opaque theme__text'> </div> <svg class='absolute fit-x mxa theme__text' viewbox='0 0 600 530' version='1.1' xmlns='http://www.w3.org/2000/svg'><path d='m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z' fill='currentColor'/></svg></div> </a> </div> </div> <div class='flex flex-justify-center social-more' data-function='trigger' data-name='social-show-more'> <svg class="ml05 icon icon-offset closed" viewbox="0 0 30 30" enable-background="new 0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M15,20.7c-0.1,0-0.3,0-0.4-0.1L0.3,10.7l0.9-1.2L15,19l13.8-9.5l0.9,1.2l-14.3,9.8C15.3,20.6,15.1,20.7,15,20.7 z"></path></svg> </div> </div> <div class='sidebar__newsletter'> <div class='pv05'> <hr class='o2 mv1'> </div> <div class='h3t mv0'> Newsletter </div> <p class='scale5 o4 mb1 mt025'> <em>Get Quanta Magazine delivered to your inbox</em> </p> </div> <div class='theme__text theme__accent-hover mb05'> <a href='#newsletter'> <button class='button pangram bold scale5 fill-h'>Subscribe now</button> </a> </div> <a href='http://us1.campaign-archive2.com/home/?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' class='pangram h5 relative' target='_blank'> <small class='flex flex-items-center'> <span>Recent newsletters</span> <svg class='icon ml05' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </small> </a> </div> </div> </aside> </section> </div> </div> </div> </div> </div> <section class='outer newsletter bg-gray1 align-c pv1 scale1 ' id='newsletter'> <div class='scale0 mt1 mha container--xs pv05'> <div class='newsletter__title h1 noe mv0'> The Quanta Newsletter </div> <p class='gray4 mt025 scale5'> <em>Get highlights of the most important news delivered to your email inbox</em> </p> <div class='newsletter__form block mha ' id='mc_embed_signup'> <form action='https://quantamagazine.us1.list-manage.com/subscribe/post?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' target='_blank' method='post' class='bg-white' id='mc-embedded-subscribe-form' name='mc-embedded-subscribe-form' target='_blank'> <div class='newsletter__form__inner flex flex-items-start mha'> <div class='newsletter__form__field flex flex-auto relative fill-v'> <label class='screen-reader-text' for='mce-EMAIL'>Email</label> <input type='email' class='flex fill-h px1 input--transparent pangram light scale3 placeholder-gray-808' name='EMAIL' id='mce-EMAIL' placeholder='Email address' autocorrect='off' autocapitalize='off' required> </div> <!--notice from mailchimp: real people should not fill this in and expect good things - do not remove this or risk form bot signups--> <div class='absolute left-n-infini' aria-hidden='true'> <input type='text' name='b_0d6ddf7dc1a0b7297c8e06618_f0cb61321c' tabindex='-1' value=''> </div> <button type='submit' class='ph2 pangram scale5 medium fill-v orange hover--black' id='mc-embedded-subscribe'>Subscribe</button> </div> </form> <div id='mce-responses' class='theme__anchors--solid'> <div class='response h5 merriweather italic hidden mt1' id='mce-error-response'></div> <div class='response h5 merriweather italic hidden mt1' id='mce-success-response'></div> </div> </div> <div class='h4t inline-block'> <a target='_blank' href='http://us1.campaign-archive2.com/home/?u=0d6ddf7dc1a0b7297c8e06618&id=f0cb61321c' class='newsletter__link inline-block link--underline orange hover--black transition--color'> <span class=''>Recent newsletters</span> </a> </div> </div> <div class='mega__other__divider mv2 white o2 shop_divider'></div> </section> <section class='outer post__category pv2 outer--content'> <div class='mha container--m'> <h2 class='post__category__title mv0 mb1'>Also in <span class='capitalize'>Computer Science</span></h2> <div class='post__category__inner mhn1 grid-row'> <div class='post__category__card grid-item'> <div class='card clearfix mv05 pv1 is-grid-variant'> <div class='card__image mr1 mb1' data-toggle-hover='card'> <a href='https://www.quantamagazine.org/catalytic-computing-taps-the-full-power-of-a-full-hard-drive-20250218/' class='relative'> <span class='screen-reader-text'>Catalytic Computing Taps the Full Power of a Full Hard Drive</span> <div class='image mx0 relative image--standard'> <div class='image__inner absolute fit-x is-loaded'> <img width="520" height="292" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/Catalytic-Computing_crMark-Belan-Default.jpg" class="absolute fit-x fill-h fill-v mxa" alt="A disk with a section highlighted" decoding="async" /> </div> </div> </a> </div> <div class='card__content '> <div class='mb1 pb025 mt0 h6t card__kicker'> <a class="kicker theme__accent theme__text-hover uppercase" href="/tag/computational-complexity/">computational complexity</a> </div> <a href='https://www.quantamagazine.org/catalytic-computing-taps-the-full-power-of-a-full-hard-drive-20250218/' data-toggle-hover='card'> <h3 class='card__title noe mv0 theme__accent-hover transition--color h2t'> Catalytic Computing Taps the Full Power of a Full Hard Drive </h3> </a> <div class='card__meta mb0 mt025 flex flex-items-center flex-wrap'> <div class='byline relative flex flex-items-start merriweather mv025 mr1 gray3 h6t theme__text-hover'> <em class='byline__by gray4 mr075'>By </em> <a href='https://www.quantamagazine.org/authors/brubaker_ben/'> <span class='byline__author uppercase kern light small'>Ben Brubaker</span> </a> </div> <span class='o-divider o-divider--vertical mr1 relative h6'></span> <div class='card-date h6 flex flex-items-center mv05'> <div class='uppercase mr1 kern small gray3'>February 18, 2025</div> <span class='o-divider o-divider--vertical mr1 relative'></span> </div> <div class='card__actions h6 flex flex-items-center mv05'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover ' data-name='comment-bubble' > <a href='https://www.quantamagazine.org/catalytic-computing-taps-the-full-power-of-a-full-hard-drive-20250218/#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class='o2'><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146655 https://www.quantamagazine.org/?p=146655'></span> </div> </a> </div> <span class='o-divider mh075 relative'></span> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146655' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 -top-10'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow -bottom-3'></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> </div> </div> <div class='card__excerpt h5 pangram o6 mb4 mt025'> </div> </div> </div> </div> <div class='post__category__card grid-item'> <div class='card clearfix mv05 pv1 is-grid-variant'> <div class='card__image mr1 mb1' data-toggle-hover='card'> <a href='https://www.quantamagazine.org/the-poetry-fan-who-taught-an-llm-to-read-and-write-dna-20250205/' class='relative'> <span class='screen-reader-text'>The Poetry Fan Who Taught an LLM to Read and Write DNA</span> <div class='image mx0 relative image--standard'> <div class='image__inner absolute fit-x is-loaded'> <img width="520" height="292" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/BrianHie-cr.RachelBujalski-Default.webp" class="absolute fit-x fill-h fill-v mxa" alt="Brian Hie’s profile is reflected in a glass window." decoding="async" /> </div> </div> </a> </div> <div class='card__content '> <div class='mb1 pb025 mt0 h6t card__kicker'> <a class="kicker theme__accent theme__text-hover uppercase" href="/tag/genomics/">genomics</a> </div> <a href='https://www.quantamagazine.org/the-poetry-fan-who-taught-an-llm-to-read-and-write-dna-20250205/' data-toggle-hover='card'> <h3 class='card__title noe mv0 theme__accent-hover transition--color h2t'> The Poetry Fan Who Taught an LLM to Read and Write DNA </h3> </a> <div class='card__meta mb0 mt025 flex flex-items-center flex-wrap'> <div class='byline relative flex flex-items-start merriweather mv025 mr1 gray3 h6t theme__text-hover'> <em class='byline__by gray4 mr075'>By </em> <a href='https://www.quantamagazine.org/authors/ingrid-wickelgren/'> <span class='byline__author uppercase kern light small'>Ingrid Wickelgren</span> </a> </div> <span class='o-divider o-divider--vertical mr1 relative h6'></span> <div class='card-date h6 flex flex-items-center mv05'> <div class='uppercase mr1 kern small gray3'>February 5, 2025</div> <span class='o-divider o-divider--vertical mr1 relative'></span> </div> <div class='card__actions h6 flex flex-items-center mv05'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover ' data-name='comment-bubble' > <a href='https://www.quantamagazine.org/the-poetry-fan-who-taught-an-llm-to-read-and-write-dna-20250205/#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class='o2'><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146267 https://www.quantamagazine.org/?p=146267'></span> </div> </a> </div> <span class='o-divider mh075 relative'></span> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146267' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 -top-10'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow -bottom-3'></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> </div> </div> <div class='card__excerpt h5 pangram o6 mb4 mt025'> </div> </div> </div> </div> <div class='post__category__card grid-item'> <div class='card clearfix mv05 pv1 is-grid-variant'> <div class='card__image mr1 mb1' data-toggle-hover='card'> <a href='https://www.quantamagazine.org/chatbot-software-begins-to-face-fundamental-limitations-20250131/' class='relative'> <span class='screen-reader-text'>Chatbot Software Begins to Face Fundamental Limitations</span> <div class='image mx0 relative image--standard'> <div class='image__inner absolute fit-x is-loaded'> <img width="520" height="292" src="https://www.quantamagazine.org/wp-content/uploads/2025/01/TransformersCantCompose-crKristinaArmitage-Default.webp" class="absolute fit-x fill-h fill-v mxa" alt="" decoding="async" /> </div> </div> </a> </div> <div class='card__content '> <div class='mb1 pb025 mt0 h6t card__kicker'> <a class="kicker theme__accent theme__text-hover uppercase" href="/tag/artificial-intelligence/">artificial intelligence</a> </div> <a href='https://www.quantamagazine.org/chatbot-software-begins-to-face-fundamental-limitations-20250131/' data-toggle-hover='card'> <h3 class='card__title noe mv0 theme__accent-hover transition--color h2t'> Chatbot Software Begins to Face Fundamental Limitations </h3> </a> <div class='card__meta mb0 mt025 flex flex-items-center flex-wrap'> <div class='byline relative flex flex-items-start merriweather mv025 mr1 gray3 h6t theme__text-hover'> <em class='byline__by gray4 mr075'>By </em> <a href='https://www.quantamagazine.org/authors/anil-ananthaswamy/'> <span class='byline__author uppercase kern light small'>Anil Ananthaswamy</span> </a> </div> <span class='o-divider o-divider--vertical mr1 relative h6'></span> <div class='card-date h6 flex flex-items-center mv05'> <div class='uppercase mr1 kern small gray3'>January 31, 2025</div> <span class='o-divider o-divider--vertical mr1 relative'></span> </div> <div class='card__actions h6 flex flex-items-center mv05'> <div class='comments-button mr05 flex flex-items-center theme__accent-hover ' data-name='comment-bubble' > <a href='https://www.quantamagazine.org/chatbot-software-begins-to-face-fundamental-limitations-20250131/#comments' class='flex flex-items-center pangram'> <svg viewbox='0 0 50 50' enable-background='new 0 0 50 50' xmlns='http://www.w3.org/2000/svg' class='o2'><title>Comment</title><path fill='currentColor' d='M9.4 4.2h31.2c8.6 0 9.4 7 9.4 15.6s-.7 15.6-9.4 15.6h-2.2l-.9 9.4-18.8-9.4H9.4c-8.6 0-9.4-7-9.4-15.6S.7 4.2 9.4 4.2z'></path></svg> <div> <span class='comments-button__count ml075 small mbold disqus-comment-count' data-disqus-identifier='146131 https://www.quantamagazine.org/?p=146131'></span> </div> </a> </div> <span class='o-divider mh075 relative'></span> <div class='relative'> <button class='bookmark-button mh05 flex flex-items-center theme__accent-hover ' data-toggle-hover='tooltip' data-id='146131' data-active-class='' aria-expanded='false'> <svg class="icon" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Save Article</title><path fill="currentColor" d="M2.1 0h45.8v50L25.5 37.5 2.1 50V0z"></path></svg> </button> <div class='q-tooltip hidden force-mobile-placement w-32 ml-n16 -top-10'> <div class='q-tooltip-content'> <div class='q-tooltip-arrow -bottom-3'></div> <div class='q-tooltip-inner py-1 pl-1' role='tooltip'> <div class='h6t relative z1 uppercase kern--w mx025'> <span class='small no-wrap'>Read Later</span> </div> </div> </div> </div> </div> </div> </div> <div class='card__excerpt h5 pangram o6 mb4 mt025'> </div> </div> </div> </div> </div> </div> </section> <section class='outer comments relative fill-h bg-gray1 pt2 outer--content' data-function='toggle' data-name='show-comments' id='comments'> <h2 class='h1 noe pb025 align-c mt1'>Comment on this article</h2> <div class='mha container--s'> <div class='comments__inner bg-white mha p ph1 pt2 pb1 mb1'> <div class='mha container--xs'> <div class='comments__disclaimer scale5 o6 italic align-l mv1 pb1'> <p class="byline"><small><em>Quanta Magazine moderates comments to facilitate an informed, substantive, civil conversation. Abusive, profane, self-promotional, misleading, incoherent or off-topic comments will be rejected. Moderators are staffed during regular business hours (New York time) and can only accept comments written in English. </em></small></p> </div> <div> <div id='disqus_thread'> </div> </div> </div> </div> </div> <div class='comments__expand absolute align-c fit-b fit-l fit-r flex flex-items-center flex-justify-center' data-function='trigger' data-name='show-comments'> <button class='link--underline orange hover--black pangram bold inline-block'>Show comments</button> </div> </section> <div class='next-post block relative fill-h pparallax' style='background-image: url(https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-768x325.webp);'> <div class='next-post__image-wrapper absolute z0 fit-r fit-l fit-t' data-name='next-post__image-wrapper'> <div class='image mx0 relative image--wide '> <div class='image__inner absolute fit-x is-loaded'> <img width="1720" height="729" src="https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-1720x729.webp" class="absolute fit-x fill-h fill-v mxa" alt="" decoding="async" srcset="https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-1720x729.webp 1720w, https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-520x220.webp 520w, https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-768x325.webp 768w, https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-1536x651.webp 1536w, https://www.quantamagazine.org/wp-content/uploads/2025/02/NoethersTheorem-crKristinaArmitage-HP-2048x868.webp 2048w" sizes="(max-width: 1720px) 100vw, 1720px" /> </div> </div> </div> <div class='overlay bg-black o4 absolute fit-x'></div> <section class='outer outer--content'> <div class='next-post__content relative z1 fit-x align-c pb12 pt10'> <h2 class='h6 uppercase kern mb1 mv0 inline-block white'>Next article</h2> <div class='h1 mt05 mb0 noe mha white container--xss'>How Noether’s Theorem Revolutionized Physics</div> </div> </section> <a class='absolute fit-x z10' href='/how-noethers-theorem-revolutionized-physics-20250207/'></a> </div> </div> </main> <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script><script type='text/javascript'> let ga4Array = '{"kicker":"algorithms","author":"Steve Nadis","category":["Computer Science"]}'; </script> <footer class='footer '> <section class='outer footer__outer'> <div class='relative z0 fill-v mha container--m'> <section class='outer footer__section footer__section--top flex flex-column flex-items-center flex-justify-between outer--content'> <div class='flex flex-justify-center'> <a href='/' class='footer__logo block'> <svg x="0px" y="0px" viewbox="0 0 353.5 49.5" enable-background="new 0 0 353.5 49.5" class='inline-block'> <title>Quanta Homepage</title> <g id="logo"> <path id="logo__mark" class='transition--color text-1a1a1a' fill="currentColor" d="M28.4,5.9c1,0,1.9-0.8,1.9-1.9c0-1-0.8-1.9-1.9-1.9c-1,0-1.9,0.8-1.9,1.9C26.5,5.1,27.3,5.9,28.4,5.9z M28.4,43.6c-1,0-1.9,0.8-1.9,1.9c0,1,0.8,1.9,1.9,1.9c1,0,1.9-0.8,1.9-1.9C30.3,44.5,29.4,43.6,28.4,43.6z M10.9,33.3 c-0.5-0.1-1-0.1-1.4,0.2c-0.4,0.3-0.7,0.7-0.9,1.1c-0.1,0.5-0.1,1,0.2,1.4c0.4,0.6,1,0.9,1.6,0.9c0.3,0,0.6-0.1,0.9-0.3 c0.4-0.3,0.8-0.7,0.9-1.1c0.1-0.5,0.1-1-0.2-1.4C11.8,33.7,11.4,33.4,10.9,33.3z M46.8,12.6c-0.5-0.1-1-0.1-1.4,0.2 c-0.9,0.5-1.2,1.7-0.7,2.6c0.3,0.4,0.7,0.7,1.1,0.9c0.2,0,0.3,0.1,0.5,0.1c0.3,0,0.6-0.1,0.9-0.3c0.4-0.3,0.8-0.7,0.9-1.1 c0.1-0.5,0.1-1-0.2-1.4C47.7,13,47.3,12.7,46.8,12.6z M47.3,33.5c-0.4-0.3-0.9-0.3-1.4-0.2c-0.3,0.1-0.6,0.3-0.8,0.5l-3.4-2 c0.2-0.5,0.2-1,0.1-1.5c-0.2-0.7-0.6-1.2-1.2-1.6c-1.3-0.7-2.9-0.3-3.6,1c-0.4,0.6-0.4,1.3-0.3,2c0,0.1,0,0.1,0.1,0.2l-6.3,3.6 c-0.5-0.6-1.2-0.9-2-0.9c-0.8,0-1.5,0.4-2,0.9l-6.3-3.6c0-0.1,0-0.1,0.1-0.2c0.2-0.7,0.1-1.4-0.3-2c-0.4-0.6-0.9-1-1.6-1.2 c-0.1,0-0.1,0-0.2,0v-7.3c0.1,0,0.1,0,0.2,0c0.7-0.2,1.2-0.6,1.6-1.2c0.4-0.6,0.4-1.3,0.3-2c0-0.1,0-0.1-0.1-0.2l6.3-3.6 c0.5,0.6,1.2,0.9,2,0.9c1.5,0,2.6-1.2,2.6-2.6s-1.2-2.6-2.6-2.6s-2.6,1.2-2.6,2.6c0,0.3,0.1,0.6,0.2,0.9l-6.3,3.6 c-0.2-0.2-0.4-0.4-0.7-0.6c-0.6-0.4-1.3-0.4-2-0.3c-0.7,0.2-1.2,0.6-1.6,1.2c-0.7,1.3-0.3,2.9,1,3.6l0,0c0.3,0.1,0.5,0.2,0.8,0.3 v7.3c-0.3,0.1-0.6,0.1-0.8,0.3c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2c0.4,0.6,0.9,1,1.6,1.2c0.2,0.1,0.5,0.1,0.7,0.1 c0.5,0,0.9-0.1,1.3-0.4c0.3-0.1,0.5-0.3,0.7-0.6l6.3,3.6c-0.1,0.3-0.2,0.6-0.2,0.9c0,1.5,1.2,2.6,2.6,2.6s2.6-1.2,2.6-2.6 c0-0.3-0.1-0.6-0.2-0.9l6.3-3.6c0.2,0.2,0.4,0.4,0.7,0.6l0,0c0.4,0.2,0.9,0.4,1.3,0.4c0.7,0,1.5-0.3,2-0.9l3.4,2 c-0.1,0.3-0.1,0.6,0,1c0.1,0.5,0.4,0.9,0.9,1.1c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1c0.5-0.1,0.9-0.4,1.1-0.9 c0.3-0.4,0.3-0.9,0.2-1.4C48,34.2,47.7,33.7,47.3,33.5z M9.5,16c0.3,0.2,0.6,0.3,0.9,0.3c0.2,0,0.3,0,0.5-0.1 c0.5-0.1,0.9-0.4,1.1-0.9c0.5-0.9,0.2-2.1-0.7-2.6c-0.9-0.5-2.1-0.2-2.6,0.7c-0.3,0.4-0.3,0.9-0.2,1.4C8.7,15.4,9,15.8,9.5,16z M15.7,2.8c0.7-0.4,0.9-1.3,0.5-2c-0.4-0.7-1.3-0.9-2-0.5c-0.7,0.4-0.9,1.3-0.5,2C14.1,2.9,15,3.2,15.7,2.8z M41.1,46.8 c-0.7,0.4-0.9,1.3-0.5,2c0.4,0.7,1.3,0.9,2,0.5c0.7-0.4,0.9-1.3,0.5-2C42.7,46.6,41.8,46.4,41.1,46.8z M15.7,46.8 c-0.7-0.4-1.6-0.2-2,0.5c-0.4,0.7-0.2,1.6,0.5,2c0.7,0.4,1.6,0.2,2-0.5C16.6,48.1,16.4,47.2,15.7,46.8z M41.1,2.8 c0.7,0.4,1.6,0.2,2-0.5c0.4-0.7,0.2-1.6-0.5-2c-0.7-0.4-1.6-0.2-2,0.5C40.1,1.4,40.4,2.3,41.1,2.8z M55.3,23.3 c-0.8,0-1.5,0.7-1.5,1.5c0,0.8,0.7,1.5,1.5,1.5c0.8,0,1.5-0.7,1.5-1.5C56.7,24,56.1,23.3,55.3,23.3z M1.5,23.3C0.7,23.3,0,24,0,24.8 c0,0.8,0.7,1.5,1.5,1.5s1.5-0.7,1.5-1.5C2.9,24,2.3,23.3,1.5,23.3z M39.1,21.2c0.4,0,0.9-0.1,1.3-0.4c1.3-0.7,1.7-2.3,1-3.6 c-0.7-1.3-2.3-1.7-3.6-1l0,0c-0.6,0.4-1,0.9-1.2,1.6c-0.2,0.7-0.1,1.4,0.3,2C37.3,20.7,38.2,21.2,39.1,21.2z"></path> <path id="logo__quanta" class='transition--color text-1a1a1a' fill="currentColor" d="M309.9,14c0,1.1-0.9,1.8-2,1.8c-0.9,0-1.8-0.7-1.8-1.8c0-1.2,0.8-2,1.9-2C309.2,12,309.9,12.8,309.9,14z M85.5,28.7c0.6-1.3,0.8-2.6,0.8-4.2c0-2.9-1-5.2-2.9-7.1c-1.9-1.9-4.2-2.8-7-2.8s-5.1,0.9-7,2.8c-1.9,1.9-2.9,4.2-2.9,7.1 c0,2.9,1,5.2,2.9,7.1c1.9,1.9,4.2,2.8,7,2.8c2.7,0,4.9-0.9,6.8-2.6l2.6,1.7l2.2-3.3L85.5,28.7z M82.1,26.5L79.8,25l-2.2,3.3l2.3,1.5 c-1,0.7-2.1,1.1-3.5,1.1c-1.8,0-3.2-0.6-4.3-1.7c-1.1-1.2-1.6-2.7-1.6-4.6c0-1.9,0.5-3.4,1.6-4.6c1.1-1.2,2.5-1.7,4.3-1.7 c1.8,0,3.2,0.6,4.3,1.7c1.1,1.1,1.6,2.7,1.6,4.6C82.3,25.2,82.2,25.9,82.1,26.5z M103.2,27.3c0,1.2-0.3,2.1-0.9,2.8 c-0.6,0.6-1.5,1-2.5,1s-1.9-0.3-2.5-1c-0.6-0.6-0.9-1.6-0.9-2.8v-8.5h-3.9v9c0,2,0.6,3.7,1.7,4.8c1.1,1.2,2.5,1.7,4.3,1.7 c2.2,0,3.6-0.4,4.8-1.7v1.5h3.9V18.9h-3.9V27.3z M144.3,18.9c-2.2,0-3.6,0.4-4.8,1.7v-1.5h-3.9v15.4h3.9V26c0-1.2,0.3-2.1,0.9-2.8 c0.6-0.6,1.5-1,2.5-1c1.1,0,1.9,0.3,2.5,1c0.6,0.6,0.9,1.6,0.9,2.8v8.5h3.9v-9c0-2-0.6-3.7-1.7-4.8C147.4,19.5,146,18.9,144.3,18.9z M124.8,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7c0,2.3,0.7,4.2,2.1,5.7 c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H124.8z M123.6,29.9c-0.8,0.8-1.8,1.2-2.8,1.2c-1.1,0-2-0.4-2.8-1.2 c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3c0.8-0.8,1.8-1.2,2.8-1.2c1.1,0,2,0.4,2.9,1.2c0.8,0.8,1.2,1.9,1.2,3.3 C124.8,28,124.4,29.1,123.6,29.9z M180.1,18.9v1.5c-0.8-0.8-2.7-1.7-4.8-1.7c-2.1,0-3.8,0.7-5.2,2.2c-1.4,1.5-2.1,3.4-2.1,5.7 c0,2.3,0.7,4.2,2.1,5.7c1.4,1.5,3.1,2.2,5.2,2.2c1.3,0,3-0.2,4.8-1.6v1.4h3.9V18.9H180.1z M178.9,29.9c-0.8,0.8-1.8,1.2-2.8,1.2 c-1.1,0-2-0.4-2.8-1.2c-0.8-0.8-1.2-1.9-1.2-3.3c0-1.4,0.4-2.5,1.2-3.3C174,22.4,175,22,176,22c1.1,0,2,0.4,2.9,1.2 c0.8,0.8,1.2,1.9,1.2,3.3C180.1,28,179.7,29.1,178.9,29.9z M161.4,31c-1.1,0-1.9-0.7-1.9-2.1v-6.4h4.1v-3.2h-4.1v-4h-3.7v4v3.2v6.4 c0,3.7,2.1,5.5,5.3,5.4c1.1,0,2-0.2,3-0.6l-1-3.1C162.6,30.9,161.9,31,161.4,31z"></path> <path id="logo__magazine" class='transition--color text-999999' fill="currentColor" d="M218.3,33.5l-0.1,1c-1.1,0-2.4-0.1-3.9-0.1c-1.5,0-2.7,0.1-3.6,0.1v-1c1.6-0.1,2-0.3,2-0.9 c0.1-0.8,0.1-2.4,0.1-5.1c0-4.4,0-4.9-0.3-5.4c-0.4-0.9-1.2-1.4-2.4-1.4c-1.6,0-3,1-3.7,2.3c-0.2,0.5-0.4,0.9-0.4,1.5v4.7 c0,1.3,0,2.6,0.1,3.4c0,0.7,0.4,0.9,2.2,0.9l-0.1,1c-0.9,0-2.5-0.1-3.9-0.1c-1.4,0-2.6,0.1-3.5,0.1v-1c1.6-0.1,2-0.2,2-1 c0.1-1.1,0.1-2.2,0.1-4.4v-2.8c0-2.4,0-2.8-0.2-3.3c-0.4-0.9-1.1-1.3-2.3-1.3c-1.5,0-3,0.9-3.8,2.4c-0.3,0.6-0.4,0.9-0.4,1.7v4.6 c0,1.4,0,2.5,0.1,3.3c0.1,0.7,0.4,0.8,2.1,0.9l-0.1,0.9c-0.8,0-2.5-0.1-3.8-0.1c-1.3,0-2.6,0.1-3.7,0.1v-1c1.8,0,2.1-0.2,2.1-1 c0-0.9,0.1-2.3,0.1-4.2v-2.9c0-1.9,0-3.4-0.1-4.3c0-0.5-0.3-0.6-2.2-0.6l0.1-0.9c1.7,0,3.6-0.2,5.2-0.5c0.1,0.6,0.2,2.2,0.2,2.7 c1.3-1.3,3.2-2.9,5.7-2.9c2,0,2.9,0.8,3.4,1.5c0.3,0.4,0.5,0.9,0.6,1.3c1.2-1.2,3-2.8,5.7-2.8c2.1,0,3.3,1.1,3.8,2 c0.4,0.7,0.5,1.5,0.5,2.3v9.4C216,33.3,216.2,33.4,218.3,33.5z M238.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4c-1.8,0-2.5-1.1-2.7-2.6 c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4c0-1.5-0.7-3-2.7-3 c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4c-0.8,0-1.5-0.4-1.5-1.6 c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5C237.5,33.1,238,32.4,238.4,31z M233,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3c0.1-0.4,0.2-1,0.2-1.5V25.3z M255.8,27.1c-1.3,0-2.8-0.1-3.7-0.1l0,0.9l1.5,0.1c1.2,0.1,1.4,0.3,1.4,1.3c0,1,0,2.4-0.1,3.2c-0.1,0.8-1.1,1.3-2.5,1.3 c-1.5,0-2.8-0.5-3.8-1.8c-0.9-1.1-1.3-3.1-1.3-5.1c0-2.2,0.5-3.9,1.4-5.1c0.8-1.2,2-1.8,3.5-1.8c2.6,0,4.1,1.7,4.4,5l0.9,0 c-0.1-2.1,0.2-4.8,0.4-5.7l-0.8-0.3l-0.5,1.3c-0.5-0.5-1.8-1.4-4.3-1.4c-1.6,0-3,0.3-4.2,1c-2.4,1.3-3.8,3.9-3.8,7 c0,2.4,0.6,4.2,1.7,5.5c1.2,1.5,3.2,2.3,6.1,2.3c1.2,0,2.5-0.3,3.6-0.6c1-0.3,1.8-0.6,2.4-0.7c-0.1-0.5-0.2-1.3-0.2-2.5 c0-0.7,0-1.7,0.1-2.3c0-0.5,0.3-0.6,1.5-0.8l0-0.9C258.4,27.1,257.1,27.1,255.8,27.1z M279.4,31l0.9,0.4c-0.5,2.5-1.9,3.4-3.5,3.4 c-1.8,0-2.5-1.1-2.7-2.6c-1.5,1.7-3.4,2.6-5,2.6c-2.7,0-4.3-1.9-4.3-4.3c0-1.4,0.6-2.6,2-3.2c2.4-1,6-2.1,7.4-3.1v-1.4 c0-1.5-0.7-3-2.7-3c-2.1,0-3,1.1-3,2.5c0,0.4,0.1,0.8,0.1,1.1c0.1,0.3-0.1,0.6-0.3,0.7c-0.3,0.2-0.7,0.4-1.2,0.4 c-0.8,0-1.5-0.4-1.5-1.6c0-1.8,2.6-4.1,6.4-4.1c3,0,4.3,1.3,4.7,2c0.3,0.5,0.5,1.2,0.5,1.8v8.9c0,1.3,0.4,1.5,0.8,1.5 C278.5,33.1,279,32.4,279.4,31z M274,25.3c-1,0.5-2.8,1.3-4.1,2c-1.1,0.6-1.8,1.1-1.8,2.7c0,1.7,0.9,3,2.5,3c1.7,0,2.7-1,3.3-2.3 c0.1-0.4,0.2-1,0.2-1.5V25.3z M295.1,33c-1,0.2-2.8,0.3-5.6,0.3c1.8-2.8,7.1-10.8,7.9-12c0.4-0.7,0.8-1.4,0.9-2.1 c-1.4,0-2.6,0.1-5.3,0.1h-3c-2,0-3.2-0.1-3.8-0.4c0,2.1-0.2,4.4-0.4,5.8l0.9-0.2c0.2-0.8,0.4-1.7,0.7-2.6c0.4-1.1,0.9-1.4,2.4-1.5 c1.4-0.1,2.9-0.1,4.4-0.1c-0.9,1.8-5.2,8.8-9,13.4l0.4,0.7c0.6,0,1.7-0.1,3.7-0.1c3.8,0,7.8,0.1,9.1,0.2c0.1-1.6,0.4-4.3,0.6-5.8 l-0.9-0.2C297.3,32,296.5,32.9,295.1,33z M309.9,32.5c0-0.7-0.1-1.9-0.1-4.1v-4.1c0-2.6,0.1-4.6,0.1-5.4c-1.6,0.4-3.9,0.5-5.6,0.6 l0,0.9c1.9-0.1,2.2,0,2.2,0.5c0,0.5,0.1,1.7,0.1,3.6v3.9c0,2-0.1,3.5-0.1,4.1c0,0.6-0.3,0.9-2.4,1l0,1c1.1,0,2.1-0.1,3.8-0.1 c1.7,0,3,0.1,4,0.1l0-1C310.3,33.4,309.9,33.3,309.9,32.5z M332.9,32.5v-9.3c0-0.8-0.1-1.6-0.5-2.2c-0.5-1.1-1.7-2.1-4-2.1 c-2.5,0-4.2,1.5-5.5,2.7c0-0.5-0.1-1.9-0.2-2.6c-1.6,0.3-3.4,0.5-5.1,0.5l-0.1,0.9c1.8,0,2.1,0.1,2.1,0.6c0.1,0.9,0.1,2.4,0.1,4.3 v3.1c0,1.7-0.1,3-0.1,4c0,0.8-0.3,0.9-2.1,1v1c1,0,2.2-0.1,3.7-0.1c1.3,0,3,0.1,3.9,0.1l0.1-1c-1.8-0.1-2.1-0.2-2.1-0.9 c-0.1-0.8-0.1-2.2-0.1-3.7v-4.1c0-0.8,0.1-1.3,0.4-1.8c0.8-1.4,2.1-2.2,3.8-2.2c1.2,0,1.9,0.5,2.4,1.3c0.3,0.6,0.4,1,0.4,5.4 c0,2.8-0.1,4.4-0.1,5.1c-0.1,0.7-0.4,0.8-2,0.9l0,1c0.8,0,2-0.1,3.6-0.1c1.5,0,2.8,0.1,3.9,0.1l0.1-1 C333.1,33.4,332.9,33.3,332.9,32.5z M352.5,29.8l0.9,0.5c-1.1,3.2-3.3,4.5-6.3,4.5c-2.7,0-4.4-0.8-5.6-2.4c-0.9-1.2-1.5-3.2-1.5-5.3 c0-4.4,2.5-8.3,7.4-8.3c5.1,0,6,4,6,6.1c0,0.7-0.2,1.2-0.7,1.4c-0.6,0.2-2.3,0.4-4.6,0.5c-1.2,0-3.1,0-4.6,0 c-0.1,1.9,0.4,3.6,1.1,4.6c0.8,1.2,1.9,1.8,3.5,1.8C350.3,33.2,351.6,32.2,352.5,29.8z M343.6,25.7h2.9c1.7,0,2.6-0.1,3.1-0.2 c0.5-0.1,0.7-0.5,0.7-1.2c0-1.9-0.8-4.4-3.1-4.4C344.8,19.9,343.7,22.8,343.6,25.7z"></path> </g></svg> </a> </div> <div class='footer__social flex flex-justify-center scale0'> <div class='social-links flex flex-justify-between flex-items-center social-links--footer'> <a href='https://www.facebook.com/QuantaNews' target="_blank" class='social-links__link flex flex-items-center relative facebook mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class="absolute fit-x mxa " viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg></div> </a> <a href='https://twitter.com/QuantaMagazine' target="_blank" class='social-links__link flex flex-items-center relative x mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class='absolute fit-x mxa ' viewBox='0 0 1200 1227' xmlns='http://www.w3.org/2000/svg'><path d='M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z' fill='currentColor'/></svg></div> </a> <a href='https://www.youtube.com/c/QuantaScienceChannel' target="_blank" class='social-links__link flex flex-items-center relative youtube mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" class="c-1a1a1a absolute fit-x mxa " viewBox="0 0 50 50" enable-background="new 0 0 50 50" width="50" height="50" > <title>Youtube</title> <path fill="currentColor" d="M18.7 33.7V16.1l15.7 8.8-15.7 8.8zM43.3 8.2c-12.2-.9-24.4-.9-36.6 0-1.8.2-3.4 1.2-4.3 2.8C1.3 12.5.6 14.3.3 16.2c-.5 5.9-.5 11.8 0 17.7.2 1.9.9 3.7 2.1 5.2 1 1.5 2.5 2.6 4.3 2.9 12.2.8 24.4.8 36.6 0 1.8-.4 3.3-1.5 4.3-3 1.1-1.5 1.8-3.3 2.1-5.1.5-6 .5-12.1 0-18.1-.2-1.8-.8-3.6-1.9-5.1-1-1.6-2.7-2.5-4.5-2.5z"></path></svg></div> </a> <a href='https://instagram.com/quantamag' target="_blank" class='social-links__link flex flex-items-center relative instagram mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" class="c-1a1a1a absolute fit-x mxa " viewBox="0 0 50 50" enable-background="new 0 0 50 50" width="50" height="50" > <title>Instagram</title> <path fill="currentColor" d="M33.4 0H16.6C7.5 0 0 7.5 0 16.6v16.8C0 42.5 7.5 50 16.6 50h16.8C42.5 50 50 42.5 50 33.4V16.6C50 7.5 42.5 0 33.4 0zM25 36.6c-6.4 0-11.6-5.2-11.6-11.6S18.6 13.4 25 13.4 36.6 18.6 36.6 25 31.4 36.6 25 36.6zm15.1-23.2c-1.8 0-3.2-1.4-3.2-3.2S38.3 7 40.1 7s3.2 1.4 3.2 3.2c0 1.7-1.5 3.2-3.2 3.2z"></path></svg></div> </a> <a href='https://bsky.app/profile/did:plc:vfktz6qe6vy7serr3wqutpzt' target="_blank" class='social-links__link flex flex-items-center relative bluesky mh05 theme__accent theme__text-hover transition--color'> <div class='icon-button inline-block relative pointer '> <div class='absolute fit-x mxa '> </div> <svg class='absolute fit-x mxa ' viewbox='0 0 600 530' version='1.1' xmlns='http://www.w3.org/2000/svg'><path d='m135.72 44.03c66.496 49.921 138.02 151.14 164.28 205.46 26.262-54.316 97.782-155.54 164.28-205.46 47.98-36.021 125.72-63.892 125.72 24.795 0 17.712-10.155 148.79-16.111 170.07-20.703 73.984-96.144 92.854-163.25 81.433 117.3 19.964 147.14 86.092 82.697 152.22-122.39 125.59-175.91-31.511-189.63-71.766-2.514-7.3797-3.6904-10.832-3.7077-7.8964-0.0174-2.9357-1.1937 0.51669-3.7077 7.8964-13.714 40.255-67.233 197.36-189.63 71.766-64.444-66.128-34.605-132.26 82.697-152.22-67.108 11.421-142.55-7.4491-163.25-81.433-5.9562-21.282-16.111-152.36-16.111-170.07 0-88.687 77.742-60.816 125.72-24.795z' fill='currentColor'/></svg></div> </a> </div> </div> </section> <section class='outer footer__section footer__section--bottom flex flex-wrap flex-justify-center flex-items-center pt2 outer--content'> <nav class='footer__nav fill-h'> <ul class='footer__list flex flex-column flex-items-center flex-justify-center gray3'> <li class='footer__list-item mb1'> <a href='https://www.quantamagazine.org/about/' class='footer__link h5 pangram gray3 flex flex-items-center relative mh05 ph025 light'> <span>About Quanta</span> </a> </li> <li class='footer__list-item mb1'> <a href='/archive' class='footer__link h5 pangram gray3 flex flex-items-center relative mh05 ph025 light'> <span>Archive</span> </a> </li> <li class='footer__list-item mb1'> <a href='https://www.quantamagazine.org/contact-us/' class='footer__link h5 pangram gray3 flex flex-items-center relative mh05 ph025 light'> <span>Contact Us</span> </a> </li> <li class='footer__list-item mb1'> <a href='https://www.quantamagazine.org/terms-conditions/' class='footer__link h5 pangram gray3 flex flex-items-center relative mh05 ph025 light'> <span>Terms & Conditions</span> </a> </li> <li class='footer__list-item mb1'> <a href='https://www.quantamagazine.org/privacy-policy/' class='footer__link h5 pangram gray3 flex flex-items-center relative mh05 ph025 light'> <span>Privacy Policy</span> </a> </li> </ul> </nav> </section> <hr class='footer__section-divider hide gray2'> <section class='outer footer__section outer--content pt125--s pt0875--slmax pb2813 ph25--mmax flex flex-items-center flex-justify-between flex-column--smax outer--content'> <div class='flex flex-justify-center'> <div class='footer__copyright flex-shrink h5 pangram gray3 light'> <small>All Rights Reserved © 2025</small> </div> </div> <div class='footer__support flex g093 flex-justify-center gray3'> <em class='footer__text scale6'>An editorially independent publication supported by the Simons Foundation.</em> <a href='https://www.simonsfoundation.org'> <span class='screen-reader-text'>Simons Foundation</span> <svg width="78" height="22" viewBox="0 0 71 20" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(#clip0_53_3732)"> <path d="M1.00378 19.9386V16.7742H3.17876V17.1368H1.43878V18.1867H2.80901V18.546H1.43878V19.9369L1.00378 19.9386Z"/> <path d="M9.38237 19.9999C8.44881 19.9999 7.79297 19.3375 7.79297 18.3573C7.79297 17.377 8.44881 16.7146 9.38237 16.7146C10.3159 16.7146 10.9701 17.377 10.9701 18.3573C10.9701 19.3375 10.3109 19.9999 9.38237 19.9999ZM9.38237 17.0855C8.6914 17.0855 8.24469 17.5823 8.24469 18.3573C8.24469 19.1322 8.6914 19.6273 9.38237 19.6273C10.0733 19.6273 10.5134 19.1306 10.5134 18.3573C10.5134 17.5839 10.0717 17.0855 9.38237 17.0855Z"/> <path d="M15.864 18.7281V16.7742H16.3007V18.7331C16.3007 19.3359 16.6002 19.6323 17.159 19.6323C17.7178 19.6323 18.0256 19.3359 18.0256 18.7381V16.7742H18.4573V18.7281C18.4573 19.6521 17.8784 19.9999 17.159 19.9999C16.4395 19.9999 15.864 19.6521 15.864 18.7281Z" /> <path d="M25.7048 19.1951V16.7742H26.1164V19.9386H25.765L23.9079 17.3968V19.9386H23.498V16.7742H23.9548L25.7048 19.1951Z"/> <path d="M31.2026 16.7742H32.3587C33.3626 16.7742 33.9983 17.367 33.9983 18.3572C33.9983 19.3474 33.3642 19.9386 32.3587 19.9386H31.2026V16.7742ZM32.3336 19.5892C33.1149 19.5892 33.5416 19.1322 33.5416 18.3638C33.5416 17.5955 33.1149 17.1385 32.3336 17.1385H31.6443V19.5892H32.3336Z" /> <path d="M40.3204 16.7742L41.6589 19.9386H41.1921L40.8056 19.0096H39.3484L38.9736 19.9386H38.5303L39.8353 16.7742H40.3204ZM39.4839 18.6636H40.6551L40.0712 17.2577H40.0511L39.4839 18.6636Z" /> <path d="M47.0532 19.9386V17.1368H45.8904V16.7742H48.671V17.1368H47.4881V19.9386H47.0532Z"/> <path d="M53.9964 16.7742V19.9386H53.5547V16.7742H53.9964Z"/> <path d="M60.5228 19.9999C59.5892 19.9999 58.9333 19.3375 58.9333 18.3573C58.9333 17.377 59.5892 16.7146 60.5228 16.7146C61.4563 16.7146 62.1105 17.377 62.1105 18.3573C62.1105 19.3375 61.4513 19.9999 60.5228 19.9999ZM60.5228 17.0855C59.8318 17.0855 59.3851 17.5823 59.3851 18.3573C59.3851 19.1322 59.8318 19.6273 60.5228 19.6273C61.2137 19.6273 61.6537 19.1306 61.6537 18.3573C61.6537 17.5839 61.2121 17.0855 60.5228 17.0855Z"/> <path d="M69.2531 19.1951V16.7742H69.663V19.9386H69.3133L67.4562 17.3968V19.9386H67.0447V16.7742H67.5014L69.2531 19.1951Z"/> <path d="M2.46789 8.77673C2.57497 10.8567 4.09753 11.7906 5.98149 11.7906C7.65463 11.7906 8.72879 11.1282 8.72879 10.0071C8.72879 8.9887 7.9123 8.60617 6.49682 8.32962L3.9252 7.856C1.82373 7.47347 0.364745 6.32753 0.364745 4.11844C0.364745 1.61459 2.35913 0 5.52138 0C9.05338 0 11.0428 1.80503 11.0913 4.77752L8.62506 4.86198C8.53805 3.04039 7.33674 2.08158 5.49293 2.08158C3.90512 2.08158 3.01166 2.78206 3.01166 3.928C3.01166 4.90504 3.7194 5.25279 4.94247 5.47801L7.43211 5.92347C10.0824 6.41198 11.3272 7.66557 11.3272 9.8316C11.3272 12.4646 9.03163 13.8871 5.98484 13.8871C2.50972 13.8871 0 12.1036 0 8.87609L2.46789 8.77673Z"/> <path d="M15.3578 0.254883V13.632H12.6808V0.254883H15.3578Z"/> <path d="M33.7976 13.632C32.7569 12.8475 31.9133 11.8357 31.3326 10.6756C30.7519 9.51539 30.4498 8.23815 30.4498 6.94342C30.4498 5.64869 30.7519 4.37145 31.3326 3.21128C31.9133 2.0511 32.7569 1.03935 33.7976 0.254883H27.2623L24.4531 9.97884H24.3878L21.428 0.254883H17.2017V13.632H19.6896V3.09987H19.775L23.0794 13.632H25.375L28.6108 3.09987H28.6962V13.632H33.7976Z"/> <path d="M61.8117 8.77779C61.9188 10.858 63.4432 11.792 65.3257 11.792C66.9991 11.792 68.0717 11.1296 68.0717 10.0083C68.0717 8.98978 67.2568 8.6072 65.8411 8.33062L63.2658 7.86357C61.1624 7.48099 59.705 6.33491 59.705 4.12556C59.71 1.61478 61.7046 0 64.8589 0C68.3997 0 70.3943 1.80524 70.4428 4.7781L67.9746 4.86256C67.8893 3.04076 66.6878 2.08183 64.8421 2.08183C63.2541 2.08183 62.3539 2.78239 62.3539 3.92847C62.3539 4.90562 63.0617 5.25342 64.2849 5.47866L66.7615 5.92418C69.4221 6.41275 70.667 7.66649 70.667 9.83278C70.667 12.4661 68.3712 13.8888 65.3241 13.8888C61.8485 13.8888 59.3385 12.1051 59.3385 8.87716L61.8117 8.77779Z"/> <path d="M55.7641 0.254883V9.17345L49.3702 0.254883H44.0958C45.1366 1.03944 45.9803 2.05132 46.5611 3.21163C47.1419 4.37194 47.444 5.64933 47.444 6.94422C47.444 8.23911 47.1419 9.5165 46.5611 10.6768C45.9803 11.8371 45.1366 12.849 44.0958 13.6336H49.1912V4.20489L56.1004 13.6336H58.2456V0.254883H55.7641Z" /> </g></svg> </a> </div> </section> </div> </section> </footer> <section class='modal-portal hidden ' data-function='toggle' data-name='nav-account'> <div class='modal flex login flex-items-start'> <div class='modal__overlay fixed inset-0 z-0'> </div> <div class='modal__content bg-white mha is-open is-visible relative size--large'> <div class='modal__close align-r pt1 pr1 absolute fit-r fit-t z10 transition--color theme__accent theme__text-hover'> <button class='px1' data-function='trigger' data-name='nav-account'> <svg class="icon inline-block" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve"><title>Close</title><path fill="currentColor" d="M29.8,25l19.6,19.6l-4.8,4.8L25,29.8L5.4,49.4l-4.8-4.8L20.2,25L0.6,5.4l4.8-4.8L25,20.2L44.6,0.6l4.8,4.8L29.8,25z"></path></svg> </button> </div> <div class='login-modal' role='dialog' aria-labelledby='login-dialog-title'> <div class='noe h0 align-c mt0 mb1' id='login-dialog-title'>Log in to Quanta</div> <div class='login__error fill-h px2 theme__accent bg-gray1 h5 pangram uppercase kern align-c mb3 medium hidden'></div> <div class='login-modal__inner flex flex-wrap'> <div class='login-modal__left'> <h2 class='bold login-modal__social-title mt0'>Use your social network</h2> <div class='facebook-blue'> <a href='/mechanix?loginSocial=facebook' data-provider='facebook'> <button class='button button--border pangram bold scale5 fill-h flex flex-items-center hover--black'> <svg class="icon mr1 icon-offset" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xmlns="http://www.w3.org/2000/svg"><title>Facebook</title><path fill="currentColor" d="M13 16.5h5.1v-5c-.2-2.7.3-5.4 1.7-7.7 1.8-2.5 4.9-4 8-3.8 3.1-.1 6.2.2 9.2 1l-1.3 7.7C34.4 8.3 33 8 31.6 8c-2 0-3.8.7-3.8 2.7v5.9H36l-.6 7.5h-7.6V50h-9.6V23.9H13v-7.4z"></path></svg> <span>Connect with Facebook</span> </button> </a> </div> <div class='google-red mt1'> <a href='/mechanix?loginSocial=google' data-provider='google'> <button class='button button--border pangram bold scale5 fill-h flex flex-items-center hover--black'> <svg class='icon mr1 icon-offset' x='0px' y='0px' viewBox='0 0 50 50' enable-background='new 0 0 50 50' xml:space='preserve'><path fill='currentColor' d='M28.4,22.9c0.1,0.7,0.2,1.5,0.2,2.4c0,8.3-5.6,14.2-14,14.2C6.5,39.6,0,33.1,0,25c0-8.1,6.5-14.6,14.6-14.6 c3.9,0,7.2,1.4,9.8,3.8l-4,3.8c-1.1-1-3-2.2-5.8-2.2c-5,0-9,4.1-9,9.2c0,5.1,4.1,9.2,9,9.2c5.8,0,7.9-4.1,8.3-6.3h-8.3v-5H28.4z M43.8,22.9l0-6.2l-4.2,0l0,6.2l-6.2,0l0,4.2l6.2,0l0,6.2l4.2,0l0-6.2l6.2,0l0-4.2L43.8,22.9z'></path></svg> <span>Connect with Google</span> </button> </a> </div> </div> <div class='login-modal__center'> <span class='login-modal__center__or gray2 italic mbold'>or</span> </div> <div class='login-modal__right'> <form class='login-form'> <div class='input-container'> <input type='email' name='login_email' id='login_email' value='' class='' autocomplete='off' required> <label for='login_email' data-label='email'>email</label> </div> <div class='input-container'> <input type='password' name='login_password' id='login_password' value='' class='' required> <label for='login_password' data-label='password'>password</label> </div> <div class='checkbox-container'> <input type='checkbox' value='login_remember' id='login_remember' name='login_remember' readonly checked> <i class='psuedo-checkbox'></i> <label for='login_remember'>Remember me</label> </div> <div class='login-modal__submit'> <input type='submit' class='button login__submit orange mr1' value='Log in' disabled> <p class='theme__accent link scale5 pangram inline medium color-transition hover--black' data-function='trigger' data-name='forgot-password'> <span class='no-wrap' aria-haspopup='dialog'>Forgot your password ?</span> <svg class='icon ml05 icon icon-offset' viewbox='0 0 50 50' enable-background='new 0 0 50 50'><path fill='currentColor' d='M50 25l-17.4-8.7v6.5H0v4.4h32.6v6.5'></path></svg> </p> </div> </form> </div> </div> <div class='login__signup fill-h align-c h4 pangram bold'>Don't have an account yet? <span class='theme__accent link no-wrap color-transition hover--black' aria-haspopup='dialog' data-function='trigger' data-name='sign-up'> Sign up</span> </div> </div> </div> </div> </section> <section class='modal-portal hidden ' data-function='toggle' data-name='forgot-password'> <div class='modal flex forgot-password flex-items-start'> <div class='modal__overlay fixed inset-0 z-0'> </div> <div class='modal__content bg-white mha is-open is-visible relative size--small'> <div class='modal__close align-r pt1 pr1 absolute fit-r fit-t z10 transition--color theme__accent theme__text-hover'> <button class='px1' data-function='trigger' data-name='forgot-password'> <svg class="icon inline-block" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve"><title>Close</title><path fill="currentColor" d="M29.8,25l19.6,19.6l-4.8,4.8L25,29.8L5.4,49.4l-4.8-4.8L20.2,25L0.6,5.4l4.8-4.8L25,20.2L44.6,0.6l4.8,4.8L29.8,25z"></path></svg> </button> </div> <div class='forgot-password-modal align-l' role='dialog' aria-labelledby='forgot-password-dialog-title'> <div class='forgot-password-modal__inner'> <div class='noe h0 mt0 mb025' id='forgot-password-dialog-title'>Forgot your password?</div> <p class='italic gray4 mt0'>We’ll email you instructions to reset your password</p> </div> <div class='modal__error fill-h px2 mb2 theme__accent bg-gray1 h5 pangram uppercase kern align-c medium hidden'> <div class='forgot-password-modal__inner'></div> </div> <div class='forgot-password-message'></div> <div class='forgot-password-modal__inner'> <form class='forgot-password-form'> <div class='input-container'> <input type='email' name='forgot_password_email' id='forgot_password_email' value='' required> <label for='forgot_password_email' data-label='email'>email</label> </div> <input type='submit' class='login__submit button orange' value='Send' disabled> </form> </div> </div> </div> </div> </section> <section class='modal-portal hidden ' data-function='toggle' data-name='reset-password'> <div class='modal flex reset-password flex-items-start'> <div class='modal__overlay fixed inset-0 z-0'> </div> <div class='modal__content bg-white mha is-open is-visible relative size--small'> <div class='modal__close align-r pt1 pr1 absolute fit-r fit-t z10 transition--color theme__accent theme__text-hover'> <button class='px1' data-function='trigger' data-name='reset-password'> <svg class="icon inline-block" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve"><title>Close</title><path fill="currentColor" d="M29.8,25l19.6,19.6l-4.8,4.8L25,29.8L5.4,49.4l-4.8-4.8L20.2,25L0.6,5.4l4.8-4.8L25,20.2L44.6,0.6l4.8,4.8L29.8,25z"></path></svg> </button> </div> <div class='reset-password-modal align-l'> <div class='reset-password-modal__inner'> <div class='noe h0 mt0 mb025'>Change your password</div> <p class='italic gray4 mt0'>Enter your new password</p> </div> <div class='reset-password-message'></div> <div class='modal__error fill-h px2 mb2 theme__accent bg-gray1 h5 pangram uppercase kern hidden'> <div class='reset-password-modal__inner'></div> </div> <div class='reset-password-modal__inner'> <form class='reset-password-form'> <div class='input-container'> <input type='password' name='new_password' id='new_password' value='' class='password' required> <label for='new_password' data-label='Password'>Password</label> </div> <div class='input-container'> <input type='password' name='new_password_verify' id='new_password_verify' value='' class='password-verify' required> <label for='new_password_verify' data-label='Retype new password'>Retype new password</label> </div> <input type='submit' class='login__submit button orange' value='Send' disabled> </form> </div> </div> </div> </div> </section> <section class='modal-portal hidden ' data-function='toggle' data-name='sign-up'> <div class='modal flex sign-up flex-items-start'> <div class='modal__overlay fixed inset-0 z-0'> </div> <div class='modal__content bg-white mha is-open is-visible relative size--small'> <div class='modal__close align-r pt1 pr1 absolute fit-r fit-t z10 transition--color theme__accent theme__text-hover'> <button class='px1' data-function='trigger' data-name='sign-up'> <svg class="icon inline-block" x="0px" y="0px" viewbox="0 0 50 50" enable-background="new 0 0 50 50" xml:space="preserve"><title>Close</title><path fill="currentColor" d="M29.8,25l19.6,19.6l-4.8,4.8L25,29.8L5.4,49.4l-4.8-4.8L20.2,25L0.6,5.4l4.8-4.8L25,20.2L44.6,0.6l4.8,4.8L29.8,25z"></path></svg> </button> </div> <div class='signup-modal' role='dialog' aria-labelledby='signup-dialog-title'> <div class='signup-modal__inner'> <div class='noe h0 align-c mt0 mb1' id='signup-dialog-title'>Sign Up</div> </div> <div class='modal__error fill-h px2 mb2 theme__accent bg-gray1 h5 pangram uppercase kern align-c medium hidden'> <div class='signup-modal__inner'></div> </div> <div class='signup-modal__inner'> <form class='sign-up-form'> <div class='input-container'> <input type='text' name='sign_up_first_name' id='sign_up_first_name' value='' class='' required> <label for='sign_up_first_name' data-label='First Name'>First Name</label> </div> <div class='input-container'> <input type='text' name='sign_up_last_name' id='sign_up_last_name' value='' class='' required> <label for='sign_up_last_name' data-label='Last Name'>Last Name</label> </div> <div class='input-container'> <input type='email' name='sign_up_email' id='sign_up_email' value='' class='' required> <label for='sign_up_email' data-label='Email'>Email</label> </div> <div class='input-container'> <input type='password' name='sign_up_password' id='sign_up_password' value='' class='password' required> <label for='sign_up_password' data-label='Password'>Password</label> </div> <div class='input-container'> <input type='password' name='sign_up_password_verify' id='sign_up_password_verify' value='' class='password-verify' required> <label for='sign_up_password_verify' data-label='Retype Password'>Retype Password</label> </div> <div class='align-c pv1'> <input type='submit' class='button login__submit orange mr1' value='Create an account' disabled> </div> </form> <div class='px2 gray3 pangram align-c light signup-modal__terms'> Creating an account means you accept Quanta Magazine's <br /> <a class='theme__accent link' href='/terms-conditions'>Terms & Conditions</a> and <a class='theme__accent link' href='/privacy-policy'>Privacy Policy</a> </div> </div> </div> </div> </div> </section> <script type="text/javascript" id="disqus_count-js-extra"> /* <![CDATA[ */ var countVars = {"disqusShortname":"quanta-mag"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/disqus-comment-system/public/js/comment_count.js?ver=3.1.1" id="disqus_count-js"></script> <script type="text/javascript" id="disqus_embed-js-extra"> /* <![CDATA[ */ var embedVars = {"disqusConfig":{"integration":"wordpress 3.1.1"},"disqusIdentifier":"146421 https:\/\/www.quantamagazine.org\/?p=146421","disqusShortname":"quanta-mag","disqusTitle":"Undergraduate Upends a 40-Year-Old Data Science Conjecture","disqusUrl":"https:\/\/www.quantamagazine.org\/undergraduate-upends-a-40-year-old-data-science-conjecture-20250210\/","postId":"146421"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/disqus-comment-system/public/js/comment_embed.js?ver=3.1.1" id="disqus_embed-js"></script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/quanta-education-interactive/jquery.validate.min.js?ver=6.6.2" id="jquery-validate-js"></script> <script type="text/javascript" id="edin-js-js-extra"> /* <![CDATA[ */ var EDIN = {"ajaxurl":"https:\/\/www.quantamagazine.org\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/quanta-education-interactive/edin.js?ver=6.6.2" id="edin-js-js"></script> <script type="text/javascript" id="privacy-consent-front-js-extra"> /* <![CDATA[ */ var privacyArgs = {"hideEffect":"fade","cookieTime":"2592000","secure":"1"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/sf-privacy-consent/js/front.min.js?ver=1.10" id="privacy-consent-front-js"></script> <script type="text/javascript" id="main-js-extra"> /* <![CDATA[ */ var qAjax = {"ajaxurl":"https:\/\/www.quantamagazine.org\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/dist/main.min.js?ver=1738854830" id="main-js"></script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/themes/quanta2024/frontend/js/mathjax/MathJax.js" id="mathjax-js"></script> <script type="text/javascript" id="favorites-js-extra"> /* <![CDATA[ */ var favorites_data = {"ajaxurl":"https:\/\/www.quantamagazine.org\/wp-admin\/admin-ajax.php","nonce":"23e9438ea9","favorite":"Favorite","favorited":"Favorited","includecount":"","indicate_loading":"","loading_text":"Loading","loading_image":"","loading_image_active":"","loading_image_preload":"","cache_enabled":"1","button_options":{"button_type":"custom","custom_colors":false,"box_shadow":false,"include_count":false,"default":{"background_default":false,"border_default":false,"text_default":false,"icon_default":false,"count_default":false},"active":{"background_active":false,"border_active":false,"text_active":false,"icon_active":false,"count_active":false}},"authentication_modal_content":"<p>Please login to add favorites.<\/p><p><a href=\"#\" data-favorites-modal-close>Dismiss this notice<\/a><\/p>","authentication_redirect":"","dev_mode":"","logged_in":"","user_id":"0","authentication_redirect_url":"https:\/\/www.quantamagazine.org\/mechanix\/"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.quantamagazine.org/wp-content/plugins/quanta-favorites/assets/js/favorites.min.js?ver=2.3.4" id="favorites-js"></script> <div role="banner" class="sf-top sf-fixed-bar"><div class="sf-fixed-bar-container"><div class="sf-fixed-bar-text-wrapper"><span class="sf-notice-text">We care about your data, and we'd like to use cookies to give you a smooth browsing experience. Please agree and read more about our <a href='/privacy-policy'>privacy policy.</a></span><a href="#" data-cookie-value="true" data-function="sf-set-consent" class="sf-button" >AGREE</a><a href="#" data-cookie-value="revoke" data-function="sf-set-consent" class="sf-button">DISMISS</a></div></div></div> </body> </html>