[{"id":248181,"date":"2026-11-03T08:41:25","date_gmt":"2026-11-03T14:41:25","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248181"},"modified":"2026-11-03T08:41:25","modified_gmt":"2026-11-03T14:41:25","slug":"fraction-comparison-trick-revisited","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/","title":{"rendered":"Fraction comparison trick revisited"},"content":{"rendered":"<p><a href=\"https:\/\/www.johndcook.com\/blog\/2021\/02\/25\/fraction-comparison-trick\/\">A few years ago<\/a> I wrote about a curious result: <em>a<\/em>\/<em>b<\/em>\u00a0is usually greater than\u00a0<em>c<\/em>\/<em>d<\/em>\u00a0when\u00a0<em>a\u00a0<\/em>+\u00a0<em>d<\/em>\u00a0is greater than\u00a0<em>b\u00a0<\/em>+\u00a0<em>c<\/em>. And &#8220;usually&#8221; means with probability 11\/12.<\/p>\n<p>As stated in the post, you can make this statement rigorous by choosing integers up to size\u00a0<em>N<\/em> at random and taking the limit as\u00a0<em>N<\/em> goes to infinity.<\/p>\n<p>We can also choose\u00a0<em>a<\/em>,\u00a0<em>b<\/em>,\u00a0<em>c<\/em>, and\u00a0<em>d<\/em> uniformly from [0, 1]. This is similar to choosing four integers up to <em>N<\/em> and dividing all the integers by\u00a0<em>N<\/em>, which doesn&#8217;t change the probabilities.<\/p>\n<p>Now\u00a0<em>a<\/em>\/<em>b<\/em> &gt;\u00a0<em>c<\/em>\/<em>d<\/em> if and only if\u00a0<em>ad<\/em> &gt;\u00a0<em>bc<\/em>, so another way to state the theorem is that<\/p>\n<p style=\"padding-left: 40px;\">Prob(<em>ad<\/em> &gt;\u00a0<em>bc <\/em>| <em>a<\/em> +\u00a0<em>d<\/em> &gt;\u00a0<em>b<\/em> +\u00a0<em>c<\/em>) = 11\/12.<\/p>\n<p>Or to state it yet another way, pick two pairs of numbers at random. The probability that the pair with the larger sum also has the larger product is 11\/12. That seems more intuitive to me than the original statement.<\/p>\n<p>If <em>a<\/em> +\u00a0<em>d<\/em> is greater than\u00a0<em>b<\/em> +\u00a0<em>c<\/em>, it&#8217;s likely that\u00a0<em>a<\/em>\/<em>b<\/em> is greater than <em>c<\/em>\/<em>d<\/em>. It seems plausible that if\u00a0<em>a<\/em> +\u00a0<em>d<\/em> is <em>much<\/em> greater than <em>b<\/em> +\u00a0<em>c<\/em>, it&#8217;s <em>more<\/em> likely that <em>a<\/em>\/<em>b<\/em> is greater than <em>c<\/em>\/<em>d<\/em>. Or in terms of cross products, the more the sum of one pair is bigger than the sum of the other, the more likely the product of the former is to be greater than the latter. That is<\/p>\n<p style=\"padding-left: 40px;\"><em>f<\/em>(<em>r<\/em>) = Prob(<em>ad<\/em> &gt;\u00a0<em>bc <\/em>| (<em>a<\/em> +\u00a0<em>d<\/em>)\/(<em>b<\/em> +\u00a0<em>c<\/em>) \u2265 <em>r<\/em>)<\/p>\n<p>should be an increasing function of\u00a0<em>r<\/em>. We know the probability above equals 11\/12 when\u00a0<em>r<\/em> = 1. We expect that the probability should approach 1 as <em>r<\/em> goes to infinity.<\/p>\n<p>This is indeed the case, as shown in the plot below.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium\" src=\"https:\/\/www.johndcook.com\/f_of_r.png\" width=\"480\" height=\"380\" \/><\/p>\n<p>In particular, <em>f<\/em>(2) \u2248 0.99 and\u00a0<em>f<\/em>(6) \u2248 0.999. So if\u00a0<em>a<\/em> +\u00a0<em>d<\/em> is two (or six) times bigger than\u00a0<em>b +<\/em>\u00a0c, there is a 0.99 (or 0.999) probability that\u00a0<em>ad<\/em> is larger than\u00a0<em>bc<\/em>.<\/p>\n<p>You can calculate\u00a0<em>f<\/em>(<em>r<\/em>) analytically or estimate it by simulation. I had Claude do both and they produce comparable results. There is a closed-form expression for\u00a0<em>f<\/em>(<em>r<\/em>) but it&#8217;s really complicated.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few years ago I wrote about a curious result: a\/b\u00a0is usually greater than\u00a0c\/d\u00a0when\u00a0a\u00a0+\u00a0d\u00a0is greater than\u00a0b\u00a0+\u00a0c. And &#8220;usually&#8221; means with probability 11\/12. As stated in the post, you can make this statement rigorous by choosing integers up to size\u00a0N at random and taking the limit as\u00a0N goes to infinity. We can also choose\u00a0a,\u00a0b,\u00a0c, and\u00a0d uniformly [&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":[105],"class_list":["post-248181","post","type-post","status-publish","format-standard","hentry","category-math","tag-probability"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"probability\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Fraction comparison trick revisited\" \/>\n\t\t<meta property=\"og:description\" content=\"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-03T14:41:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-03T14:41:25+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Fraction comparison trick revisited\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.\" \/>\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":"Fraction comparison trick revisited","description":"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/","robots":"max-image-preview:large","keywords":"probability","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Fraction comparison trick revisited","og:description":"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/","article:published_time":"2026-11-03T14:41:25+00:00","article:modified_time":"2026-11-03T14:41:25+00:00","twitter:card":"summary","twitter:title":"Fraction comparison trick revisited","twitter:description":"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248181","title":null,"description":"Revisiting the theorem that a\/b is usually greater than c\/d when a + d is greater than b + c. Different formulations and an extension.","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-11-03 13:45:03","updated":"2026-11-03 18:58: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\tFraction comparison trick revisited\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":"Fraction comparison trick revisited","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/fraction-comparison-trick-revisited\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248181","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=248181"}],"version-history":[{"count":1,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248181\/revisions"}],"predecessor-version":[{"id":248182,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248181\/revisions\/248182"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248173,"date":"2026-11-03T06:33:10","date_gmt":"2026-11-03T12:33:10","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248173"},"modified":"2026-11-03T06:33:10","modified_gmt":"2026-11-03T12:33:10","slug":"spherical-and-projective-geometry","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/spherical-and-projective-geometry\/","title":{"rendered":"Euclidean, Spherical, and Projective Geometry"},"content":{"rendered":"<p>Spherical geometry is very tangible because we live on a sphere. Projective geometry seems much more exotic, and yet they&#8217;re closely related. To show how they&#8217;re connected, let&#8217;s go back to the origins of non-Euclidean geometry.<\/p>\n<h2>Euclidean geometry<\/h2>\n<p>Here are Euclid&#8217;s five postulates, statements about what geometric objects can be constructred.<\/p>\n<ol>\n<li>To draw a\u00a0straight line\u00a0from any\u00a0point\u00a0to any point.<\/li>\n<li>To produce (extend) a\u00a0finite straight line\u00a0continuously in a straight line.<\/li>\n<li>To describe a\u00a0circle\u00a0with any centre and distance (radius).<\/li>\n<li>That all\u00a0right angles\u00a0are equal to one another.<\/li>\n<li>That, if a straight line falling on two straight lines makes the interior angles on the same side less than two right angles, the two straight lines, if produced indefinitely, meet on that side on which the angles are less than two right angles.<\/li>\n<\/ol>\n<p>Clearly there&#8217;s something different about the fifth postulate, the parallel postulate. It&#8217;s much longer and more complicated than the other postulates. There was speculation from ancient times that the parallel postulate might be unnecessary, that it could be derived as a theorem rather than stated as an axiom.<\/p>\n<h2>Non-Euclidean geometry<\/h2>\n<p>Giovanni Girolamo Saccheri (1667\u20131733) tried to prove the fifth postulate by contradiction, and in the process began the study of non-Euclidean geometry. He wasn&#8217;t the first to try to prove the fifth postulate. Ptolemy, for example, tried to prove the fifth postulate as a theorem in the second century AD. But Saccheri was the first to try a proof by contradiction, or at least the first to extensively explore contradictions to the parallel postulate.<\/p>\n<p>A more modern formulation of the parallel postulate says<\/p>\n<p style=\"padding-left: 40px;\">Given a line <em>\u2113<\/em> and a point <em>P<\/em> not on <em>\u2113<\/em>, there is exactly one line through <em>P<\/em> parallel to <em>\u2113<\/em>.<\/p>\n<p>Non-Euclidean geometry replaces this axiom with an alternative, such as saying there are multiple lines parallel to <em>\u2113 <\/em>or that there are no lines parallel to <em>\u2113<\/em>.<\/p>\n<p>Note that non-Euclidean geometry is not an arbitrary tinkering with the axioms of geometry just to see what happens. It tinkers with one specific axiom for motivated reasons.<\/p>\n<h2>Spherical geometry<\/h2>\n<p>You can create models of non-Euclidean geometry using Euclidean geometry. For example, spherical geometry is constructed by defining a (spherical) point as a (Euclidean) point on a sphere, and defining a (spherical) line to be a great circle, the intersection of a (Euclidean) plane with the sphere. In spherical geometry there are no parallel lines: all lines intersect.<\/p>\n<p>This example shows that non-Euclidean geometry need not be non-physical. If you leave general relativity out of the picture and think of physical space as undeniably Euclidean, it can still be useful to think of different geometries to describe objects in Euclidean space.<\/p>\n<h2>Projective geometry<\/h2>\n<p>In projective geometry, all distinct lines intersect at one point.<\/p>\n<p>In spherical geometry, all distinct lines intersect at two points, on opposite sides of a great circle. If you consider antipodal pairs of points on a sphere to be a single point in the projective plane, now all lines intersect at a single point. Projective geometry is just one step away from spherical geometry.<\/p>\n<p>The recent thread of posts started with a <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/polar-triangle\/\">post<\/a> a couple weeks ago about two versions of the law of cosines on a sphere, one for sides and one for angles. You can go from one to the other by going from a spherical triangle to its polar triangle. That started me going down the rabbit hole of poles and polars, first in spherical geometry, then in plane geometry, then in projective geometry, culminating <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/\">here<\/a>.<\/p>\n<p>Now we have two ways of producing poles and polars on a sphere: the original construction in terms of spherical geometry, and the projective construction. They are consistent: you can do spherical geometry, then identify antipodal points, or you can identify antipodal points, then do projective geometry. You end up at the same place by either path.<\/p>\n<p>One theme in the last few posts has been that projective geometry is not an arbitrary exercise in abstraction but a framework that can simplify how we think about things. For example, when I defined the polar triangle of a spherical triangle <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/\">here<\/a>, I said that the vertices of the polar triangle are the poles of the sides of the original triangle. Imagine the side as the equator of the sphere and take one of the poles; that&#8217;s where the abstract concept of &#8220;pole&#8221; comes from. But which pole do you take? There is a convention for answering this question, but in projective geometry it doesn&#8217;t matter: both (spherical) poles constitute one (projective) point.<\/p>\n<h2>Posts in this series<\/h2>\n<ul>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/polar-triangle\/'>Duality in spherical trig<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/'>Poles and polars<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/'>Inversion in an ellipse<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/'>Unified view of poles and polars<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/'>Making peace with the projective plane<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/'>From a hack to a rigorous definition<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Spherical geometry is very tangible because we live on a sphere. Projective geometry seems much more exotic, and yet they&#8217;re closely related. To show how they&#8217;re connected, let&#8217;s go back to the origins of non-Euclidean geometry. Euclidean geometry Here are Euclid&#8217;s five postulates, statements about what geometric objects can be constructred. To draw a\u00a0straight line\u00a0from [&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-248173","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.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"From Euclidean geometry to projective geometry, by way of spherical 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\/11\/03\/spherical-and-projective-geometry\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Euclidean, Spherical, and Projective Geometry\" \/>\n\t\t<meta property=\"og:description\" content=\"From Euclidean geometry to projective geometry, by way of spherical geometry.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/spherical-and-projective-geometry\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-03T12:33:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-03T12:33:10+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Euclidean, Spherical, and Projective Geometry\" \/>\n\t\t<meta name=\"twitter:description\" content=\"From Euclidean geometry to projective geometry, by way of spherical 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":"Euclidean, Spherical, and Projective Geometry","description":"From Euclidean geometry to projective geometry, by way of spherical geometry.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/spherical-and-projective-geometry\/","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":"Euclidean, Spherical, and Projective Geometry","og:description":"From Euclidean geometry to projective geometry, by way of spherical geometry.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/spherical-and-projective-geometry\/","article:published_time":"2026-11-03T12:33:10+00:00","article:modified_time":"2026-11-03T12:33:10+00:00","twitter:card":"summary","twitter:title":"Euclidean, Spherical, and Projective Geometry","twitter:description":"From Euclidean geometry to projective geometry, by way of spherical geometry.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248173","title":null,"description":"From Euclidean geometry to projective geometry, by way of spherical 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-11-03 09:34:41","updated":"2026-11-03 12:39:11","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\tEuclidean, Spherical, and Projective Geometry\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":"Euclidean, Spherical, and Projective Geometry","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/spherical-and-projective-geometry\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248173","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=248173"}],"version-history":[{"count":3,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248173\/revisions"}],"predecessor-version":[{"id":248179,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248173\/revisions\/248179"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248173"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248173"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248174,"date":"2026-11-03T04:45:19","date_gmt":"2026-11-03T10:45:19","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248174"},"modified":"2026-11-03T06:57:24","modified_gmt":"2026-11-03T12:57:24","slug":"hack-to-rigor","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/","title":{"rendered":"How a programming might reinvent the projective plane"},"content":{"rendered":"<p>This post will show how a graphic programmer&#8217;s hack could lead to a rigorous definition of the projective plane.<\/p>\n<p>As mentioned in the <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/\">previous post<\/a>, we start by adding some &#8220;points at infinity&#8221; to Euclidean plane to take care of exceptional situations. For example, instead of saying most pairs of lines intersect at a single point but some don&#8217;t intersect at all, you could say all pairs of lines intersect at a point, but for some pairs of lines, namely parallel lines, that intersection point is &#8220;at infinity.&#8221;<\/p>\n<p>Suppose you need to write a program to find the intersection of two lines. The usual way of doing this would be to implement a <a href=\"https:\/\/www.johndcook.com\/blog\/2021\/12\/06\/partial-functions\/\">partial function<\/a> that takes two lines as input, and sometimes returns a point of intersection and sometimes does something else: it crashes, or throws an exception, or hangs. But if we add in points at infinity, our program could always return a point.<\/p>\n<p>But how are you going to represent points at infinity? It&#8217;s not enough to use a floating point infinity, because different lines intersect at different points at infinity. For example, the lines\u00a0<em>y<\/em> = 1 and\u00a0<em>y<\/em> = 2 intersect at the point at infinity in the horizontal direction, but the lines\u00a0<em>x<\/em> = 1 and\u00a0<em>x<\/em> = 2 intersect at the point at infinity in the vertical direction. You could say the former lines intersect at (o, inf) and the latter at (inf, 0), but that won&#8217;t work in general.<\/p>\n<p>The lines\u00a0<em>y<\/em> = 3<em>x<\/em> + 1 and\u00a0<em>y<\/em> = 3<em>x<\/em> + 1 intersect at the point at infinity with slope 3, but the lines <em>y<\/em> = 5<em>x<\/em> + 1 and\u00a0<em>y<\/em> = 5<em>x<\/em> + 1 intersect at the point at infinity with slope 5. If you say both pairs of lines meet at (inf, inf) you&#8217;ve lost information.<\/p>\n<p>So you come up with a hack. You represent points not as (<em>x<\/em>,\u00a0<em>y<\/em>) pairs but as (<em>x<\/em>,\u00a0<em>y<\/em>,\u00a0<em>f<\/em>) where\u00a0<em>x<\/em> and\u00a0<em>y<\/em> are real numbers but\u00a0<em>f<\/em> is a Boolean flag. Now (<em>x<\/em>,\u00a0<em>y<\/em>, true) represents the ordinary point (<em>x<\/em>,\u00a0<em>y<\/em>) and (<em>x<\/em>,\u00a0<em>y<\/em>, false) represents the point at infinity in the direction of the line from the origin to (<em>x<\/em>,\u00a0<em>y<\/em>). Problem solved!<\/p>\n<p>After a while, you realize that this hack can be useful for more than just finding the intersection of lines. You discover that if you use a real number instead of a Boolean for the last coordinate, you can implement translations and rotations using matrix multiplication. So you replace true and false with 1 and 0, do your matrix calculation, then divide by the last coordinate so the result ends in 1 or 0 again. And this works really well.<\/p>\n<p>This last coordinate is starting to act more like the other coordinates. You treat it as a peer when you multiply triples by a matrix, but only temporarily. You immediately normalize at the end to get back to more familiar territory.<\/p>\n<p>Maybe it occurs to you after a while that you&#8217;re doing something analogous the introduction of imaginary numbers. At first the square root of \u22121 was seen as a hack that produced correct answers. It wasn&#8217;t <em>really<\/em> a number but something <em>imagined<\/em> to be a number as an aid to calculation. Over time mathematicians got more comfortable with these imaginary numbers and explored what would happen if they were treated as first class citizens. Maybe you should do the same with this third coordinate that started out as a hack.<\/p>\n<p>This leads you to homogenous coordinates. A point in the extended plane you&#8217;ve created is represented by a triple (<em>x<\/em>,\u00a0<em>y<\/em>,\u00a0<em>z<\/em>) with the understanding that given a number \u03bb \u2260 0, (<em>x<\/em>,\u00a0<em>y<\/em>,\u00a0<em>z<\/em>) and (\u03bb<em>x<\/em>,\u00a0\u03bb<em>y<\/em>,\u00a0\u03bb<em>z<\/em>) represent the same point. This is the natural extension of always dividing by the last coordinate, if it&#8217;s not zero, so that the triple always ends in 1. And you discover after a while that you need to add in the requirement that not all the coordinates can be zero at the same time.<\/p>\n<p>You show this to a mathematician friend and he puts your construction in fancier language. He says you&#8217;re extended plane is \u211d\u00b3 minus the origin, modulo non-zero scalar multiplication. In other words, the points in your extended plane are equivalence classes of points in \u211d\u00b3.<\/p>\n<p>Now if you think about this geometrically, your equivalence classes are lines through the origin because that&#8217;s what you get when you look at all scalar multiples of a given vector. What started out as the plane with extra points added is now the set of all lines though the origin. That&#8217;s one way to define the projective plane: a point in the projective plane corresponds to a line through the origin in \u211d\u00b3. Furthermore, a line in the projective plane corresponds to a plane through the origin in \u211d\u00b3.<\/p>\n<p>Lines through the origin are determined by where they cross the unit sphere, so you could think of the projective plane as a sphere with one modification: because a line through the origin crosses the sphere in two antipodal points, we consider those two points in \u211d\u00b3 to be a single point in the projective plane.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post will show how a graphic programmer&#8217;s hack could lead to a rigorous definition of the projective plane. As mentioned in the previous post, we start by adding some &#8220;points at infinity&#8221; to Euclidean plane to take care of exceptional situations. For example, instead of saying most pairs of lines intersect at a single [&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-248174","post","type-post","status-publish","format-standard","hentry","category-math"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"How a graphic programmer&#039;s hack could lead to a rigorous definition of the projective plane.\" \/>\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\/11\/03\/hack-to-rigor\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"From a graphics hack to a rigorous model of the projective plane\" \/>\n\t\t<meta property=\"og:description\" content=\"How a graphic programmer&#039;s hack could lead to a rigorous definition of the projective plane.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-03T10:45:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-03T12:57:24+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"From a graphics hack to a rigorous model of the projective plane\" \/>\n\t\t<meta name=\"twitter:description\" content=\"How a graphic programmer&#039;s hack could lead to a rigorous definition of the projective plane.\" \/>\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":"From a graphics hack to a rigorous model of the projective plane","description":"How a graphic programmer's hack could lead to a rigorous definition of the projective plane.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/","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":"From a graphics hack to a rigorous model of the projective plane","og:description":"How a graphic programmer's hack could lead to a rigorous definition of the projective plane.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/","article:published_time":"2026-11-03T10:45:19+00:00","article:modified_time":"2026-11-03T12:57:24+00:00","twitter:card":"summary","twitter:title":"From a graphics hack to a rigorous model of the projective plane","twitter:description":"How a graphic programmer's hack could lead to a rigorous definition of the projective plane.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248174","title":"From a graphics hack to a rigorous model of the projective plane","description":"How a graphic programmer's hack could lead to a rigorous definition of the projective plane.","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-11-03 09:52:59","updated":"2026-11-03 13:57:12","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\tHow a programming might reinvent the projective plane\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":"How a programming might reinvent the projective plane","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248174","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=248174"}],"version-history":[{"count":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248174\/revisions"}],"predecessor-version":[{"id":248180,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248174\/revisions\/248180"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248151,"date":"2026-11-02T08:44:02","date_gmt":"2026-11-02T14:44:02","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248151"},"modified":"2026-11-03T04:47:01","modified_gmt":"2026-11-03T10:47:01","slug":"projective-plane","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/","title":{"rendered":"Making peace with the projective plane"},"content":{"rendered":"<p>In my newsletter I give an introduction to the latest few posts and occasionally give some additional commentary. In my latest newsletter I wrote<\/p>\n<blockquote><p>Projective space and homogeneous coordinates seemed like arbitrary abstractions when I was a student because they were presented without any motivation. Much later I came to realize that they\u2019re natural, almost inevitable. Exceptional cases and hand-wavy references to objects \u201cat infinity\u201d go away when moving to projective space.<\/p><\/blockquote>\n<p>My mathematics education was very top-down: abstractions first, specifics later (if ever). I was OK with that for a while, until I hit my abstraction tolerance sometime in grad school. Now I would advocate more of a bottom-up approach, motivating abstractions first rather than presenting them as a <em>fait accompli<\/em>.<\/p>\n<p>The first time I saw the projective plane was probably in a topology class where someone said you could construct the plane by starting with a square and gluing opposite edges in a physically impossible way. This seemed like a gimmick, a way to construct a non-orientable manifold but not anything practical. Another construction is to say the projective plane is an ordinary sphere with antipodal points identified. I found that a little more satisfying, but it still unmotivated.<\/p>\n<p>What I would have appreciated was someone saying that the projective plane was invented to make geometry more elegant by eliminating exceptional cases and making rigorous the idea of things &#8220;at infinity.&#8221; For example, geometric calculations often have to treat vertical lines specially, but vertical lines are not special in projective geometry.<\/p>\n<p>You could start by saying we&#8217;re going to represent points in the plane not simply as (<em>x<\/em>,\u00a0<em>y<\/em>) but as (<em>x<\/em>,\u00a0<em>y<\/em>, 1) and use (<em>x<\/em>,\u00a0<em>y<\/em>, 0) for the point at infinity in the direction (<em>x<\/em>,\u00a0<em>y<\/em>). That may seem like a hack, but it&#8217;s certainly motivated. It&#8217;s exactly the sort of thing a graphics programmer would do. In fact, I imagine many programmers have done just that, independently bumping into projective geometry.<\/p>\n<p>After having introduced this extra coordinate, it&#8217;s natural to ask what would it mean if the last coordinate were something other than 0 or 1. You&#8217;ll quickly run into this when you start doing calculations on these extended coordinates. You could have a rule that you always normalize by dividing by the last coordinate, if it&#8217;s not zero, and then you have essentially discovered homogeneous coordinates. (<strong>Update<\/strong>; I develop this idea in more detail in the <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/03\/hack-to-rigor\/\">next post<\/a>.)<\/p>\n<p>You&#8217;ll see something like the approach above in elliptic curve cryptography. Programmers wanting to implement encryption algorithms are thinking concretely in terms of (<em>x<\/em>,\u00a0<em>y<\/em>) points, until they have to worry about a mysterious &#8220;point at infinity&#8221; and handle it correctly. Then homogenous coordinates appear as a tool for getting out of a bind.<\/p>\n<p style=\"text-align: center;\">***<\/p>\n<p>I thought about titling this post something like &#8220;Dr. Strangelove, or: How I Learned to Stop Worrying and and Love the Projective Plane&#8221; but I wasn&#8217;t sure how well that would go over. I doubt many readers have seen the 1964 movie this is alluding to, but the trope &#8220;How I Learned to Stop Worrying and Love \u2026&#8221; is more widely known than the movie itself.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In my newsletter I give an introduction to the latest few posts and occasionally give some additional commentary. In my latest newsletter I wrote Projective space and homogeneous coordinates seemed like arbitrary abstractions when I was a student because they were presented without any motivation. Much later I came to realize that they\u2019re natural, almost [&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":[154,224],"class_list":["post-248151","post","type-post","status-publish","format-standard","hentry","category-math","tag-algebraic-geometry","tag-geometry"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"algebraic geometry,geometry\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Making peace with the projective plane\" \/>\n\t\t<meta property=\"og:description\" content=\"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-02T14:44:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-03T10:47:01+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Making peace with the projective plane\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.\" \/>\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":"Making peace with the projective plane","description":"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/","robots":"max-image-preview:large","keywords":"algebraic geometry,geometry","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Making peace with the projective plane","og:description":"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/","article:published_time":"2026-11-02T14:44:02+00:00","article:modified_time":"2026-11-03T10:47:01+00:00","twitter:card":"summary","twitter:title":"Making peace with the projective plane","twitter:description":"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248151","title":null,"description":"Developing projective geometry as the solution to practical problems rather than an unmotivated fait acompli.","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-11-02 11:50:00","updated":"2026-11-03 11:37: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\tMaking peace with the projective plane\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":"Making peace with the projective plane","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/02\/projective-plane\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248151","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=248151"}],"version-history":[{"count":6,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248151\/revisions"}],"predecessor-version":[{"id":248177,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248151\/revisions\/248177"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248142,"date":"2026-11-01T14:29:54","date_gmt":"2026-11-01T20:29:54","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248142"},"modified":"2026-11-01T14:42:42","modified_gmt":"2026-11-01T20:42:42","slug":"projective-poles-and-polars","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/","title":{"rendered":"A unified view of poles and polars"},"content":{"rendered":"<p>I wrote several posts on poles and polars a few days ago. First, I wrote about the dual of a spherical triangle, called the <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/polar-triangle\/\">polar triangle<\/a>. Then I wrote about <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/\">poles and polars<\/a> in plane geometry and briefly mentioned the extension to projective geometry.<\/p>\n<p>Poles and polars are a little awkward in the plane because you have to pay attention to special cases. Poles and polars are relative to a conic section, and are defined\/computed differently depending on whether you&#8217;re taking the dual with respect to an <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/\">ellipse<\/a>, parabola, or hyperbola. Also, the polar of the center of a conic section isn&#8217;t defined.<\/p>\n<h2>Projective space<\/h2>\n<p>If you move from the Euclidean plane to the projective plane, the exceptions go away, though it may not seem so if you&#8217;re talking about points at infinity or lines at infinity. If you fully commit to working in projective space, there aren&#8217;t any hand-wavy points or lines &#8220;at infinity.&#8221; There&#8217;s not even a distinction between ellipses, parabolas, and hyperbolas.<\/p>\n<p>There&#8217;s no such thing as a free lunch, and the cost of this elegant unification is moving to a bigger geometric space with a different coordinate system. Instead of working in the Euclidean spaces <em>R<\/em>\u00b2 or <em>R<\/em><sup><em>n<\/em><\/sup>, we work in <em>P<\/em><sup><em>n<\/em><\/sup>\u00a0over a field <em>F<\/em> which could be <em>R<\/em> but doesn&#8217;t need to be [1].<\/p>\n<p>The coordinates on <em>P<\/em><sup><em>n<\/em><\/sup>\u00a0are homogeneous coordinates, (<em>n<\/em> + 1)-tuples of field elements, not all equal to zero, with two (<em>n<\/em> + 1)-tuples representing the same point if they are proportional, i.e. one is a non-zero multiple of the other.<\/p>\n<p>We can embed <em>R<\/em><sup><em>n<\/em><\/sup> in <em>P<\/em><sup><em>n<\/em><\/sup> by adding an extra coordinate on the end, set equal to 1. You could think of this extra coordinate as a <strong>switch<\/strong>, set to 1 for finite points and set to 0 for infinite points. But this distinction between finite and infinite points is an artifact of the embedding, not a property of <em>P<\/em><sup><em>n<\/em><\/sup>: there are no special points in <em>P<\/em><sup><em>n<\/em><\/sup>. A point that is &#8220;at infinity&#8221; in one embedding of <em>R<\/em><sup><em>n<\/em><\/sup> in <em>P<\/em><sup><em>n<\/em><\/sup> need not be in another embedding.<\/p>\n<h2>Poles and polars<\/h2>\n<p>Once you accept the need to work in homogeneous coordinates, everything becomes simple and consistent.<\/p>\n<p>A quadric (a conic section when <em>n<\/em> = 2) is the set of points<\/p>\n<p style=\"padding-left: 40px;\">{<em>x<\/em> :\u00a0<em>x<\/em>\u1d40<em>A<\/em><em>x<\/em> = 0}<\/p>\n<p>where <em>A<\/em> is a non-singular (<em>n<\/em> + 1) by (<em>n<\/em> + 1) symmetric matrix over <em>F<\/em>.<\/p>\n<p>The <strong>polar<\/strong> of a point <em>p<\/em> is the hyperplane<\/p>\n<p style=\"padding-left: 40px;\">{<em>x<\/em> : <em>p<\/em>\u1d40<em>A<\/em><em>x<\/em> = 0}<\/p>\n<p>and the <strong>pole<\/strong> of a hyperplane<\/p>\n<p style=\"padding-left: 40px;\"><em>H<\/em> = {<em>x<\/em> : <em>u<\/em>\u1d40<em>x<\/em> = 0}<\/p>\n<p>is the point<\/p>\n<p style=\"padding-left: 40px;\"><em>p<\/em> = <em>A<\/em><sup>\u22121<\/sup> <em>u<\/em>.<\/p>\n<p>Notice there&#8217;s no mention of &#8220;infinity&#8221; in this section. All the calculations take place in the field\u00a0<em>F<\/em> with no points at infinity added.<\/p>\n<p>[1] The only requirement is that the field <em>F<\/em> cannot have characteristic 2. So\u00a0<em>F<\/em> could be the reals, the rationals, the complex numbers, etc.\u00a0<em>F<\/em> could even be a finite field as long as the number of elements in\u00a0<em>F<\/em> is not a power of 2.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I wrote several posts on poles and polars a few days ago. First, I wrote about the dual of a spherical triangle, called the polar triangle. Then I wrote about poles and polars in plane geometry and briefly mentioned the extension to projective geometry. Poles and polars are a little awkward in the plane because [&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":[154,224],"class_list":["post-248142","post","type-post","status-publish","format-standard","hentry","category-math","tag-algebraic-geometry","tag-geometry"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective geometry.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"algebraic geometry,geometry\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Poles &amp; polars in projective space with homogeneous coordinates\" \/>\n\t\t<meta property=\"og:description\" content=\"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective geometry.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-11-01T20:29:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-01T20:42:42+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Poles &amp; polars in projective space with homogeneous coordinates\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective 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":"Poles & polars in projective space with homogeneous coordinates","description":"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective geometry.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/","robots":"max-image-preview:large","keywords":"algebraic geometry,geometry","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"Poles &amp; polars in projective space with homogeneous coordinates","og:description":"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective geometry.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/","article:published_time":"2026-11-01T20:29:54+00:00","article:modified_time":"2026-11-01T20:42:42+00:00","twitter:card":"summary","twitter:title":"Poles &amp; polars in projective space with homogeneous coordinates","twitter:description":"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective geometry.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248142","title":"Poles &amp; polars in projective space with homogeneous coordinates","description":"Poles and polars are a little awkward in Euclidean geometry but simple and elegant in projective 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-11-01 19:27:21","updated":"2026-11-01 21:36:17","ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/www.johndcook.com\/blog\/category\/math\/\" title=\"Math\">Math<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tA unified view of poles and polars\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Math","link":"https:\/\/www.johndcook.com\/blog\/category\/math\/"},{"label":"A unified view of poles and polars","link":"https:\/\/www.johndcook.com\/blog\/2026\/11\/01\/projective-poles-and-polars\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248142","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=248142"}],"version-history":[{"count":6,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248142\/revisions"}],"predecessor-version":[{"id":248148,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248142\/revisions\/248148"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248136,"date":"2026-10-28T06:51:51","date_gmt":"2026-10-28T11:51:51","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248136"},"modified":"2026-10-28T06:53:07","modified_gmt":"2026-10-28T11:53:07","slug":"the-unbalanced-group-theorem","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/","title":{"rendered":"The Unbalanced Group Theorem"},"content":{"rendered":"<p>The classification of finite simple groups (CFSG) has been called the biggest theorem in mathematics. It is big, not necessarily in terms of its importance, but in the sense that its proof developed over the course of decades and thousands of pages of journal articles.<\/p>\n<p>Two days ago <a href=\"https:\/\/cfsg.axiommath.ai\/\">Axiom<\/a> announced it had formalized the proof of CFSG in 43.1 million lines of Lean. If you click on the link for the accompanying paper, you&#8217;ll find that the title of the paper is <strong>The Unbalanced Group Theorem<\/strong>, not The Classification of Finite Simple Groups. Why is that?<\/p>\n<p>The unbalanced group theorem (UGT) is a key component of the CFSG. In the course of their effort to formalize CFSG Axiom found counterexamples to an assertion that the 1986 proof of UGT depends on. The UGT, and the CFSG that depends on it, is correct, but the proof was flawed. Axiom formalized the entire CFSG but focused their paper on their new proof of the UGT.<\/p>\n<p style=\"text-align: center;\">***<\/p>\n<p>What exactly does the UGT say? For that matter, what is a finite simple group?<\/p>\n<p>A short post like this can only go into so much detail, but I&#8217;ll see what I can do.<\/p>\n<p>A group represents some kind of symmetry. Groups can be built out of simple groups sorta like the way integers can be built out of primes. See more on the comparison between simple groups and prime numbers <a href=\"https:\/\/www.johndcook.com\/blog\/2023\/09\/26\/prime-numbers-simple-groups\/\">here<\/a>.<\/p>\n<p>The CFSG says that every finite simple group is cyclic, alternating, of Lie type, or sporadic. The UGT is a technical result used in proving that nothing is missing from this list of possibilities.<\/p>\n<p>What does it mean for a group to be &#8220;unbalanced&#8221;? This depends on a few preliminary definitions.<\/p>\n<ul>\n<li>Define <em>O<\/em>(<em>G<\/em>) to be the largest normal subgroup of\u00a0<em>G<\/em> with an odd number of elements.<\/li>\n<li>An element <em>t<\/em> in <em>G<\/em> is called an involution if it has order 2:\u00a0<em>t<\/em> is not the identity but\u00a0<em>t<\/em>\u00b2 is.<\/li>\n<li>The centralizer of an element\u00a0<em>t<\/em> of a group\u00a0<em>G<\/em>, written <em>C<\/em><sub><em>G<\/em><\/sub>(<em>t<\/em>), is the set of elements of G that commute with\u00a0<em>t<\/em>.<\/li>\n<\/ul>\n<p>A group <em>G<\/em> is <strong>unbalanced<\/strong> if <em>O<\/em>(<em>C<\/em><sub><em>G<\/em><\/sub>(<em>t<\/em>)) is a not a subgroup of <em>O<\/em>(<em>G<\/em>) for some involution <em>t<\/em>.<\/p>\n<p>The UGT is a classification theorem for unbalanced groups.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2020\/08\/27\/how-big-is-the-monster\/'>How big is the monster?<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2018\/09\/02\/orders-of-finite-simple-groups\/'>Orders of finite simple groups<\/a><\/li>\n<li class='link'><a href='https:\/\/www.johndcook.com\/blog\/2018\/09\/09\/duplication-in-cfsg\/'>Overlaps in the CFSG<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The classification of finite simple groups (CFSG) has been called the biggest theorem in mathematics. It is big, not necessarily in terms of its importance, but in the sense that its proof developed over the course of decades and thousands of pages of journal articles. Two days ago Axiom announced it had formalized the proof [&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":[201],"class_list":["post-248136","post","type-post","status-publish","format-standard","hentry","category-math","tag-group-theory"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It&#039;s proof was wrong but the theorem is true.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"group theory\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"The Unbalanced Group Theorem\" \/>\n\t\t<meta property=\"og:description\" content=\"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It&#039;s proof was wrong but the theorem is true.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-28T11:51:51+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-28T11:53:07+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"The Unbalanced Group Theorem\" \/>\n\t\t<meta name=\"twitter:description\" content=\"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It&#039;s proof was wrong but the theorem is true.\" \/>\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":"The Unbalanced Group Theorem","description":"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It's proof was wrong but the theorem is true.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/","robots":"max-image-preview:large","keywords":"group theory","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"The Unbalanced Group Theorem","og:description":"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It's proof was wrong but the theorem is true.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/","article:published_time":"2026-10-28T11:51:51+00:00","article:modified_time":"2026-10-28T11:53:07+00:00","twitter:card":"summary","twitter:title":"The Unbalanced Group Theorem","twitter:description":"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It's proof was wrong but the theorem is true.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248136","title":null,"description":"The unbalanced group theorem is a key theorem in the classification of finite simple groups. It's proof was wrong but the theorem is true.","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-28 10:49:46","updated":"2026-10-28 13:20:15","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\tThe Unbalanced Group 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":"The Unbalanced Group Theorem","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/28\/the-unbalanced-group-theorem\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248136","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=248136"}],"version-history":[{"count":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248136\/revisions"}],"predecessor-version":[{"id":248138,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248136\/revisions\/248138"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248129,"date":"2026-10-27T07:13:21","date_gmt":"2026-10-27T12:13:21","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248129"},"modified":"2026-10-27T07:20:35","modified_gmt":"2026-10-27T12:20:35","slug":"eth-false","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/","title":{"rendered":"The Exponential Time Hypothesis is False"},"content":{"rendered":"<p>If you have an expression in <em>n<\/em> Boolean variables, how long does it take to find out whether some assignment of values to the variables makes the expression true? There is an obvious upper bound: you can find out in 2<sup><em>n<\/em><\/sup> steps by exhaustive search, trying all possible ways of setting each variable to true or false.<\/p>\n<p>You can often do better than exhaustive search for a particular problem, but can you <em>always<\/em> do better, even in the worst case? The Monien\u2013Speckenmeyer branching algorithm, published in 1985, is more efficient than exhaustive search, but it still takes exponential time.<\/p>\n<h2>3-SAT<\/h2>\n<p>The Boolean satisfiability problem (SAT) asks whether a Boolean expression in conjunctive normal form (<a href=\"https:\/\/www.johndcook.com\/blog\/seven-normal-forms-in-logic\/\">CNF<\/a>) can be satisfied by some assignment of values to the variables. The <em>k<\/em>-SAT problem is the special case of SAT in which no clause contains more than <em>k<\/em> variables. The 2-SAT problem can be solved in polynomial time, but the case of the 3-SAT problem is unknown.<\/p>\n<p>The 3-SAT problem is NP-complete, and so if there is a polynomial-time algorithm for solving 3-SAT, every NP problem, including the full SAT problem, can be solved in polynomial time, i.e. P = NP.<\/p>\n<p>The Monien\u2013Speckenmeyer algorithm mentioned above can solve a 3-SAT problem in<\/p>\n<p style=\"padding-left: 40px;\"><em>O<\/em>( |<em>F<\/em>| \u03c6<sup><em>n<\/em><\/sup> )<\/p>\n<p>time, where |<em>F<\/em>| is the length of the input formula and \u03c6 is the golden ratio. Now \u03c6 &lt; 2, and so this is better than exhaustive search, but the run time is still exponential in the number of variables\u00a0<em>n<\/em>.<\/p>\n<h2>ETH<\/h2>\n<p>The exponential time hypothesis (ETH) claims that 3-SAT requires exponential time, which would imply P \u2260 NP. <a href=\"https:\/\/hexagonmath.org\/2610.00577v1\">Anthropic<\/a> and <a href=\"https:\/\/github.com\/openai\/math\/blob\/main\/preprints\/The-Exponential-Time-Hypothesis-is-False-October-25-2026\/paper.pdf\">OpenAI<\/a> have both published proofs that ETH is false. The status of P = NP is still unknown: while 3-SAT does not take exponential time, it still takes more than polynomial time as far as anyone knows.<\/p>\n<p>Yesterday Shiva Kintali posted <a href=\"https:\/\/shivakintali.github.io\/papers\/ETH.pdf\">A simplified proof of ETH is false<\/a>. The abstract of the paper says<\/p>\n<p style=\"padding-left: 40px;\">For every fixed \u03b5 &gt; 0, we give a deterministic 3-SAT algorithm on <i>n<\/i> variables and <i>m<\/i> clauses using<\/p>\n<p style=\"padding-left: 80px;\"><i>C<\/i><sub><i>\u03b5<\/i><\/sub>(<i>n<\/i> + <i>m<\/i> + 1)<sup><i>c<\/i><sub><i>\u03b5<\/i><\/sub><\/sup> 2<sup><i>\u03b5n<\/i><\/sup><\/p>\n<p style=\"padding-left: 40px;\">bit operations, refuting ETH. Our simplified exposition of OpenAI\u2019s proof combines sparsification, bounded occurrences, spectral replacement, and rational interpolation.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/07\/31\/machine-learning-by-satisfiability-solving\/\">Machine learning by satisfiability solving<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/05\/11\/one-hot-sat\/\">Formulating the eight queens problem as a SAT problem<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2025\/03\/17\/lessons-learned-with-the-z3-sat-smt-solver\/\">Lessons learned using the Z3 SAT\/SMT solver<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>If you have an expression in n Boolean variables, how long does it take to find out whether some assignment of values to the variables makes the expression true? There is an obvious upper bound: you can find out in 2n steps by exhaustive search, trying all possible ways of setting each variable to true [&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":[301],"tags":[150,253],"class_list":["post-248129","post","type-post","status-publish","format-standard","hentry","category-computational-complexity","tag-logic","tag-sat-solvers"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"John\"\/>\n\t<meta name=\"keywords\" content=\"logic,sat solvers\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"The Exponential Time Hypothesis is False\" \/>\n\t\t<meta property=\"og:description\" content=\"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-27T12:13:21+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-27T12:20:35+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"The Exponential Time Hypothesis is False\" \/>\n\t\t<meta name=\"twitter:description\" content=\"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.\" \/>\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":"The Exponential Time Hypothesis is False","description":"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/","robots":"max-image-preview:large","keywords":"logic,sat solvers","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"John D. Cook | Applied Mathematics Consulting","og:type":"article","og:title":"The Exponential Time Hypothesis is False","og:description":"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/","article:published_time":"2026-10-27T12:13:21+00:00","article:modified_time":"2026-10-27T12:20:35+00:00","twitter:card":"summary","twitter:title":"The Exponential Time Hypothesis is False","twitter:description":"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248129","title":null,"description":"The exponential time hypothesis (ETH) claims that the worst-case time required to solve a Boolean satisfiability (SAT) problem is exponential. ETH is false.","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-27 10:50:23","updated":"2026-10-28 02:49:03","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\/computational-complexity\/\" title=\"Computational Complexity\">Computational Complexity<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tThe Exponential Time Hypothesis is False\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.johndcook.com\/blog\/"},{"label":"Computational Complexity","link":"https:\/\/www.johndcook.com\/blog\/category\/computational-complexity\/"},{"label":"The Exponential Time Hypothesis is False","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/27\/eth-false\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248129","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=248129"}],"version-history":[{"count":5,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248129\/revisions"}],"predecessor-version":[{"id":248134,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248129\/revisions\/248134"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248125,"date":"2026-10-26T13:39:32","date_gmt":"2026-10-26T18:39:32","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248125"},"modified":"2026-11-02T12:22:28","modified_gmt":"2026-11-02T18:22:28","slug":"inversion-in-an-ellipse","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/","title":{"rendered":"Inversion in an ellipse"},"content":{"rendered":"<p>The previous three post have been part of a series on geometric duality. The traditional but somewhat mysterious terminology is the\u00a0<em>pole<\/em> of a line and the\u00a0<em>polar<\/em> of a point. As explained <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/\">here<\/a>, the terminology was first coined in the context of spherical geometry where the term &#8220;pole&#8221; makes sense. It was then extended to the plane where the meaning is less obvious.<\/p>\n<p>The use of poles and polars is that they preserve certain geometric information, and so they can transform one problem into a dual problem. This was illustrated in the <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/polar-triangle\/\">first post<\/a> in the series. Equations in spherical trigonometry have a buy-one-get-one-free property: applying an identity to the dual of a triangle gives another identity.<\/p>\n<p><a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/\">This post<\/a> discussed how to define the pole of a line and the polar of a point with respect to a circle in the plane. The post stated that more generally you can do this in the projective plane. Since there&#8217;s no difference between conic sections in the projective plane, anything you can do for a circle you can do for an ellipse or hyperbola.<\/p>\n<p>Given a point\u00a0<em>P<\/em>, we can define its polar line geometrically or algebraically.<\/p>\n<h2>Algebraic approach<\/h2>\n<p>Given an ellipse with equation<\/p>\n<p style=\"padding-left: 40px;\"><em>x<\/em>\u00b2\/<em>a<\/em>\u00b2 +\u00a0<em>y<\/em>\u00b2\/<em>b<\/em>\u00b2 = 1<\/p>\n<p>where\u00a0<em>a<\/em>\u00a0&gt;\u00a0<em>b<\/em>, the foci are at \u00b1\u00a0<em>c<\/em>\u00a0where\u00a0<em>c<\/em>\u00a0= \u221a(<em>a<\/em>\u00b2 \u2212\u00a0<em>b<\/em>\u00b2).<\/p>\n<p>For a point <em>P<\/em> = (<em>x<\/em><sub>0<\/sub>, <em>y<\/em><sub>0<\/sub>), its polar with respect to the ellipse is the line<\/p>\n<p style=\"padding-left: 40px;\">(<em>x<\/em><sub>0<\/sub>\/<em>a<\/em>\u00b2) <em>x<\/em> + (<em>y<\/em><sub>0<\/sub>\/<em>b<\/em>\u00b2) <em>y<\/em> = 1.<\/p>\n<h2>Geometric approach<\/h2>\n<p>To find the polar of a point <em>P<\/em>, we start by inverting\u00a0<em>P<\/em> in the ellipse. Draw any line through <em>P<\/em> that meets the ellipse at two points <em>A<\/em> and <em>B<\/em>. On that line there is exactly one point Q that divides <em>AB<\/em> harmonically with <em>P<\/em>:<\/p>\n<p style=\"padding-left: 40px;\">QA\/QB = PA\/PB<\/p>\n<p dir=\"ltr\">with <em>Q<\/em> on the opposite side of <em>AB<\/em> from <em>P<\/em> if <em>P<\/em> is inside the ellipse, or between <em>A<\/em> and <em>B<\/em> if <em>P<\/em> is outside. The polar is the line through <em>Q<\/em> parallel to the tangent at <em>R<\/em>, where <em>R<\/em> is the point where the ray <em>OP<\/em> meets the ellipse.<\/p>\n<h2>Focus and directrix<\/h2>\n<p>Plane and projective geometry are very mature and so some of the terminology sounds quaint. One such term is the <em>directrix<\/em> of a conic section, explained <a href=\"https:\/\/www.johndcook.com\/blog\/2022\/10\/20\/directrix-of-a-conic\/\">here<\/a>. The polar of a focus is a directrix, and the pole of a directrix is a focus.<\/p>\n<h2>Related posts<\/h2>\n<ul>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/computing-polar-triangles\/\">Polar triangles and linear algebra<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2022\/04\/25\/projective-duality\/\">Projective duality<\/a><\/li>\n<li class=\"link\"><a href=\"https:\/\/www.johndcook.com\/blog\/2022\/11\/21\/ellipses-and-elliptic-integrals\/\">Posts on ellipses<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>The previous three post have been part of a series on geometric duality. The traditional but somewhat mysterious terminology is the\u00a0pole of a line and the\u00a0polar of a point. As explained here, the terminology was first coined in the context of spherical geometry where the term &#8220;pole&#8221; makes sense. It was then extended to 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":[224],"class_list":["post-248125","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.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.\" \/>\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\/26\/inversion-in-an-ellipse\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Pole and polar with respect to an ellipse\" \/>\n\t\t<meta property=\"og:description\" content=\"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-26T18:39:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-11-02T18:22:28+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Pole and polar with respect to an ellipse\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.\" \/>\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":"Pole and polar with respect to an ellipse","description":"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/","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":"Pole and polar with respect to an ellipse","og:description":"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/","article:published_time":"2026-10-26T18:39:32+00:00","article:modified_time":"2026-11-02T18:22:28+00:00","twitter:card":"summary","twitter:title":"Pole and polar with respect to an ellipse","twitter:description":"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248125","title":"Pole and polar with respect to an ellipse","description":"Inversion in an ellipse. Pole and polar with respect to an ellipse. Duality between focus and directrix.","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-26 17:37:57","updated":"2026-11-02 18:23:51","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\tInversion in an ellipse\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":"Inversion in an ellipse","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/inversion-in-an-ellipse\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248125","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=248125"}],"version-history":[{"count":4,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248125\/revisions"}],"predecessor-version":[{"id":248155,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248125\/revisions\/248155"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248125"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248125"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248125"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248119,"date":"2026-10-26T07:04:54","date_gmt":"2026-10-26T12:04:54","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248119"},"modified":"2026-10-26T07:10:27","modified_gmt":"2026-10-26T12:10:27","slug":"where-to-find-me","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/where-to-find-me\/","title":{"rendered":"Where else to find me"},"content":{"rendered":"<p>This blog is the main place I write, but I also use other platforms, either to write new content or to announce blog posts.<\/p>\n<h2>X (n\u00e9e Twitter)<\/h2>\n<p>I have a <a href=\"https:\/\/www.johndcook.com\/blog\/twitter_page\/\">several X accounts<\/a>, one personal account (@JohnDCook) and several specialized accounts (@CompSciFact, @AlgebraFact, @DataSciFact, etc.).\u00a0I announce new blog posts on the most relevant account.<\/p>\n<h2>RSS<\/h2>\n<p>You can subscribe to the blog via <a href=\"https:\/\/www.johndcook.com\/blog\/rss-feed\/\">RSS<\/a> and find out about each post as it&#8217;s published.<\/p>\n<p>RSS was very popular before Google killed its RSS reader, but it still works just fine. I use RSS to subscribe to the blogs I read.<\/p>\n<p>The hard part of using RSS is finding a reader you like. I use Inoreader. I&#8217;m sure an LLM could help you find an RSS reader for your preferences and help you get started using it.<\/p>\n<h2>Mathstodon &amp; Bluesky<\/h2>\n<p>I announce my math-related posts on Mathstodon at <a href=\"https:\/\/mathstodon.xyz\/@johndcook\">mathstodon.xyz\/@johndcook<\/a>. I also use a service that repeats my Mathstodon posts to Bluesky at <a href=\"https:\/\/bsky.app\/profile\/johndcook.mathstodon.xyz.ap.brid.gy\">johndcook.mathstodon.xyz.ap.brid.gy<\/a>.<\/p>\n<p>I don&#8217;t know why, but more people have started following me on Mathstodon over the last couple weeks.<\/p>\n<h2>Substack<\/h2>\n<p>Some people like to get email notifications of posts. I used two or three services that sent out such emails and they all stopped working. I tried out Substack and it has worked smoothly ever since.<\/p>\n<p>My Substack <a href=\"https:\/\/www.johndcook.com\/blog\/newsletter\/\">newsletter<\/a> has evolved into a bit more than just blog post announcements. I give a little intro to each post and some additional info such as how a sequence of posts are related or ideas that occurred to me after writing the post.<\/p>\n<h2>LinkedIn<\/h2>\n<p>Once in a while I post something to <a href=\"https:\/\/www.linkedin.com\/in\/johndcook\/\">LinkedIn<\/a>. If you&#8217;d like to know more about my background, you can see my profile there.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog is the main place I write, but I also use other platforms, either to write new content or to announce blog posts. X (n\u00e9e Twitter) I have a several X accounts, one personal account (@JohnDCook) and several specialized accounts (@CompSciFact, @AlgebraFact, @DataSciFact, etc.).\u00a0I announce new blog posts on the most relevant account. RSS [&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-248119","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"acf":[],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn\" \/>\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\/26\/where-to-find-me\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Where else to find me\" \/>\n\t\t<meta property=\"og:description\" content=\"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/where-to-find-me\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-26T12:04:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-26T12:10:27+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Where else to find me\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn\" \/>\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":"Where else to find me","description":"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/where-to-find-me\/","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":"Where else to find me","og:description":"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/where-to-find-me\/","article:published_time":"2026-10-26T12:04:54+00:00","article:modified_time":"2026-10-26T12:10:27+00:00","twitter:card":"summary","twitter:title":"Where else to find me","twitter:description":"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248119","title":null,"description":"Where else to find me: RSS, X (Twitter), Mathstodon, Bluesky, Substack, LinkedIn","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-26 11:28:05","updated":"2026-10-26 14:21:15","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\tWhere else to find me\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":"Where else to find me","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/26\/where-to-find-me\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248119","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=248119"}],"version-history":[{"count":5,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248119\/revisions"}],"predecessor-version":[{"id":248124,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248119\/revisions\/248124"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248119"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}},{"id":248115,"date":"2026-10-25T14:45:05","date_gmt":"2026-10-25T19:45:05","guid":{"rendered":"https:\/\/www.johndcook.com\/blog\/?p=248115"},"modified":"2026-10-25T19:51:42","modified_gmt":"2026-10-26T00:51:42","slug":"poles-and-polars","status":"publish","type":"post","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/","title":{"rendered":"Poles and polars"},"content":{"rendered":"<p>The previous two posts have been about polar triangles. The first <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/polar-triangle\/\">used<\/a> a polar triangle to derive a theorem, and the second showed how to <a href=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/24\/computing-polar-triangles\/\">compute<\/a> polars using linear algebra. But what exactly\u00a0<em>is<\/em> a polar triangle and why is it called that?<\/p>\n<h2>Poles and polars on a sphere<\/h2>\n<p>Let&#8217;s start with a sphere\u00a0<em>S<\/em> and a great circle\u00a0<em>G<\/em>. Then\u00a0<em>G<\/em> is the intersection of\u00a0<em>S<\/em> with a plane through the center of\u00a0<em>S<\/em>. The circle\u00a0<em>G<\/em> has two <strong>poles<\/strong>, two points on opposite sides of\u00a0<em>S<\/em> that are as far as possible (i.e. \u03c0\/2 radians) from\u00a0<em>G<\/em>. If you rotate the sphere so that\u00a0<em>G<\/em> is the equator, the poles are the north and south pole.<\/p>\n<p>Conversely, if you start with a point\u00a0<em>P<\/em> on the sphere\u00a0<em>S<\/em>, the\u00a0<strong>polar<\/strong> of\u00a0<em>P<\/em> is the great circle for which\u00a0<em>P<\/em> is a pole. So if you think of\u00a0<em>P<\/em> as the north pole, the polar of\u00a0<em>P<\/em> is the equator. The term <em>equator<\/em> would have been more intuitive than <em>polar<\/em>, but the terminology was established a couple centuries ago.<\/p>\n<p>In my opinion it would be clearer to call poles and polars both\u00a0<strong>duals<\/strong>. The dual of a great circle is a point, and the dual of a point is a great circle.<\/p>\n<p>Now let&#8217;s look at a spherical triangle <em>ABC<\/em>\u00a0sides <em>a<\/em>,\u00a0<em>b<\/em>, and\u00a0<em>c<\/em>. The vertices of the <strong>polar triangle<\/strong> of <em>ABC<\/em> are the poles of the sides <em>a<\/em>,\u00a0<em>b<\/em>, and\u00a0<em>c<\/em>. This definition is essentially correct, but it needs a little refinement.<\/p>\n<p>The pole <em>A<\/em>\u2032 of the side <em>a<\/em> is one of the two poles of the great circle containing\u00a0<em>a<\/em>, the one that that lies in the same hemisphere as\u00a0<em>A<\/em>. Define <em>B<\/em>\u2032 and <em>C<\/em>\u2032 similarly, and the polar triangle is the spherical triangle with vertices <em>A<\/em>\u2032<em>B<\/em>\u2032<em>C<\/em>\u2032.<\/p>\n<h2>Poles and polars in the plane<\/h2>\n<p>The terms\u00a0<em>pole<\/em> and <em>polar<\/em> were coined for spherical geometry, then generalized to plane (projective) geometry. If you think of great circles as the lines of spherical geometry, then you can carry the idea of poles and polars over to plane geometry where the pole (dual) of a line is a point, and the polar (dual) of a point is a line.<\/p>\n<p>However, in the plane you can&#8217;t define the pole of a line without more context. You have to start with a circle (or more generally a conic section) and define the pole of a line\u00a0<em>with respect to the circle<\/em> and the define the polar of a point\u00a0<em>with respect to the same circle<\/em>.<\/p>\n<p>Given a circle\u00a0<em>S<\/em> with center <em>O<\/em>, to find the polar of a point <em>P<\/em> \u2260 <em>O<\/em>, let\u00a0<em>Q<\/em> be the <a href=\"https:\/\/www.johndcook.com\/blog\/2022\/04\/19\/inversion-in-a-circle\/\">inversion<\/a> of\u00a0<em>P<\/em> in\u00a0<em>S<\/em>, and let \u2113 be the line through\u00a0<em>Q<\/em> perpendicular to the line\u00a0<em>OP<\/em>.<\/p>\n<p>Conversely, the pole of a line \u2113 with respect to a circle\u00a0<em>S<\/em> is the inversion of\u00a0<em>Q<\/em> in\u00a0<em>S<\/em> where\u00a0<em>Q<\/em> is the intersection of \u2113 with\u00a0<em>OQ<\/em>. Here we assume the line \u2113 does not pass through the center of the circle\u00a0<em>O<\/em> because otherwise\u00a0<em>O<\/em> =\u00a0<em>Q<\/em> and it doesn&#8217;t make sense to speak of the line\u00a0<em>OQ<\/em>.<\/p>\n<h2>Projective geometry<\/h2>\n<p>The definitions above have a couple holes that can be filled in by extending the Euclidean plane to the projective plane.<\/p>\n<p>We defined the pole of a line \u2113 except when \u2113 passes through the center of the circle. If \u2113 passes through\u00a0<em>O<\/em> then the pole of \u2113 is the point at infinity in the direction of \u2113. Similarly, we defined the polar of all points except\u00a0<em>O<\/em>. In projective geometry, we can define the polar of\u00a0<em>O<\/em> to the be the line at infinity, the line containing all the points at infinity.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The previous two posts have been about polar triangles. The first used a polar triangle to derive a theorem, and the second showed how to compute polars using linear algebra. But what exactly\u00a0is a polar triangle and why is it called that? Poles and polars on a sphere Let&#8217;s start with a sphere\u00a0S and a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[224],"class_list":["post-248115","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.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective 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\/25\/poles-and-polars\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\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=\"Poles and polars in spherical, plane, and projective geometry\" \/>\n\t\t<meta property=\"og:description\" content=\"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective geometry.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-25T19:45:05+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-26T00:51:42+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Poles and polars in spherical, plane, and projective geometry\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective 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":"Poles and polars in spherical, plane, and projective geometry","description":"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective geometry.","canonical_url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/","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":"Poles and polars in spherical, plane, and projective geometry","og:description":"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective geometry.","og:url":"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/","article:published_time":"2026-10-25T19:45:05+00:00","article:modified_time":"2026-10-26T00:51:42+00:00","twitter:card":"summary","twitter:title":"Poles and polars in spherical, plane, and projective geometry","twitter:description":"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective geometry.","twitter:image":"https:\/\/www.johndcook.com\/blog\/wp-content\/uploads\/2022\/05\/twittercard.png"},"aioseo_meta_data":{"post_id":"248115","title":"Poles and polars in spherical, plane, and projective geometry","description":"Duality in spherical and plane geometry. The dual of a line is called a pole, and the dual of a point is called a polar. Extension to projective 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-25 18:33:03","updated":"2026-10-26 11:29: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\tPoles and polars\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":"Poles and polars","link":"https:\/\/www.johndcook.com\/blog\/2026\/10\/25\/poles-and-polars\/"}],"_links":{"self":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248115","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=248115"}],"version-history":[{"count":2,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248115\/revisions"}],"predecessor-version":[{"id":248118,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/posts\/248115\/revisions\/248118"}],"wp:attachment":[{"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/media?parent=248115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/categories?post=248115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.johndcook.com\/blog\/wp-json\/wp\/v2\/tags?post=248115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}]