[{"id":248019,"date":"2026-10-07T17:29:28","date_gmt":"2026-10-07T22:29:28","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248019"},"modified":"2026-10-07T17:29:28","modified_gmt":"2026-10-07T22:29:28","slug":"consequences-of-qrh","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/","title":{"rendered":"Consequences of progress toward the Riemann Hypothesis"},"content":{"rendered":"<p>The Riemann Hypothesis (RH) is the conjecture that all the zeros of the Riemann zeta function \u03b6(<em>s<\/em>) in the critical strip, i.e. the region of the complex plane with real part between 0 and 1, have real part equal to \u00bd.<\/p>\n<p>The Quasi Riemann Hypothesis (QRH) says that there exists a constant \u03b8 &lt; 1 such that no zeros of \u03b6(<em>s<\/em>) have real part greater than \u03b8. <a href=\"https:\/\/github.com\/openai\/math\/blob\/main\/preprints\/The-Quasi-Riemann-Hypothesis-September-30-2026\/paper.pdf\">OpenAI<\/a> has published a paper claiming QRH with \u03b8 = 7\/8.<\/p>\n<p>The RH is so important to number theory that even partial results can have big consequences. This post will focus on one consequence: the error term in the Prime Number Theorem.<\/p>\n<p>The Prime Number Theorem says that \u03c0(<em>x<\/em>), the number of primes less than <em>x<\/em>, is asymptotically equal to Li(<em>x<\/em>). We&#8217;d like to know more specifically at what rate \u03c0(<em>x<\/em>) approaches Li(<em>x<\/em>).<\/p>\n<p>The best known result before the QRH announcement was<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/pnt_pre_qrh.svg\" alt=\"\\pi(x) = \\operatorname{Li}(x) + {\\cal O} \\left(x \\exp\\!\\left(-c\\,\\frac{(\\log x)^{3\/5}}{(\\log\\log x)^{1\/5}}\\right)\\right) \" width=\"360\" height=\"50\" \/><\/p>\n<p>If the QRH holds for some \u03b8, such as OpenAI&#8217;s assertion that \u03b8 = 7\/8,<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/pnt_qrh.svg\" alt=\"\\pi(x) = \\operatorname{Li}(x) + {\\cal O} \\left(x^\\theta\\,\\log x\\right). \" width=\"238\" height=\"36\" \/><br \/>\nIf RH holds, \u03b8 = \u00bd.<\/p>\n<p>Incidentally, you may have seen the Prime Number Theorem stated with\u00a0<em>x<\/em>\/log(<em>x<\/em>) rather than Li(<em>x<\/em>). These two functions are asymptotically equal, so they give the same theorem, if you&#8217;re not interested in quantifying the rate of convergence. The function Li(<em>x<\/em>) gives better error bounds.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Riemann Hypothesis (RH) is the conjecture that all the zeros of the Riemann zeta function \u03b6(s) in the critical strip, i.e. the region of the complex plane with real part between 0 and 1, have real part equal to \u00bd. The Quasi Riemann Hypothesis (QRH) says that there exists a constant \u03b8 &lt; 1 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[94],"class_list":["post-248019","post","type-post","status-publish","format-standard","hentry","category-math","tag-number-theory"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"number theory\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Consequences of progress toward the Riemann Hypothesis\" \/>\n\t\t<meta property=\"og:description\" content=\"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-07T22:29:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-07T22:29:28+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Consequences of progress toward the Riemann Hypothesis\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Consequences of progress toward the Riemann Hypothesis","description":"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/","robots":"max-image-preview:large","keywords":"number theory","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Consequences of progress toward the Riemann Hypothesis","og:description":"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/","article:published_time":"2026-10-07T22:29:28+00:00","article:modified_time":"2026-10-07T22:29:28+00:00","twitter:card":"summary","twitter:title":"Consequences of progress toward the Riemann Hypothesis","twitter:description":"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248019","title":null,"description":"Consequences of the recent announcement of a proof of the Quasi Riemann Hypothesis","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-07 21:54:44","updated":"2026-10-07 22:29:28","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tConsequences of progress toward the Riemann Hypothesis\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Consequences of progress toward the Riemann Hypothesis","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/consequences-of-qrh\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248019","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=248019"}],"version-history":[{"count":1,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248019\/revisions"}],"predecessor-version":[{"id":248020,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248019\/revisions\/248020"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248019"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248019"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248015,"date":"2026-10-07T16:41:47","date_gmt":"2026-10-07T21:41:47","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248015"},"modified":"2026-10-07T16:45:37","modified_gmt":"2026-10-07T21:45:37","slug":"faster-fourier-transform","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/","title":{"rendered":"Faster Fourier Transform"},"content":{"rendered":"<p>The Fast Fourier Transform (FFT) algorithm can compute the discrete Fourier transform of a sequence of length\u00a0<em>n<\/em> in time<\/p>\n<p style=\"padding-left: 40px;\"><em>O<\/em>(<em>n<\/em> log\u00a0<em>n<\/em>).<\/p>\n<p><a href=\"https:\/\/github.com\/openai\/math\/blob\/main\/preprints\/An-explicit-power-saving-for-the-exact-discrete-Fourier-transform-September-25-2026\/main.pdf\">OpenAI<\/a> recently posted a paper saying there is an algorithm that could compute the discrete Fourier transform in<\/p>\n<p style=\"padding-left: 40px;\"><em>O<\/em>(<em>n<\/em> (log\u00a0<em>n<\/em>)<sup>1 \u2212 \u03b5<\/sup>)<\/p>\n<p>time for \u03b5 = 10<sup>\u221213<\/sup>.<\/p>\n<p>This result is amazing. It seemed that <em>O<\/em>(<em>n<\/em> log\u00a0<em>n<\/em>) was as good as you could do, which it provably is for sorting algorithms.<\/p>\n<p>The result is also of absolutely no practical value, for now. But since the theorem shows that our assumptions were wrong regarding what we thought was possible, however slightly, maybe we&#8217;re in for further surprises. Maybe the \u03b5 crack will grow. It wouldn&#8217;t be the first time.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2015\/09\/08\/fft-big-data\/'>The FFT and big data<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2024\/02\/03\/fft-reciprocity\/'>FFT and quadratic reciprocity<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2023\/09\/03\/dft-numpy-mathematica\/'>DFT conventions<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The Fast Fourier Transform (FFT) algorithm can compute the discrete Fourier transform of a sequence of length\u00a0n in time O(n log\u00a0n). OpenAI recently posted a paper saying there is an algorithm that could compute the discrete Fourier transform in O(n (log\u00a0n)1 \u2212 \u03b5) time for \u03b5 = 10\u221213. This result is amazing. It seemed that [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[178],"class_list":["post-248015","post","type-post","status-publish","format-standard","hentry","category-math","tag-fourier-analysis"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"fourier analysis\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Faster Fourier Transform\" \/>\n\t\t<meta property=\"og:description\" content=\"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-07T21:41:47+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-07T21:45:37+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Faster Fourier Transform\" \/>\n\t\t<meta name=\"twitter:description\" content=\"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Faster Fourier Transform","description":"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/","robots":"max-image-preview:large","keywords":"fourier analysis","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Faster Fourier Transform","og:description":"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/","article:published_time":"2026-10-07T21:41:47+00:00","article:modified_time":"2026-10-07T21:45:37+00:00","twitter:card":"summary","twitter:title":"Faster Fourier Transform","twitter:description":"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248015","title":null,"description":"The fast Fourier transform is no longer the fastest way to compute the discrete Fourier transform, in some VERY theoretical sense.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-07 21:27:22","updated":"2026-10-07 21:55:00","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tFaster Fourier Transform\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Faster Fourier Transform","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/faster-fourier-transform\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248015","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=248015"}],"version-history":[{"count":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248015\/revisions"}],"predecessor-version":[{"id":248018,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248015\/revisions\/248018"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248015"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248015"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248015"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248013,"date":"2026-10-07T16:19:20","date_gmt":"2026-10-07T21:19:20","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248013"},"modified":"2026-10-07T16:20:46","modified_gmt":"2026-10-07T21:20:46","slug":"irrationality-exponent-of-pi","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/","title":{"rendered":"Irrationality exponent of \u03c0"},"content":{"rendered":"<p>For a real number\u00a0<em>x<\/em>, the irrationality index \u03bc(<em>x<\/em>) is a way of measuring how well\u00a0<em>x<\/em> can be approximated by rational numbers. If\u00a0<em>x<\/em> is rational, \u03bc(<em>x<\/em>) = 1. If\u00a0<em>x<\/em> is irrational, \u03bc(<em>x<\/em>) \u2265 2.<\/p>\n<p><a href=\"https:\/\/github.com\/openai\/math\/tree\/main\/preprints\/The-irrationality-exponent-of-pi-is-2-September-24-2026\">OpenAI<\/a> recently published a proof that \u03bc(\u03c0) = 2. Almost all real numbers have irrationality exponent 2, so the new result says \u03c0 is typical in this regard. There are numbers proven to have irrationality index greater than 2 (more on that below), but \u03c0 isn&#8217;t one of them.<\/p>\n<p>The irrationality exponent \u03bc(<em>x<\/em>) is defined as the supremum of the set of values \u03bd such that<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/irrational_exponent.svg\" alt=\"0 &lt; \\left| x - \\frac{p}{q} \\right| &lt; \\frac{1}{q^\\nu}\" width=\"135\" height=\"48\" \/><\/p>\n<p>for infinitely many coprime integers\u00a0<em>p<\/em> and\u00a0<em>q<\/em> with\u00a0<em>q<\/em> &gt; 0.<\/p>\n<p>This means that the approximation error for approximating \u03c0 with a rational number\u00a0<em>p<\/em>\/<em>q<\/em> is typically on the order of 1\/<em>q<\/em>\u00b2, just like most irrational numbers.<\/p>\n<p>There are numbers with higher irrationality exponents. For example, Cahen&#8217;s constant\u00a0<em>C<\/em> has irrationality exponent 3. This means\u00a0<em>C<\/em> is an irrational number that has infinitely many rational approximations\u00a0<em>p<\/em>\/<em>q<\/em> with error less than 1\/<em>q<\/em>\u00b3.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a real number\u00a0x, the irrationality index \u03bc(x) is a way of measuring how well\u00a0x can be approximated by rational numbers. If\u00a0x is rational, \u03bc(x) = 1. If\u00a0x is irrational, \u03bc(x) \u2265 2. OpenAI recently published a proof that \u03bc(\u03c0) = 2. Almost all real numbers have irrationality exponent 2, so the new result says [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[94],"class_list":["post-248013","post","type-post","status-publish","format-standard","hentry","category-math","tag-number-theory"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"number theory\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Irrationality exponent of \u03c0\" \/>\n\t\t<meta property=\"og:description\" content=\"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-07T21:19:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-07T21:20:46+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Irrationality exponent of \u03c0\" \/>\n\t\t<meta name=\"twitter:description\" content=\"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Irrationality exponent of \u03c0","description":"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/","robots":"max-image-preview:large","keywords":"number theory","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Irrationality exponent of \u03c0","og:description":"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/","article:published_time":"2026-10-07T21:19:20+00:00","article:modified_time":"2026-10-07T21:20:46+00:00","twitter:card":"summary","twitter:title":"Irrationality exponent of \u03c0","twitter:description":"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248013","title":null,"description":"The irrationality exponent of \u03c0 is 2, just like almost all real numbers.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-07 20:47:23","updated":"2026-10-07 21:55:00","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tIrrationality exponent of \u03c0\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Irrationality exponent of \u03c0","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/07\/irrationality-exponent-of-pi\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248013","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=248013"}],"version-history":[{"count":1,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248013\/revisions"}],"predecessor-version":[{"id":248014,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248013\/revisions\/248014"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248013"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248013"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248013"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248010,"date":"2026-10-06T19:21:52","date_gmt":"2026-10-07T00:21:52","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248010"},"modified":"2026-10-06T19:21:52","modified_gmt":"2026-10-07T00:21:52","slug":"lissajous-and-bowditch","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/","title":{"rendered":"Lissajous and Bowditch"},"content":{"rendered":"<p>I was skimming through David Well&#8217;s book The Penguin Dictionary of Curious and Interesting Geometry and was surprised by this entry:<\/p>\n<blockquote><p><strong>Lissajous figures<\/strong> or\u00a0<strong>Bowditch curves<\/strong> First discussed by Nathaniel Bowditch in 1815, and later by Jules Antoine Lissajous in 1857 \u2026<\/p><\/blockquote>\n<p>I wrote a <a href=\"https:\/\/www.johndcook.com\/blog\/2019\/10\/08\/lissajous-curves-and-knots\/\">couple<\/a> <a href=\"https:\/\/www.johndcook.com\/blog\/2019\/10\/08\/harmonographs\/\">posts<\/a> about Lissajous curves years ago, and recently I wrote a <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/\">couple<\/a> <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/\">posts<\/a> about Nathan Bowditch, but I didn&#8217;t realize there was a connection between them.<\/p>\n<p>I asked Claude to pin down Bowditch&#8217;s publication to see whether the curves came up in the course of his work on navigation. Here&#8217;s the answer I got.<\/p>\n<blockquote><p>Bowditch&#8217;s paper was &#8220;On the Motion of a Pendulum Suspended from Two Points,&#8221; published in the Memoirs of the American Academy of Arts and Sciences (Vol. 3, Part 2) in 1815.<\/p>\n<p>He studied a compound pendulum hung from two points (a Y-shaped suspension, sometimes called a Blackburn pendulum). This lets the bob swing at different frequencies in two perpendicular directions, and he worked out mathematically the curves the bob traces. Those curves are what we now call Lissajous figures. Jules Antoine Lissajous studied them independently and much more visibly in 1857, using light beams reflected off vibrating tuning forks, and his name stuck. Because of Bowditch&#8217;s priority, the curves are sometimes called Bowditch curves.<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>I was skimming through David Well&#8217;s book The Penguin Dictionary of Curious and Interesting Geometry and was surprised by this entry: Lissajous figures or\u00a0Bowditch curves First discussed by Nathaniel Bowditch in 1815, and later by Jules Antoine Lissajous in 1857 \u2026 I wrote a couple posts about Lissajous curves years ago, and recently I wrote [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[64],"class_list":["post-248010","post","type-post","status-publish","format-standard","hentry","category-math","tag-history"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"history\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Lissajous and Bowditch\" \/>\n\t\t<meta property=\"og:description\" content=\"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-07T00:21:52+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-07T00:21:52+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Lissajous and Bowditch\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Lissajous and Bowditch","description":"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/","robots":"max-image-preview:large","keywords":"history","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Lissajous and Bowditch","og:description":"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/","article:published_time":"2026-10-07T00:21:52+00:00","article:modified_time":"2026-10-07T00:21:52+00:00","twitter:card":"summary","twitter:title":"Lissajous and Bowditch","twitter:description":"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248010","title":null,"description":"Nathaniel Bowditch studied Lissajous curves before Lissajous did, though Lissajous studied them more thoroughly and more photogenically.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-07 00:06:06","updated":"2026-10-07 10:07:59","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tLissajous and Bowditch\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Lissajous and Bowditch","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/lissajous-and-bowditch\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=248010"}],"version-history":[{"count":1,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248010\/revisions"}],"predecessor-version":[{"id":248011,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248010\/revisions\/248011"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248000,"date":"2026-10-06T14:46:28","date_gmt":"2026-10-06T19:46:28","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248000"},"modified":"2026-10-06T14:46:28","modified_gmt":"2026-10-06T19:46:28","slug":"godel-lob","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/","title":{"rendered":"A topological model for provability logic"},"content":{"rendered":"<p>G\u00f6del&#8217;s incompleteness theorem illustrated the need to distinguish between what is true and what is provable. There are true statements that cannot be proven.<\/p>\n<p>Let \u25a1<em>p<\/em> denote the assertion that\u00a0<em>p<\/em> is provable in Peano arithmetic. The logic with this interpretation for the \u25a1 operator is the G\u00f6del-L\u00f6b logic, also called provability logic. This is a normal modal logic with the additional axiom<\/p>\n<p style=\"padding-left: 40px;\"><span style=\"font-family: 'STIX Two Math', 'Cambria Math', 'Segoe UI Symbol', 'Noto Sans Math', 'DejaVu Sans', serif; font-style: normal;\">\u25a1(\u25a1<i>p<\/i>\u00a0\u2192\u00a0<i>p<\/i>) \u2192 \u25a1<i>p<\/i>,<\/span><\/p>\n<p>known as L\u00f6b&#8217;s axiom.<\/p>\n<p>A couple days ago I wrote about <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/\">topological models<\/a> for modal logic. Is there a topological model for G\u00f6del-L\u00f6b logic? There is, but it&#8217;s not quite the same construction as in the previous post.<\/p>\n<p>A topological model of G\u00f6del-L\u00f6b logic associates\u00a0<em>p<\/em> with a set <em>P<\/em> and \u25c7<i>p<\/i> with the\u00a0<strong>derived set<\/strong> of\u00a0<em>P<\/em> rather than its closure.<\/p>\n<p>The difference between the closure of\u00a0<em>P<\/em> and the derived set of <em>P<\/em> is subtle, but important to this discussion. The closure of a set <em>P<\/em> is the union of <em>P<\/em> and all of its limit points. The derived set of <em>P<\/em> is the set of limit points of <em>P<\/em>. The distinction is that not every point of <em>P<\/em> is necessarily a limit point of <em>P<\/em>. A point <em>x<\/em> is a limit point of <em>P<\/em> if every open set containing <em>x<\/em> contains a point of <em>P<\/em> <em>in addition to x itself<\/em>.<\/p>\n<p>A topological space <em>X<\/em> that models G\u00f6del-L\u00f6b logic must be\u00a0<strong>scattered<\/strong>, meaning that every open set must contain an isolated point, a point with no limit points. For example, consider<\/p>\n<p style=\"padding-left: 40px;\"><em>X<\/em> = {0} \u222a {1, \u00bd, \u2153, \u00bc, \u2026}<\/p>\n<p>with the topology inherited from the ordinary topology on the real line. Then every point except 0 is isolated, and every open set contains isolated points.<\/p>\n<p>A statement in G\u00f6del-L\u00f6b logic is true if its topological interpretation holds for\u00a0<strong>all<\/strong> scattered spaces.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>G\u00f6del&#8217;s incompleteness theorem illustrated the need to distinguish between what is true and what is provable. There are true statements that cannot be proven. Let \u25a1p denote the assertion that\u00a0p is provable in Peano arithmetic. The logic with this interpretation for the \u25a1 operator is the G\u00f6del-L\u00f6b logic, also called provability logic. This is a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[],"class_list":["post-248000","post","type-post","status-publish","format-standard","hentry","category-math"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"A topological model for provability logic\" \/>\n\t\t<meta property=\"og:description\" content=\"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-06T19:46:28+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-06T19:46:28+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"A topological model for provability logic\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"A topological model for provability logic","description":"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"A topological model for provability logic","og:description":"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/","article:published_time":"2026-10-06T19:46:28+00:00","article:modified_time":"2026-10-06T19:46:28+00:00","twitter:card":"summary","twitter:title":"A topological model for provability logic","twitter:description":"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248000","title":null,"description":"Provability logic, a.k.a. G\u00f6del-L\u00f6b logic, is a modal logic in which the box operator means a proposition is provable. It has a different topological model.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-05 13:14:10","updated":"2026-10-07 00:04:01","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tA topological model for provability logic\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"A topological model for provability logic","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/06\/godel-lob\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248000","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=248000"}],"version-history":[{"count":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248000\/revisions"}],"predecessor-version":[{"id":248009,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248000\/revisions\/248009"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247975,"date":"2026-10-04T07:34:22","date_gmt":"2026-10-04T12:34:22","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247975"},"modified":"2026-10-04T18:29:35","modified_gmt":"2026-10-04T23:29:35","slug":"miquels-pentagon-theorem","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/","title":{"rendered":"Miquel&#8217;s pentagon theorem"},"content":{"rendered":"<p>An <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/\">earlier post<\/a> presented an elegant plane geometry theorem discovered by the 19th century school teacher Auguste Miquel. This post presents his pentagon theorem.<\/p>\n<p>Start with a pentagon. It may be irregular, but it needs to be convex.<\/p>\n<p>Extend each of the sides of the pentagon to form a star, then draw give circles, one through each of the triangles formed by a side of the pentagon and a vertex of the star.<\/p>\n<p>The five circles intersect in pairs at ten points: the five vertices of the pentagon and five new points. The five new points lie on a circle.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium\" src=\"https:\/\/www.johndcook.com\/miquel_pentagon.png\" width=\"480\" height=\"553\" \/><\/p>\n<p>The converse of this theorem is known as the five circles theorem.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>An earlier post presented an elegant plane geometry theorem discovered by the 19th century school teacher Auguste Miquel. This post presents his pentagon theorem. Start with a pentagon. It may be irregular, but it needs to be convex. Extend each of the sides of the pentagon to form a star, then draw give circles, one [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[224],"class_list":["post-247975","post","type-post","status-publish","format-standard","hentry","category-math","tag-geometry"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Miquel&#039;s pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"geometry\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Miquel\u2019s pentagon theorem\" \/>\n\t\t<meta property=\"og:description\" content=\"Miquel&#039;s pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-04T12:34:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-04T23:29:35+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Miquel\u2019s pentagon theorem\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Miquel&#039;s pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Miquel\u2019s pentagon theorem","description":"Miquel's pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/","robots":"max-image-preview:large","keywords":"geometry","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Miquel\u2019s pentagon theorem","og:description":"Miquel's pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/","article:published_time":"2026-10-04T12:34:22+00:00","article:modified_time":"2026-10-04T23:29:35+00:00","twitter:card":"summary","twitter:title":"Miquel\u2019s pentagon theorem","twitter:description":"Miquel's pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247975","title":null,"description":"Miquel's pentagon theorem, an elegant and relatively recent theorem in Euclidean geometry.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-03 23:18:07","updated":"2026-10-04 23:29:59","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tMiquel\u2019s pentagon theorem\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Miquel&#8217;s pentagon theorem","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/miquels-pentagon-theorem\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=247975"}],"version-history":[{"count":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247975\/revisions"}],"predecessor-version":[{"id":247999,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247975\/revisions\/247999"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247985,"date":"2026-10-04T07:25:19","date_gmt":"2026-10-04T12:25:19","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247985"},"modified":"2026-10-05T20:59:12","modified_gmt":"2026-10-06T01:59:12","slug":"topological-models-of-modal-logic","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/","title":{"rendered":"Topological models of modal logic"},"content":{"rendered":"<p>The <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/\">previous post<\/a> discussed a superficial connection between modal logic and topology, that both use the terms <em>regular<\/em> and\u00a0<em>normal<\/em> to indicate added sets of axioms. McKinsey and Tarski developed a deeper connection between modal logic and topology that we&#8217;ll discuss here.<\/p>\n<p>Starting with a topological space\u00a0<em>X<\/em> and a proposition <em>p<\/em>, define [[<em>p<\/em>]] as the set of points in\u00a0<em>X<\/em> at which\u00a0<em>p<\/em> is true. Define \u25a1<em>p<\/em> to be true at points in the interior of [[<em>p<\/em>]] and define \u25c7<em>p<\/em> to be true on the closure of [[<em>p<\/em>]].<\/p>\n<p>You could think of \u25a1<em>p<\/em> as the points where <em>p<\/em> is robustly true. Not only is <em>p<\/em>\u00a0true at <em>x<\/em>, there&#8217;s some wiggle room around <em>x<\/em>, i.e. an open set, in which\u00a0<em>p<\/em> remains true.<\/p>\n<p>You could think of \u25c7<em>p<\/em> as the points where we cannot rule out the possibility of <em>p<\/em> being true using open sets. If \u25c7<em>p<\/em> includes\u00a0<em>x<\/em>, any open set containing\u00a0<em>x<\/em> also contains part of \u25c7<em>p<\/em>, though it may also contain points outside of \u25c7<em>p.<\/em><\/p>\n<h2>Regularity<\/h2>\n<p>For any topology on <em>X<\/em>, the logic constructed above is normal. The axiom<\/p>\n<p><img class='aligncenter' src='https:\/\/www.johndcook.com\/topmodal1.svg' alt='\\Diamond p \\Leftrightarrow \\lnot (\\Box \\lnot p)' style='background-color:white' height='18' width='121' \/><\/p>\n<p>holds because the closure of a set is the complement of the interior of its complement [1].<\/p>\n<p>Note that this is a regularity result for the modal logic, not the topology. The topology could be arbitrary, and not necessarily regular or normal in the topological sense.<\/p>\n<h2>S4<\/h2>\n<p>The logic constructed above also satisfies a couple more axioms. We have<\/p>\n<p><img class='aligncenter' src='https:\/\/www.johndcook.com\/topmodal2.svg' alt='\\Box p \\to p' style='background-color:white' height='14' width='64' \/><\/p>\n<p>because the interior of a set is a subset of the set, and<\/p>\n<p><img class='aligncenter' src='https:\/\/www.johndcook.com\/topmodal3.svg' alt='\\Box p \\to \\Box\\Box p' style='background-color:white' height='14' width='90' \/><\/p>\n<p>because the interior of the interior of a set is simply the interior. This means the modal logic corresponding to a topology satisfies the S4 axioms. You could say S4 is the logic that corresponds to the McKinsey and Tarski logic of all topological spaces.<\/p>\n<h2>More logics and more topologies<\/h2>\n<p>So S4 is the logic that corresponds to\u00a0<em>all<\/em> topologies. We could look at more restricted topologies and ask what are their corresponding logics. Or we could start with a modal logic and ask whether there&#8217;s a topology that models that logic.<\/p>\n<p>Interesting logics correspond to badly behaved topological spaces. Familiar topological spaces like the real line correspond to S4.<\/p>\n<h3>Trivial modal logic<\/h3>\n<p>The discrete topology corresponds to the trivial modal logic. All sets are open, and closed, so any set is the same as its interior and its closure. So \u25a1<em>p<\/em> and \u25c7<em>p<\/em> reduce to just\u00a0<em>p<\/em>.<\/p>\n<h3>S5<\/h3>\n<p>For the indiscrete topology, \u25a1<em>p<\/em> corresponds to a proposition holding everywhere and \u25c7<em>p<\/em> corresponds to it holding somewhere. If the topological space has infinitely many points, the corresponding modal logic is S5. [2]<\/p>\n<h3>Between S4 and S5<\/h3>\n<p>The cofinite topology on an infinite set\u00a0<em>X<\/em> defines a set\u00a0<em>U<\/em> to be open if the complement of\u00a0<em>U<\/em> is finite. The McKinsey-Tarski logic of the cofinite topology is somewhere between S4 and S5. You can show that the formula<\/p>\n<p><img class='aligncenter' src='https:\/\/www.johndcook.com\/topmodal4.svg' alt='p \\land \\Diamond\\Box p \\to \\Box p' style='background-color:white' height='17' width='126' \/><\/p>\n<p>holds, which doesn&#8217;t hold in S4, and the formula<\/p>\n<p><img class='aligncenter' src='https:\/\/www.johndcook.com\/topmodal5.svg' alt='\\Diamond p \\to \\Box\\Diamond p' style='background-color:white' height='17' width='95' \/><\/p>\n<p>does not hold, though it must hold in S5.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2022\/01\/21\/modal-logic-and-sf\/\">Modal logic and science fiction<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2021\/12\/30\/modal-axioms\/\">Naming and numbering modal logics<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2018\/10\/30\/modal-logic-security\/\">Modal logic and cybersecurity<\/a><\/li>\n<\/ul>\n<p>[1] We should also verify that if <em>A<\/em> \u2229\u00a0<em>B<\/em> \u2282\u00a0<em>C<\/em>, then Interior(<em>A<\/em>) \u2229 Interior(<em>B<\/em>) \u2282 Interior(<em>C<\/em>).<\/p>\n<p>[2] Propositions can only have a finite number of terms. Having infinite points in the topological space prevents the corresponding logic from proving theorems that don&#8217;t necessarily hold in S5.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The previous post discussed a superficial connection between modal logic and topology, that both use the terms regular and\u00a0normal to indicate added sets of axioms. McKinsey and Tarski developed a deeper connection between modal logic and topology that we&#8217;ll discuss here. Starting with a topological space\u00a0X and a proposition p, define [[p]] as the set [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-247985","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Topological models of modal logic\" \/>\n\t\t<meta property=\"og:description\" content=\"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-04T12:25:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-06T01:59:12+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Topological models of modal logic\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Topological models of modal logic","description":"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Topological models of modal logic","og:description":"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/","article:published_time":"2026-10-04T12:25:19+00:00","article:modified_time":"2026-10-06T01:59:12+00:00","twitter:card":"summary","twitter:title":"Topological models of modal logic","twitter:description":"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247985","title":null,"description":"Topological spaces provide models of modal logics where the box operator is interpreted as the interior of a set and the diamond operator its closure.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-04 11:10:36","updated":"2026-10-06 02:39:04","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/uncategorized\/\" title=\"Uncategorized\">Uncategorized<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tTopological models of modal logic\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Uncategorized","link":"https:\/\/www.johndcook.com\/blog\/category\/uncategorized\/"},{"label":"Topological models of modal logic","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/topological-models-of-modal-logic\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=247985"}],"version-history":[{"count":8,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247985\/revisions"}],"predecessor-version":[{"id":248008,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247985\/revisions\/248008"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247985"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247985"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247977,"date":"2026-10-04T07:24:33","date_gmt":"2026-10-04T12:24:33","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247977"},"modified":"2026-10-04T08:24:42","modified_gmt":"2026-10-04T13:24:42","slug":"modal-topology","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/","title":{"rendered":"Modal logic and topology"},"content":{"rendered":"<p>You can&#8217;t say much about modal logic in general. You have to be more specific to get anywhere. You have to choose some axioms. Ideally the axioms you need for your application correspond to a named set of axioms that has been studied before.<\/p>\n<p>The situation is similar in point-set topology. You can&#8217;t say very much about a general topological space. You have to specify some separation axioms to get going.<\/p>\n<h2>Bare bones<\/h2>\n<h3>Modal logic<\/h3>\n<p>A modal logic is any set of formulas in the modal language that:<\/p>\n<ol>\n<li>contains all propositional tautologies,<\/li>\n<li>is closed under modus ponens, and<\/li>\n<li>is closed under uniform substitution.<\/li>\n<\/ol>\n<p>In particular, this definition requires <em>nothing<\/em> of the modal operator \u25a1 (\u201cbox\u201d). You just have propositional logic with a funny symbol added that could mean anything.<\/p>\n<h3>Topology<\/h3>\n<p>A topological space is a set\u00a0<em>X<\/em> along with a set of subsets of\u00a0<em>X<\/em> called open sets. The empty set and the full space\u00a0<em>X<\/em> are open sets. Furthermore, the set of open sets is closed under finite intersections and arbitrary unions.<\/p>\n<p>There&#8217;s not much you can say about topological spaces in general because, for example, the definition includes extreme cases such as the discrete topology (every subset of <em>X<\/em> is open) and the indiscrete topology (only the empty set and\u00a0<em>X<\/em> are open).<\/p>\n<h2>Regular and normal<\/h2>\n<p>Like many areas of mathematics, logic and topology use the terms &#8220;regular&#8221; and &#8220;normal&#8221; to refer to systems with common choices of extra structure.<\/p>\n<h3>Modal logic<\/h3>\n<p>A regular modal logic is a normal modal logic with a second modal operator \u25c7 (&#8220;diamond&#8221;) that satisfies<\/p>\n<p style=\"padding-left: 40px;\">\u25c7 <em>p<\/em> \u21d4 \u00ac (\u25a1 \u00ac <em>p<\/em>)<\/p>\n<p>and has the inference rule\u00a0(<em>p<\/em> \u2227\u00a0<em>q<\/em>) \u2192 <em>r<\/em> implies (\u25a1<em>p<\/em> \u2227\u00a0\u25a1<em>q<\/em>) \u2192 \u25a1<em>r.<\/em><\/p>\n<p>A modal logic is normal if it satisfies the axiom<\/p>\n<p style=\"padding-left: 40px;\">\u25a1 (<em>p<\/em> \u2192 <em>q<\/em>) \u2192 (\u25a1 <em>p<\/em> \u2192 \u25a1 <em>q<\/em>)<\/p>\n<p>and the inference rule that if\u00a0<em>p<\/em> is a theorem, \u25a1<em>p<\/em> is also a theorem.<\/p>\n<h3>Topology<\/h3>\n<p>Topology also uses\u00a0<em>regular<\/em> and\u00a0<em>normal<\/em> to refer to adding a few axioms.<\/p>\n<p>A regular topological space is one in which you can separate points from closed sets. Given a point\u00a0<em>x<\/em> and a closed set\u00a0<em>F<\/em> not containing\u00a0<em>x<\/em>, there exist disjoint open sets <em>U<\/em> and <em>V<\/em> such that\u00a0<em>x<\/em> is contained in\u00a0<em>U<\/em> and\u00a0<em>F<\/em> is contained in\u00a0<em>V<\/em>. [1]<\/p>\n<p>A normal topological space is one in which you can separate disjoint closed sets.<\/p>\n<p>For many mathematicians, a metric space is the weakest topology they&#8217;re interested in, and metric spaces are normal. But weaker topologies come up. The Zariski topology in algebraic geometry is not regular, and the weak topology on an infinite dimensional Banach space is regular but not normal.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2022\/01\/21\/modal-logic-and-sf\/\">Modal logic and science fiction<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2021\/12\/30\/modal-axioms\/\">Naming and numbering modal logics<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2018\/10\/30\/modal-logic-security\/\">Modal logic and cybersecurity<\/a><\/li>\n<\/ul>\n<p>[1] Why do we use\u00a0<em>F<\/em> to denote a closed set? It&#8217;s a convention that goes back to the French word\u00a0<em lang=\"fr\">ferm\u00e9<\/em> for &#8220;closed.&#8221;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>You can&#8217;t say much about modal logic in general. You have to be more specific to get anywhere. You have to choose some axioms. Ideally the axioms you need for your application correspond to a named set of axioms that has been studied before. The situation is similar in point-set topology. You can&#8217;t say very [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[150,153],"class_list":["post-247977","post","type-post","status-publish","format-standard","hentry","category-math","tag-logic","tag-topology"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Comparing &quot;regular&quot; and &quot;normal&quot; in modal logic and in topology. McKinsey and Tarski&#039;s modal logic for topology.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"logic,topology\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Modal logic and topology\" \/>\n\t\t<meta property=\"og:description\" content=\"Comparing &quot;regular&quot; and &quot;normal&quot; in modal logic and in topology. McKinsey and Tarski&#039;s modal logic for topology.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-04T12:24:33+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-04T13:24:42+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Modal logic and topology\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Comparing &quot;regular&quot; and &quot;normal&quot; in modal logic and in topology. McKinsey and Tarski&#039;s modal logic for topology.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Modal logic and topology","description":"Comparing \"regular\" and \"normal\" in modal logic and in topology. McKinsey and Tarski's modal logic for topology.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/","robots":"max-image-preview:large","keywords":"logic,topology","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Modal logic and topology","og:description":"Comparing &quot;regular&quot; and &quot;normal&quot; in modal logic and in topology. McKinsey and Tarski's modal logic for topology.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/","article:published_time":"2026-10-04T12:24:33+00:00","article:modified_time":"2026-10-04T13:24:42+00:00","twitter:card":"summary","twitter:title":"Modal logic and topology","twitter:description":"Comparing &quot;regular&quot; and &quot;normal&quot; in modal logic and in topology. McKinsey and Tarski's modal logic for topology.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247977","title":null,"description":"Comparing \"regular\" and \"normal\" in modal logic and in topology. McKinsey and Tarski's modal logic for topology.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-04 00:00:34","updated":"2026-10-04 16:18:00","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tModal logic and topology\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Modal logic and topology","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/04\/modal-topology\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247977","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=247977"}],"version-history":[{"count":10,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247977\/revisions"}],"predecessor-version":[{"id":247997,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247977\/revisions\/247997"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247977"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247977"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247977"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247973,"date":"2026-10-03T17:53:41","date_gmt":"2026-10-03T22:53:41","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247973"},"modified":"2026-10-03T19:27:40","modified_gmt":"2026-10-04T00:27:40","slug":"miquels-pivot-theorem","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/","title":{"rendered":"Miquel&#8217;s pivot theorem"},"content":{"rendered":"<p>Euclidean geometry dates back at least to Euclid (circa 300 BC), and so you might think it&#8217;s been pretty well picked over by now. And yet people still occasionally discover new plane geometry theorems.<\/p>\n<p>Some of these new theorems are complicated, asking question that the ancients would not have asked. But once in a while someone discovers a gem that the ancients could have appreciated but didn&#8217;t find.<\/p>\n<p>One example is Miquel\u2019s pivot theorem [1]. The theorem was discovered in 1838, which relative to the timeline of Euclidean geometry makes it a recent discovery.<\/p>\n<p>Choose a point on each side of a triangle. Then for each vertex draw a circle through it and the chosen points on the adjacent sides. Miquel&#8217;s theorem says the three circles meet in one point.<\/p>\n<p>Here&#8217;s an example. For a trangle\u00a0<em>ABC<\/em>, choose points\u00a0<em>D<\/em>, <em>E<\/em>, and <em>F<\/em> on each side. The three circles described in the theorem intersect at <em>M<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium\" src=\"https:\/\/www.johndcook.com\/miquel1.png\" width=\"480\" height=\"440\" \/><\/p>\n<p>Now the three points\u00a0<em>D<\/em>, <em>E<\/em>, and <em>F<\/em>\u00a0don&#8217;t have to be limited to the sides of the triangle; they can be on the line segment containing the side. Here&#8217;s an example where <em>D<\/em> is outside the triangle.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium aligncenter\" src=\"https:\/\/www.johndcook.com\/miquel2.png\" width=\"480\" height=\"438\" \/><\/p>\n<p>And here&#8217;s an example where two of the chosen points,\u00a0<em>D<\/em> and\u00a0<em>F<\/em>, are outside the triangle. The three circles still intersect at one point\u00a0<em>M<\/em>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium\" src=\"https:\/\/www.johndcook.com\/miquel3.png\" width=\"480\" height=\"527\" \/><\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2023\/06\/18\/circle-through-three-points\/\">Equation of a circle through three points<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2023\/01\/23\/van-aubels-theorem\/\">Van Aubel&#8217;s theorem<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2026\/08\/18\/big-little-hexagon\/\">Big little hexagon<\/a><\/li>\n<\/ul>\n<p>[1] Miquel, Auguste (1838),\u00a0<span lang=\"fr\">&#8220;M\u00e9moire de G\u00e9om\u00e9trie&#8221;<\/span>,\u00a0<span lang=\"fr\">Journal de Math\u00e9matiques Pures et Appliqu\u00e9es<\/span>,\u00a01:\u00a0485\u2013487<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Euclidean geometry dates back at least to Euclid (circa 300 BC), and so you might think it&#8217;s been pretty well picked over by now. And yet people still occasionally discover new plane geometry theorems. Some of these new theorems are complicated, asking question that the ancients would not have asked. But once in a while [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[224],"class_list":["post-247973","post","type-post","status-publish","format-standard","hentry","category-math","tag-geometry"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"geometry\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Miquel\u2019s pivot theorem\" \/>\n\t\t<meta property=\"og:description\" content=\"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-03T22:53:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-04T00:27:40+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Miquel\u2019s pivot theorem\" \/>\n\t\t<meta name=\"twitter:description\" content=\"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Miquel\u2019s pivot theorem","description":"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/","robots":"max-image-preview:large","keywords":"geometry","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Miquel\u2019s pivot theorem","og:description":"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/","article:published_time":"2026-10-03T22:53:41+00:00","article:modified_time":"2026-10-04T00:27:40+00:00","twitter:card":"summary","twitter:title":"Miquel\u2019s pivot theorem","twitter:description":"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247973","title":null,"description":"An elegant plane geometry theorem, discovered recently relative to the 23 centuries since Euclid.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-10-03 22:26:34","updated":"2026-10-04 00:29:59","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tMiquel\u2019s pivot theorem\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"Miquel&#8217;s pivot theorem","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/03\/miquels-pivot-theorem\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=247973"}],"version-history":[{"count":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247973\/revisions"}],"predecessor-version":[{"id":247978,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247973\/revisions\/247978"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247956,"date":"2026-09-25T06:45:31","date_gmt":"2026-09-25T11:45:31","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247956"},"modified":"2026-09-27T23:26:29","modified_gmt":"2026-09-28T04:26:29","slug":"dawn-dusk-orbit","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/","title":{"rendered":"Servers in dawn-dusk orbit"},"content":{"rendered":"<p>Despite the predictions that no one would ever put build data centers in space, Google is starting on Thursday. Google&#8217;s prototype satellite will be one of 130 payloads on SpaceX&#8217;s Transporter 18 mission on October 1.<\/p>\n<p>The server will follow a dawn-dusk orbit, a special case of a sun-synchronous orbit (SSO), following the terminator line between daylight on dark on the earth below. A dawn-dusk orbit allows the satellite&#8217;s solar panels to stay in nearly continuous daylight, while also being in a relatively inexpensive low earth orbit (LEO). Geostationary orbit (GEO) would allow solar panels to always receive sunlight, but launching a satellite into GEO requires more fuel and so is more expensive.<\/p>\n<p>Another advantage of LEO is that radiation levels are a couple orders of magnitude less than at GEO. Lower radiation means electronics do not need to be as hardened against radiation.<\/p>\n<p>A dawn-dusk orbit would not be possible if the earth were perfectly spherical. The earth&#8217;s equatorial bulge makes it possible to design an orbit that precesses once per year. David Hammen explains this in an answer to a <a href=\"https:\/\/space.stackexchange.com\/questions\/60763\/how-to-better-understand-how-dawn-dusk-orbits-work\">question<\/a> on the Space Exploration Stack Exchange site.<\/p>\n<blockquote><p>If the Earth had a spherically distributed gravitational field, a satellite&#8217;s right ascension of ascending node would be constant. \u2026 Fortunately, the Earth&#8217;s gravitational field is not spherical. The Earth&#8217;s rotation results in an equatorial bulge. This equatorial bulge causes RAAN to precess (or recess). \u2026<\/p>\n<p>Sun synchronous orbits are chosen so that RAAN precesses by 360 degrees per year, or a bit less than one degree per day. \u2026<\/p>\n<p>A dawn-dusk satellite is a special case of a sun synchronous orbit. \u2026 A dawn-dusk orbit typically does not quite follow the terminator. Following the terminator would require a rather high orbit.<\/p><\/blockquote>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2026\/02\/02\/satellites-have-a-lot-of-room\/\">Satellites have a lot of room<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/02\/28\/max-min-orbital-speed\/\">Max and min orbital speed<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2024\/12\/23\/starlink-configurations\/\">Starlink configurations<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Despite the predictions that no one would ever put build data centers in space, Google is starting on Thursday. Google&#8217;s prototype satellite will be one of 130 payloads on SpaceX&#8217;s Transporter 18 mission on October 1. The server will follow a dawn-dusk orbit, a special case of a sun-synchronous orbit (SSO), following the terminator line [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[213],"class_list":["post-247956","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-orbital-mechanics"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Google&#039;s Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth&#039;s equatorial bulge to ride the terminator line.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"orbital mechanics\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"John D. Cook | Applied Mathematics Consulting\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Servers in dawn-dusk orbit\" \/>\n\t\t<meta property=\"og:description\" content=\"Google&#039;s Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth&#039;s equatorial bulge to ride the terminator line.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-25T11:45:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-28T04:26:29+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Servers in dawn-dusk orbit\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Google&#039;s Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth&#039;s equatorial bulge to ride the terminator line.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Servers in dawn-dusk orbit","description":"Google's Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth's equatorial bulge to ride the terminator line.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/","robots":"max-image-preview:large","keywords":"orbital mechanics","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Servers in dawn-dusk orbit","og:description":"Google's Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth's equatorial bulge to ride the terminator line.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/","article:published_time":"2026-09-25T11:45:31+00:00","article:modified_time":"2026-09-28T04:26:29+00:00","twitter:card":"summary","twitter:title":"Servers in dawn-dusk orbit","twitter:description":"Google's Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth's equatorial bulge to ride the terminator line.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247956","title":null,"description":"Google's Project Suncatcher is launching AI servers into dawn-dusk orbits that take advantage of the earth's equatorial bulge to ride the terminator line.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","location":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"created":"2026-09-25 10:54:58","updated":"2026-09-28 06:45:02","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/uncategorized\/\" title=\"Uncategorized\">Uncategorized<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tServers in dawn-dusk orbit\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Uncategorized","link":"https:\/\/www.johndcook.com\/blog\/category\/uncategorized\/"},{"label":"Servers in dawn-dusk orbit","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/25\/dawn-dusk-orbit\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247956","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/comments?post=247956"}],"version-history":[{"count":4,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247956\/revisions"}],"predecessor-version":[{"id":247960,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247956\/revisions\/247960"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247956"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247956"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247956"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}]