[{"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-04T07:34:22","modified_gmt":"2026-10-04T12:34:22","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 verices 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.2.1 - 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<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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-04T12:34:22+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-04T12:34:22+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 13:10: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\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":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247975\/revisions"}],"predecessor-version":[{"id":247990,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247975\/revisions\/247990"}],"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-04T07:26:32","modified_gmt":"2026-10-04T12:26:32","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 give use the terms\u00a0<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 there points where we cannot rule out the possibility of\u00a0<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 regular. The axiom<\/p>\n<p style=\"padding-left: 40px;\">\u25c7<em>p<\/em> \u21d4 \u00ac (\u25a1 \u00ac <em>p<\/em>)<\/p>\n<p>holds because the interior 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 style=\"padding-left: 40px;\">\u25a1<em>p<\/em> \u2192\u00a0<em>p<\/em><\/p>\n<p>because the interior of a set is a subset of the set, and<\/p>\n<p style=\"padding-left: 40px;\">\u25a1<em>p<\/em> \u2192 \u25a1\u25a1<em>p<\/em><\/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 the 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 style=\"padding-left: 40px;\"><em>p<\/em> \u2227 \u25c7\u25a1<em>p<\/em> \u2192 \u25a1<em>p<\/em><\/p>\n<p>holds, which doesn&#8217;t hold in S4, and the formula<\/p>\n<p style=\"padding-left: 40px;\">\u25c7<em>p<\/em> \u2192 \u25a1\u25c7<em>p<\/em><\/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 give use the terms\u00a0regular 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.2.1 - 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<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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-04T12:26:32+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-04T12:26:32+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-04 13:10: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\/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":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247985\/revisions"}],"predecessor-version":[{"id":247989,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247985\/revisions\/247989"}],"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:15:59","modified_gmt":"2026-10-04T13:15:59","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 systems with common choices of extra structure.<\/p>\n<h3>Modal logic<\/h3>\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<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<h3>Topology<\/h3>\n<p>Topology also uses\u00a0<em>normal<\/em> and\u00a0<em>regular<\/em> to refer to adding a few axioms, but\u00a0<em>normal<\/em> is stronger than <em>regular<\/em> in topology, the opposite of the situation in modal logic.<\/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 exists disjoint open sets\u00a0<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.2.1 - 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<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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:15:59+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:15:59+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 13:15: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\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":8,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247977\/revisions"}],"predecessor-version":[{"id":247992,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247977\/revisions\/247992"}],"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.2.1 - 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<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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.2.1 - 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<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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}]}},{"id":247950,"date":"2026-09-23T09:11:52","date_gmt":"2026-09-23T14:11:52","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247950"},"modified":"2026-09-23T09:13:55","modified_gmt":"2026-09-23T14:13:55","slug":"navigation-minimum","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/","title":{"rendered":"Navigation with only addition, subtraction, and tables"},"content":{"rendered":"<p>In the novel <em>Carry On, Mr. Bowditch<\/em>, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions, then it would be possible for barely numerate sailors to calculate their position.<\/p>\n<p><em>Carry On, Mr. Bowditch<\/em> is fiction, but it&#8217;s essentially factual, and so I imagine something like the conversation above did happen. I thought about how this might work, and it would be difficult.<\/p>\n<p>It is true that if someone can add, subtract, and look-up numbers in a table of logarithms, they can effectively multiply. To find the product\u00a0<em>xy<\/em>, they would look up the logarithms of\u00a0<em>x<\/em> and\u00a0<em>y<\/em>, add the results, then use the table in reverse to find what number has a logarithm equal to the sum.<\/p>\n<h2>Difficulties<\/h2>\n<p>But there are a couple difficulties in this imagined scheme. First, every calculation would require a lot of steps, including looking up numbers in multiple tables. It&#8217;s likely someone who cannot multiply also cannot read, so writing down instructions might not be viable. Second, carrying out calculations using tables is usually not simply a matter of looking up numbers; there are other things someone would need to know, such as <a href=\"https:\/\/www.johndcook.com\/blog\/2024\/06\/25\/trig-tables\/\">interpolation and range reduction<\/a>. <\/p>\n<p>Bowditch was trying to train innumerate sailors to do specific calculations, not general mathematics, and so there would be ways to mitigate the problems above. Maybe he could create diagrams that would allow a semi-literate person to carry out an algorithm. The sailor wouldn&#8217;t need to be able to read\u00a0<em>per se<\/em>. The instructions could be aids to help him recall memorized steps. The specialized nature of the calculations might also eliminate the need for range reduction and interpolation.<\/p>\n<h2>Tables<\/h2>\n<p>How many tables would be necessary? Someone who understands trigonometry doesn&#8217;t need separate tables for sine and cosines. And they wouldn&#8217;t need a table with entries for all angles. A table of sines for angles between 0 and 45\u00b0 would be enough. But someone who doesn&#8217;t know multiplication would need more tables and bigger tables. Or they would need instruction in how to get by with less. It would be an interesting trade-off.<\/p>\n<p>The novel mentioned tabulating logs of trig functions. For example, if you need to calculate<\/p>\n<p style=\"padding-left: 40px;\">cos(<em>a<\/em>) cos(<em>b<\/em>)<\/p>\n<p>it would be convenient to be able to look up log(cos(<em>a<\/em>)) and log(cos(<em>b<\/em>)) rather than look up the cosines and then look up their logs. But you&#8217;d still need to be able to convert<\/p>\n<p style=\"padding-left: 40px;\">log( cos(<em>a<\/em>) cos(<em>b<\/em>) )<\/p>\n<p>into<\/p>\n<p style=\"padding-left: 40px;\">cos(<em>a<\/em>) cos(<em>b<\/em>).<\/p>\n<p>This would require a table of logarithms, if the user is able to infer exponentials by reading a table in reverse. Otherwise you&#8217;d need a table of exponentials.<\/p>\n<p>In general, you can assume less sophistication from a user by increasing the number of tables. But this also complicates the instructions the user must follow.<\/p>\n<p>To give a specific example, suppose a sailor wanted to calculate his position using the <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/\">law of haversines<\/a>:<\/p>\n<p style=\"padding-left: 40px;\">hav(<em>c<\/em>) = hav(<em>a<\/em>\u00a0\u2212\u00a0<em>b<\/em>) + sin(<em>a<\/em>) sin(<em>b<\/em>) hav(<em>C<\/em>).<\/p>\n<p>A mathematically sophisticated sailor would only need a table of sines to infer\u00a0<em>c<\/em> from\u00a0<em>a<\/em>,\u00a0<em>b<\/em>, and\u00a0<em>C<\/em>. He could calculate haversine via<\/p>\n<p style=\"padding-left: 40px;\">hav(\u03b8) = sin\u00b2(\u03b8\/2),<\/p>\n<p>though inverting hav(<em>c<\/em>) to solve\u00a0for <em>c<\/em> would require calculating a square root, either directly or via a table.<\/p>\n<p>If one were to minimize the amount of sophistication needed by maximizing the use of tables, the algorithm for finding\u00a0<em>c<\/em> would be<\/p>\n<ol>\n<li>Subtract\u00a0<em>b<\/em> from\u00a0<em>a<\/em> and look up the haversine of the difference.<\/li>\n<li>Look up log(sin(<em>a<\/em>)) and log(sin(<em>b<\/em>)) from one table and log(hav(<em>C<\/em>)) from another and add the results.<\/li>\n<li>Take the exponential of the result in the previous step using a table of exponentials.<\/li>\n<li>Add the results of steps 1 and 3, and look up the result in a table of inverse haversine values.<\/li>\n<\/ol>\n<p>This would require five tables: sine, log sine, log haversine, exponential, and inverse haversine.<\/p>\n<h2>Condescension<\/h2>\n<p>Bowditch&#8217;s effort to make navigation accessible to the uneducated is an example of condescension in its literal and positive sense. If we say a person is condescending, we imagine an arrogant person who belittles those around him. But condescension literally means coming down to be with someone. Theologians use the word to describe the incarnation of Christ.<\/p>\n<p>Like all scholars, Bowditch wrote for his peers, notably in his English edition of Laplace&#8217;s magnum opus on celestial mechanics. But unlike most scholars, he also devoted years of his life to a making knowledge accessible to uneducated men, culminating in his book <em>The New American Practical Navigator<\/em>, still in print <a href=\"https:\/\/msi.nga.mil\/Publications\/APN\">here<\/a>\u00a0[1].<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2024\/06\/03\/using-a-table-of-logarithms\/'>Using a table of logarithms<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2024\/06\/25\/trig-tables\/'>Using a table of trig functions<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2022\/04\/10\/why-a-slide-rule-works\/'>Why a slide rule works<\/a><\/li>\n<\/ul>\n<p>[1] The book has been updated over the last couple centuries. Obviously the section on GPS, for example, does not date back to Bowditch.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions, [&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-247950","post","type-post","status-publish","format-standard","hentry","category-math"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,\" \/>\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\/09\/23\/navigation-minimum\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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=\"Navigation with only addition, subtraction, and tables\" \/>\n\t\t<meta property=\"og:description\" content=\"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-23T14:11:52+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-23T14:13:55+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Navigation with only addition, subtraction, and tables\" \/>\n\t\t<meta name=\"twitter:description\" content=\"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,\" \/>\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":"Navigation with only addition, subtraction, and tables","description":"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/","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":"Navigation with only addition, subtraction, and tables","og:description":"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/","article:published_time":"2026-09-23T14:11:52+00:00","article:modified_time":"2026-09-23T14:13:55+00:00","twitter:card":"summary","twitter:title":"Navigation with only addition, subtraction, and tables","twitter:description":"In the novel Carry On, Mr. Bowditch, a sailor asked Nathaniel Bowditch to teach him how to do navigational calculations, but the man only knows how to add and subtract by counting on his fingers. He had not heard of multiplication. Bowditch is surprised, but realizes if he made tables of logs of trig functions,","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247950","title":null,"description":null,"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-23 12:08:24","updated":"2026-09-23 14:15:24","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\tNavigation with only addition, subtraction, and tables\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":"Navigation with only addition, subtraction, and tables","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/23\/navigation-minimum\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247950","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=247950"}],"version-history":[{"count":5,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247950\/revisions"}],"predecessor-version":[{"id":247955,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247950\/revisions\/247955"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247950"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247946,"date":"2026-09-22T09:01:30","date_gmt":"2026-09-22T14:01:30","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247946"},"modified":"2026-09-22T09:01:30","modified_gmt":"2026-09-22T14:01:30","slug":"nathaniel-bowditch","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/","title":{"rendered":"Nathaniel Bowditch"},"content":{"rendered":"<p>A couple days ago a friend told me about the book <em>Carry On, Mr. Bowditch<\/em>, a fictional account of the life of Nathaniel Bowditch (1773\u20131838). I&#8217;ve been listening to the book on Audible, and apparently it&#8217;s only lightly fictionalized.<\/p>\n<p>Bowditch was a self-educated mathematician and astronomer, best known for his book <em>The American Practical Navigator<\/em>, first published in 1801. The book has been continually revised over the last two centuries and is still in print, available for <a href=\"https:\/\/msi.nga.mil\/Publications\/APN\">download<\/a> from the National Geospatial-Intelligence Agency. The latest edition begins with a brief account of Bowditch&#8217;s life, confirming the essential details of the fictional biography.<\/p>\n<p>Two things stand out about Bowditch: his attention to detail and his desire to make ideas accessible. He taught himself Latin in order to read Newton&#8217;s <em>Principia<\/em> and followed the text so closely that he found a number of errors.<\/p>\n<p>Bowditch&#8217;s navigation book grew out of the numerous corrections he made to error he found in John Hamilton Moore\u2019s <em>The Practical Navigator<\/em>, the leading navigation text of the time.<\/p>\n<p>At the beginning of the 19th century it was theoretically possible to determine time, and hence longitude, from lunar observation. However, the method required ideal observation conditions and laborious calculation. Bowditch developed a way to make the necessary measurements under more general conditions, and simplified the necessary calculations. According to the biographical preface mentioned above,<\/p>\n<blockquote><p>Bowditch vowed while writing this edition [of his navigation text] to \u201cput down in the book nothing I can\u2019t teach the crew,\u201d and it is said that every member of his crew including the cook could take a lunar observation and plot the ship\u2019s position.<\/p><\/blockquote>\n<p>After completing <em>The American Practical Navigator<\/em>, Bowditch began an English translation of Pierre Laplace&#8217;s encyclopedic <em lang=\"fr\">Mecanique Celeste<\/em>, filling in details to make the work accessible to a wider audience. He was able to translate four out of the five volumes by the end of his life.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2025\/12\/04\/the-navigational-triangle\/'>The navigational triangle<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2025\/12\/04\/line-of-position\/'>Line of position<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/04\/14\/intersecting-spheres-and-gps\/'>Intersecting spheres and GPS<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A couple days ago a friend told me about the book Carry On, Mr. Bowditch, a fictional account of the life of Nathaniel Bowditch (1773\u20131838). I&#8217;ve been listening to the book on Audible, and apparently it&#8217;s only lightly fictionalized. Bowditch was a self-educated mathematician and astronomer, best known for his book The American Practical Navigator, [&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":[64,312,213],"class_list":["post-247946","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-history","tag-navigation","tag-orbital-mechanics"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"history,navigation,orbital mechanics\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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=\"Nathaniel Bowditch\" \/>\n\t\t<meta property=\"og:description\" content=\"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-22T14:01:30+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-22T14:01:30+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Nathaniel Bowditch\" \/>\n\t\t<meta name=\"twitter:description\" content=\"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.\" \/>\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":"Nathaniel Bowditch","description":"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/","robots":"max-image-preview:large","keywords":"history,navigation,orbital mechanics","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Nathaniel Bowditch","og:description":"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/","article:published_time":"2026-09-22T14:01:30+00:00","article:modified_time":"2026-09-22T14:01:30+00:00","twitter:card":"summary","twitter:title":"Nathaniel Bowditch","twitter:description":"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247946","title":null,"description":"A short overview of the life of self-taught mathematician and astronomer Nathaniel Bowditch.","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-22 13:13:50","updated":"2026-09-22 16:21: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\/uncategorized\/\" title=\"Uncategorized\">Uncategorized<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tNathaniel Bowditch\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":"Nathaniel Bowditch","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/22\/nathaniel-bowditch\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247946","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=247946"}],"version-history":[{"count":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247946\/revisions"}],"predecessor-version":[{"id":247949,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247946\/revisions\/247949"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247946"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247946"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247946"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247940,"date":"2026-09-21T18:13:22","date_gmt":"2026-09-21T23:13:22","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247940"},"modified":"2026-09-21T20:04:11","modified_gmt":"2026-09-22T01:04:11","slug":"haversine-law","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/","title":{"rendered":"Haversine law"},"content":{"rendered":"<p>Suppose you want to solve a triangle. You know two sides and the angle between them. Then you can solve for the third side using the law of cosines.<\/p>\n<p>Now suppose you want to solve a\u00a0<strong>big<\/strong> triangle, a triangle on the surface of the earth so large that the curvature of the earth matters. You can still use the law of cosines, but you&#8217;ll need <a href=\"https:\/\/www.johndcook.com\/blog\/2022\/08\/24\/law-of-cosines-on-a-sphere\/\">the spherical law of cosines<\/a>:<\/p>\n<p style=\"padding-left: 40px;\">cos(<em>c<\/em>) = cos(<em>a<\/em>) cos(<em>b<\/em>) + sin(<em>a<\/em>) sin(<em>b<\/em>) cos(<em>C<\/em>).<\/p>\n<p>If you know the (angular) lengths of sides\u00a0<em>a<\/em> and\u00a0<em>b<\/em>, and (tangential) angle\u00a0<em>C<\/em> between the two sides, you can solve for\u00a0<em>c<\/em> by taking the inverse cosine of the right hand side above.<\/p>\n<p>Now suppose you want to solve this big triangle because you&#8217;re a <strong>navigator<\/strong> on a ship a couple centuries ago, doing calculations by looking up trig functions and inverse trig functions in a table. You&#8217;re interested in triangles that are so big that you have to account for the fact that you&#8217;re living on a sphere. But at the same time, your triangles are still fairly small relative to the size of the globe.<\/p>\n<h2>The problem with the law of cosines<\/h2>\n<p>The numbers\u00a0<em>a<\/em> and\u00a0<em>b<\/em> will often be fairly small, and so their cosines will be near 1 and their sines are near zero. So the calculation<\/p>\n<p style=\"padding-left: 40px;\">cos(<em>a<\/em>) cos(<em>b<\/em>) + sin(<em>a<\/em>) sin(<em>b<\/em>) cos(<em>C<\/em>)<\/p>\n<p>will add a number near 1 and a number near zero. That&#8217;s a problem.<\/p>\n<p>Say you&#8217;re working with five decimal place arithmetic. Then if the second term above is less than 10<sup>\u22125<\/sup>, its contribution to the sum gets completely lost in the addition to the first term. If the second term is larger than 10<sup>\u22125<\/sup> but still small, its contribution to the sum will be partially lost.<\/p>\n<h2>Law of haversines<\/h2>\n<p>Enter the <a href=\"https:\/\/www.johndcook.com\/blog\/2009\/09\/25\/how-many-trig-functions\/\">haversine<\/a>, defined by<\/p>\n<p style=\"padding-left: 40px;\">hav(\u03b8) = (1 \u2212 cos(\u03b8))\/2.<\/p>\n<p>The expression 1 \u2212 cos \u03b8 was called the versine, and so half of the versine is the haversine.<\/p>\n<p>In terms of the haversine, the law of cosines above becomes the law of haversines:<\/p>\n<p style=\"padding-left: 40px;\">hav(<em>c<\/em>) = hav(<em>a<\/em> \u2212\u00a0<em>b<\/em>) + sin(<em>a<\/em>) sin(<em>b<\/em>) hav(<em>C<\/em>).<\/p>\n<p>Now suppose you have a table of haversines and inverse haversines. The law of haversines requires a little less work: you have one less table lookup, and you trade a product for a subtraction.<\/p>\n<p>But the primary advantage is numerical accuracy: the terms on the right side have roughly the same size.<\/p>\n<h2>Tables<\/h2>\n<p>Note that we&#8217;re assuming the values in your table of haversines have been calculated correctly to the given precision. If you calculated your own values of haversines from the definition above, you&#8217;d lose precision in the subtraction 1 \u2212 cos \u03b8, defeating the advantage of the law of haversines [1].<\/p>\n<h2>History<\/h2>\n<p>According to <a href=\"https:\/\/en.wikipedia.org\/wiki\/Haversine_formula\">Wikipedia<\/a>.<\/p>\n<blockquote><p>The first table of haversines in English was published by James Andrew in 1805, but Florian Cajori credits an earlier use by Jos\u00e9 de Mendoza y R\u00edos in 1801. The term <em>haversine<\/em> was coined in 1835 by James Inman.<\/p><\/blockquote>\n<h2>Experiments<\/h2>\n<p>I ran some experiments that carried out arithmetic in float16 (11 bits of precision) to approximate what someone might have done by hand. When the difference between <em>a<\/em> and\u00a0<em>b<\/em> was on the order of 1\u00b0 or 0.1\u00b0, the law of cosine method often overflowed: the right-hand side evaluated to something larger than 1 even though theoretically it should be less than 1. The haversine method never overflowed.<\/p>\n<p>The median error for the haversine method was a couple orders of magnitude less than that of the cosine method.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/12\/01\/lewis-clark-geolocation\/\">Lews &amp; Clark navigation<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2009\/09\/25\/how-many-trig-functions\/\">How many trig functions are there?<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/11\/08\/heron-on-a-sphere\/\">Analog of Heron&#8217;s formula for a sphere<\/a><\/li>\n<\/ul>\n<p>[1] hav(\u03b8) = (1 \u2212 cos(\u03b8))\/2 = sin\u00b2(\u03b8\/2). If you calculated hav \u03b8 by looking up sin(\u03b8\/2) and squaring it, you&#8217;d be doing extra work, but you wouldn&#8217;t have numerical problems.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Suppose you want to solve a triangle. You know two sides and the angle between them. Then you can solve for the third side using the law of cosines. Now suppose you want to solve a\u00a0big triangle, a triangle on the surface of the earth so large that the curvature of the earth matters. You [&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,312],"class_list":["post-247940","post","type-post","status-publish","format-standard","hentry","category-math","tag-geometry","tag-navigation"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"geometry,navigation\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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=\"Haversine law\" \/>\n\t\t<meta property=\"og:description\" content=\"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-21T23:13:22+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-22T01:04:11+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Haversine law\" \/>\n\t\t<meta name=\"twitter:description\" content=\"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.\" \/>\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":"Haversine law","description":"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/","robots":"max-image-preview:large","keywords":"geometry,navigation","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Haversine law","og:description":"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/","article:published_time":"2026-09-21T23:13:22+00:00","article:modified_time":"2026-09-22T01:04:11+00:00","twitter:card":"summary","twitter:title":"Haversine law","twitter:description":"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247940","title":null,"description":"The haversine law was used to solve triangles in navigation at sea. It gives more accurate results in practice than the law of cosines.","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-21 16:29:49","updated":"2026-09-22 13:14: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\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHaversine law\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":"Haversine law","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/21\/haversine-law\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247940","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=247940"}],"version-history":[{"count":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247940\/revisions"}],"predecessor-version":[{"id":247944,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247940\/revisions\/247944"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247940"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247940"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247940"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247934,"date":"2026-09-18T20:17:36","date_gmt":"2026-09-19T01:17:36","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247934"},"modified":"2026-09-19T09:30:16","modified_gmt":"2026-09-19T14:30:16","slug":"logistic-fit-sensitivity","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/","title":{"rendered":"Why fitting a logistic is nearly impossible from early data"},"content":{"rendered":"<p>Nothing grows exponentially forever. What appears to be an exponential curve often turns out to be some sort of S curve, such as a logistic curve.<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/www.johndcook.com\/logistic_tangents.png\" alt=\"logistic curve with extrapolations\" width=\"480\" height=\"360\" \/><\/p>\n<p>Suppose you&#8217;re collecting data on the left side of the curve. If there&#8217;s even a small amount of error in your data, you won&#8217;t be able to predict the asymptotic value with any accuracy. But if you have data on both sides of the inflection point, you can make a good prediction of the limiting value.<\/p>\n<p>I&#8217;ve written about this <a href=\"https:\/\/www.johndcook.com\/blog\/2025\/12\/20\/fit-logistic-curve\/\">before<\/a>, explaining that the problem is hard, but I didn&#8217;t say\u00a0<em>why<\/em> it&#8217;s hard. Here I&#8217;d like to give an idea why it&#8217;s hard.<\/p>\n<p>Suppose you want to fit a logistic equation<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/logistic_fit1.svg\" alt=\"y(t) = \\frac{L}{1 + \\exp(-k(t - t_0))}\" width=\"197\" height=\"43\" \/><\/p>\n<p>to three distinct values of <em>t<\/em> and the corresponding values of <em>y<\/em>. There is a unique solution, but in general you cannot find a solution in closed form. However, if the values of <em>t<\/em> are evenly spaced<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/logistic_fit2.svg\" alt=\"y_2 - y_1 = y_1 - y_0 = h\" width=\"154\" height=\"20\" \/><\/p>\n<p>there is a method [1] to solve for the parameters <em>L<\/em>, <em>k<\/em>, and <em>t<\/em><sub>0<\/sub>. For this post we&#8217;re only interested in the limiting value <em>L<\/em>, and it can be found by<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/logistic_fit3.svg\" alt=\"L = \\frac{y_1^2(y_0 + y_2) - 2y_0 y_1 y_2}{y_1^2 - y_0 y_2}\" width=\"193\" height=\"54\" \/><\/p>\n<p>independent of\u00a0<em>h<\/em>.<\/p>\n<p>To find out how small changes in the\u00a0<em>y<\/em>&#8216;s change the estimate of\u00a0<em>L<\/em>, we take the partial derivatives of\u00a0<em>L<\/em> with respect to the\u00a0<em>y<\/em>&#8216;s and find<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/logistic_fit4.svg\" alt=\"\\frac{\\partial L}{\\partial y_0} = \\frac{\\partial L}{\\partial y_2} = \\frac{y_1^2\\, h^2}{\\left(y_1^2 - y_0 y_2\\right)^2} \" width=\"191\" height=\"68\" \/><\/p>\n<p>and<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" style=\"background-color: white;\" src=\"https:\/\/www.johndcook.com\/logistic_fit5.svg\" alt=\"\\frac{\\partial L}{\\partial y_1} = \\frac{-2\\, y_0 y_2\\, h^2}{\\left(y_1^2 - y_0 y_2\\right)^2}\" width=\"143\" height=\"66\" \/><br \/>\nAll three derivatives have the same expression in the denominator: <em>y<\/em><sub>1<\/sub>\u00b2 \u2212 <em>y<\/em><sub>0<\/sub> <em>y<\/em><sub>2<\/sub>.<\/p>\n<p>If the function\u00a0<em>y<\/em>(<em>t<\/em>) were an exponential, this expression would be exactly zero [2]. The function <em>y<\/em>(<em>t<\/em>) is not exactly exponential, but it is <em>approximately<\/em> exponential when the <em>t<\/em>&#8216;s are in the left or right tail of the logistic curve. The further out in either tail the <em>t<\/em>&#8216;s are, the closer the expression is to zero.<\/p>\n<p>So when all the <em>t<\/em>&#8216;s come from the same side of the inflection point, <em>y<\/em>(<em>t<\/em>) is nearly exponential the partial derivatives are huge and so the fitted value of <em>L<\/em> is extremely sensitive to changes in the <em>y<\/em>&#8216;s.<\/p>\n<p>As a concrete example, set\u00a0<em>L<\/em> =\u00a0<em>k<\/em> = 1 and <em>t<\/em><sub>0<\/sub> = 0. Evaluate\u00a0<em>y<\/em>(<em>t<\/em>) at \u22122, \u22121.5, and \u22121. Then the values of\u00a0<em>y<\/em> are<\/p>\n<p style=\"padding-left: 40px;\"><em>y<\/em><sub>0<\/sub> = 0.11920292<br \/>\n<em>y<\/em><sub>1<\/sub> = 0.18242552<br \/>\n<em>y<\/em><sub>2<\/sub> = 0.26894142<\/p>\n<p>If you forecast <em>L<\/em> using exactly these three values you&#8217;ll get <em>L<\/em> = 1.<\/p>\n<p>But if you change <em>y<\/em><sub>0<\/sub> to 0.12374097, the forecasted value of <em>L<\/em> is infinite. Values of <em>y<\/em><sub>0<\/sub> in the interval [0.11920292, 0.12374097] predict values of <em>K<\/em> in [1, \u221e].<\/p>\n<p>[1] Raymond Pearl and Lowell J. Reed. On the Rate of Growth of the Population of the United States Since 1790 and its Mathematical Representation. Proceedings of the National Academy of Sciences of the United States of America, Vol. 6, No. 6 (Jun. 15, 1920), pp. 275-288<\/p>\n<p>[2] exp(<em>x<\/em> +\u00a0<em>h<\/em>)\u00b2 = exp(<em>x<\/em>)\u00b2 exp(<em>h<\/em>)\u00b2 = exp(<em>x<\/em>) exp(<em>x<\/em> + 2<em>h<\/em>)<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nothing grows exponentially forever. What appears to be an exponential curve often turns out to be some sort of S curve, such as a logistic curve. Suppose you&#8217;re collecting data on the left side of the curve. If there&#8217;s even a small amount of error in your data, you won&#8217;t be able to predict the [&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":[106],"class_list":["post-247934","post","type-post","status-publish","format-standard","hentry","category-math","tag-probability-and-statistics"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"probability and statistics\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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=\"Why fitting a logistic is nearly impossible from early data\" \/>\n\t\t<meta property=\"og:description\" content=\"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-19T01:17:36+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-19T14:30:16+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Why fitting a logistic is nearly impossible from early data\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.\" \/>\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":"Why fitting a logistic is nearly impossible from early data","description":"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/","robots":"max-image-preview:large","keywords":"probability and statistics","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Why fitting a logistic is nearly impossible from early data","og:description":"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/","article:published_time":"2026-09-19T01:17:36+00:00","article:modified_time":"2026-09-19T14:30:16+00:00","twitter:card":"summary","twitter:title":"Why fitting a logistic is nearly impossible from early data","twitter:description":"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247934","title":null,"description":"Why fitting a logistic to data is very sensitive when all the data are on one side of the inflection point.","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-18 23:53:59","updated":"2026-09-21 16: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\tWhy fitting a logistic is nearly impossible from early data\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":"Why fitting a logistic is nearly impossible from early data","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/18\/logistic-fit-sensitivity\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247934","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=247934"}],"version-history":[{"count":5,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247934\/revisions"}],"predecessor-version":[{"id":247939,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247934\/revisions\/247939"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247934"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247934"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247934"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":247924,"date":"2026-09-17T11:48:14","date_gmt":"2026-09-17T16:48:14","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=247924"},"modified":"2026-09-18T07:10:00","modified_gmt":"2026-09-18T12:10:00","slug":"empirical-fractal","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/17\/empirical-fractal\/","title":{"rendered":"Empirical fractal"},"content":{"rendered":"<p>There&#8217;s a common saying in discussion of fractals that the length of a coastline depends on how small a device you use to measure it. I thought this was a hypothetical, say as applied to the steps in the construction of the Koch snowflake. But the saying has its roots in actually surveying.<\/p>\n<p>Lewis Fry Richardson (1881\u20131953) noticed that the length of the coast of Scotland depended on the size of segments used to measure it. More specifically, he found that the length followed a power law, i.e. that there&#8217;s a linear relation between the log of the coastline length and the log of the ruler length.<\/p>\n<p>Here&#8217;s a reproduction of Richardson&#8217;s plot, taken from [1].<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium\" src=\"https:\/\/www.johndcook.com\/scottish_coast.png\" width=\"500\" height=\"351\" \/><\/p>\n<p>Mandelbrot built on Richardson&#8217;s observation and defined the idea of fractal dimension.<\/p>\n<p>I was under the impression that fractals were invented as mathematical novelties that researchers later found applications for. But as is often the case, the applications came first. Or at least <em>some<\/em> applications came first.<\/p>\n<p>Ideally there&#8217;s always a feedback cycle where applications lead to theory and theory leads to applications. As Donald Knuth put it, &#8220;The best theory is inspired by practice. The best practice is inspired by theory.&#8221;<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/09\/04\/minimalist-mandelbrot-set\/\">Minimalist Mandelbrot set<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2021\/07\/11\/fractal-brownian-motion\/\">The fractal nature of Brownian motion<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/08\/16\/randomly-generated-dragon\/\">Randomly generated dragon<\/a><\/li>\n<\/ul>\n<p>[1] Eoghan Bradley and Mark McCartney. Four hundred years of the fractal coastline of Scotland. The Mathematical Gazette, November 2019, Vol. 103, No. 558 (November 2019), pp. 518-521<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There&#8217;s a common saying in discussion of fractals that the length of a coastline depends on how small a device you use to measure it. I thought this was a hypothetical, say as applied to the steps in the construction of the Koch snowflake. But the saying has its roots in actually surveying. Lewis Fry [&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-247924","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.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Richardson&#039;s measurements of the coast of Scotland were a precursor to the theory of fractals.\" \/>\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\/09\/17\/empirical-fractal\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\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=\"Empirical fractal\" \/>\n\t\t<meta property=\"og:description\" content=\"Richardson&#039;s measurements of the coast of Scotland were a precursor to the theory of fractals.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/09\/17\/empirical-fractal\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-17T16:48:14+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-18T12:10:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Empirical fractal\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Richardson&#039;s measurements of the coast of Scotland were a precursor to the theory of fractals.\" \/>\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":"Empirical fractal","description":"Richardson's measurements of the coast of Scotland were a precursor to the theory of fractals.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/17\/empirical-fractal\/","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":"Empirical fractal","og:description":"Richardson's measurements of the coast of Scotland were a precursor to the theory of fractals.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/09\/17\/empirical-fractal\/","article:published_time":"2026-09-17T16:48:14+00:00","article:modified_time":"2026-09-18T12:10:00+00:00","twitter:card":"summary","twitter:title":"Empirical fractal","twitter:description":"Richardson's measurements of the coast of Scotland were a precursor to the theory of fractals.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"247924","title":null,"description":"Richardson's measurements of the coast of Scotland were a precursor to the theory of fractals.","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-17 16:30:32","updated":"2026-09-18 12:10: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\tEmpirical fractal\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":"Empirical fractal","link":"https:\/\/www.johndcook.com\/blog\/2026\/09\/17\/empirical-fractal\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247924","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=247924"}],"version-history":[{"count":6,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247924\/revisions"}],"predecessor-version":[{"id":247931,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/247924\/revisions\/247931"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=247924"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=247924"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=247924"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}]