CINXE.COM
fundamental theorem of algebra in nLab
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" > <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> fundamental theorem of algebra in nLab </title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="robots" content="index,follow" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link href="/stylesheets/instiki.css?1676280126" media="all" rel="stylesheet" type="text/css" /> <link href="/stylesheets/mathematics.css?1660229990" media="all" rel="stylesheet" type="text/css" /> <link href="/stylesheets/syntax.css?1660229990" media="all" rel="stylesheet" type="text/css" /> <link href="/stylesheets/nlab.css?1676280126" media="all" rel="stylesheet" type="text/css" /> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/gh/dreampulse/computer-modern-web-font@master/fonts.css"/> <style type="text/css"> h1#pageName, div.info, .newWikiWord a, a.existingWikiWord, .newWikiWord a:hover, [actiontype="toggle"]:hover, #TextileHelp h3 { color: #226622; } a:visited.existingWikiWord { color: #164416; } </style> <style type="text/css"><!--/*--><![CDATA[/*><!--*/ .toc ul {margin: 0; padding: 0;} .toc ul ul {margin: 0; padding: 0 0 0 10px;} .toc li > p {margin: 0} .toc ul li {list-style-type: none; position: relative;} .toc div {border-top:1px dotted #ccc;} .rightHandSide h2 {font-size: 1.5em;color:#008B26} table.plaintable { border-collapse:collapse; margin-left:30px; border:0; } .plaintable td {border:1px solid #000; padding: 3px;} .plaintable th {padding: 3px;} .plaintable caption { font-weight: bold; font-size:1.1em; text-align:center; margin-left:30px; } /* Query boxes for questioning and answering mechanism */ div.query{ background: #f6fff3; border: solid #ce9; border-width: 2px 1px; padding: 0 1em; margin: 0 1em; max-height: 20em; overflow: auto; } /* Standout boxes for putting important text */ div.standout{ background: #fff1f1; border: solid black; border-width: 2px 1px; padding: 0 1em; margin: 0 1em; overflow: auto; } /* Icon for links to n-category arXiv documents (commented out for now i.e. disabled) a[href*="http://arxiv.org/"] { background-image: url(../files/arXiv_icon.gif); background-repeat: no-repeat; background-position: right bottom; padding-right: 22px; } */ /* Icon for links to n-category cafe posts (disabled) a[href*="http://golem.ph.utexas.edu/category"] { background-image: url(../files/n-cafe_5.gif); background-repeat: no-repeat; background-position: right bottom; padding-right: 25px; } */ /* Icon for links to pdf files (disabled) a[href$=".pdf"] { background-image: url(../files/pdficon_small.gif); background-repeat: no-repeat; background-position: right bottom; padding-right: 25px; } */ /* Icon for links to pages, etc. -inside- pdf files (disabled) a[href*=".pdf#"] { background-image: url(../files/pdf_entry.gif); background-repeat: no-repeat; background-position: right bottom; padding-right: 25px; } */ a.existingWikiWord { color: #226622; } a.existingWikiWord:visited { color: #226622; } a.existingWikiWord[title] { border: 0px; color: #aa0505; text-decoration: none; } a.existingWikiWord[title]:visited { border: 0px; color: #551111; text-decoration: none; } a[href^="http://"] { border: 0px; color: #003399; } a[href^="http://"]:visited { border: 0px; color: #330066; } a[href^="https://"] { border: 0px; color: #003399; } a[href^="https://"]:visited { border: 0px; color: #330066; } div.dropDown .hide { display: none; } div.dropDown:hover .hide { display:block; } div.clickDown .hide { display: none; } div.clickDown:focus { outline:none; } div.clickDown:focus .hide, div.clickDown:hover .hide { display: block; } div.clickDown .clickToReveal, div.clickDown:focus .clickToHide { display:block; } div.clickDown:focus .clickToReveal, div.clickDown .clickToHide { display:none; } div.clickDown .clickToReveal:after { content: "A(Hover to reveal, click to "hold")"; font-size: 60%; } div.clickDown .clickToHide:after { content: "A(Click to hide)"; font-size: 60%; } div.clickDown .clickToHide, div.clickDown .clickToReveal { white-space: pre-wrap; } .un_theorem, .num_theorem, .un_lemma, .num_lemma, .un_prop, .num_prop, .un_cor, .num_cor, .un_defn, .num_defn, .un_example, .num_example, .un_note, .num_note, .un_remark, .num_remark { margin-left: 1em; } span.theorem_label { margin-left: -1em; } .proof span.theorem_label { margin-left: 0em; } :target { background-color: #BBBBBB; border-radius: 5pt; } /*]]>*/--></style> <script src="/javascripts/prototype.js?1660229990" type="text/javascript"></script> <script src="/javascripts/effects.js?1660229990" type="text/javascript"></script> <script src="/javascripts/dragdrop.js?1660229990" type="text/javascript"></script> <script src="/javascripts/controls.js?1660229990" type="text/javascript"></script> <script src="/javascripts/application.js?1660229990" type="text/javascript"></script> <script src="/javascripts/page_helper.js?1660229990" type="text/javascript"></script> <script src="/javascripts/thm_numbering.js?1660229990" type="text/javascript"></script> <script type="text/x-mathjax-config"> <!--//--><![CDATA[//><!-- MathJax.Ajax.config.path["Contrib"] = "/MathJax"; MathJax.Hub.Config({ MathML: { useMathMLspacing: true }, "HTML-CSS": { scale: 90, extensions: ["handle-floats.js"] } }); MathJax.Hub.Queue( function () { var fos = document.getElementsByTagName('foreignObject'); for (var i = 0; i < fos.length; i++) { MathJax.Hub.Typeset(fos[i]); } }); //--><!]]> </script> <script type="text/javascript"> <!--//--><![CDATA[//><!-- window.addEventListener("DOMContentLoaded", function () { var div = document.createElement('div'); var math = document.createElementNS('http://www.w3.org/1998/Math/MathML', 'math'); document.body.appendChild(div); div.appendChild(math); // Test for MathML support comparable to WebKit version https://trac.webkit.org/changeset/203640 or higher. div.setAttribute('style', 'font-style: italic'); var mathml_unsupported = !(window.getComputedStyle(div.firstChild).getPropertyValue('font-style') === 'normal'); div.parentNode.removeChild(div); if (mathml_unsupported) { // MathML does not seem to be supported... var s = document.createElement('script'); s.src = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=MML_HTMLorMML-full"; document.querySelector('head').appendChild(s); } else { document.head.insertAdjacentHTML("beforeend", '<style>svg[viewBox] {max-width: 100%}</style>'); } }); //--><!]]> </script> <link href="https://ncatlab.org/nlab/atom_with_headlines" rel="alternate" title="Atom with headlines" type="application/atom+xml" /> <link href="https://ncatlab.org/nlab/atom_with_content" rel="alternate" title="Atom with full content" type="application/atom+xml" /> <script type="text/javascript"> document.observe("dom:loaded", function() { generateThmNumbers(); }); </script> </head> <body> <div id="Container"> <div id="Content"> <h1 id="pageName"> <span style="float: left; margin: 0.5em 0.25em -0.25em 0"> <svg xmlns="http://www.w3.org/2000/svg" width="1.872em" height="1.8em" viewBox="0 0 190 181"> <path fill="#226622" d="M72.8 145c-1.6 17.3-15.7 10-23.6 20.2-5.6 7.3 4.8 15 11.4 15 11.5-.2 19-13.4 26.4-20.3 3.3-3 8.2-4 11.2-7.2a14 14 0 0 0 2.9-11.1c-1.4-9.6-12.4-18.6-16.9-27.2-5-9.6-10.7-27.4-24.1-27.7-17.4-.3-.4 26 4.7 30.7 2.4 2.3 5.4 4.1 7.3 6.9 1.6 2.3 2.1 5.8-1 7.2-5.9 2.6-12.4-6.3-15.5-10-8.8-10.6-15.5-23-26.2-31.8-5.2-4.3-11.8-8-18-3.7-7.3 4.9-4.2 12.9.2 18.5a81 81 0 0 0 30.7 23c3.3 1.5 12.8 5.6 10 10.7-2.5 5.2-11.7 3-15.6 1.1-8.4-3.8-24.3-21.3-34.4-13.7-3.5 2.6-2.3 7.6-1.2 11.1 2.8 9 12.2 17.2 20.9 20.5 17.3 6.7 34.3-8 50.8-12.1z"/> <path fill="#a41e32" d="M145.9 121.3c-.2-7.5 0-19.6-4.5-26-5.4-7.5-12.9-1-14.1 5.8-1.4 7.8 2.7 14.1 4.8 21.3 3.4 12 5.8 29-.8 40.1-3.6-6.7-5.2-13-7-20.4-2.1-8.2-12.8-13.2-15.1-1.9-2 9.7 9 21.2 12 30.1 1.2 4 2 8.8 6.4 10.3 6.9 2.3 13.3-4.7 17.7-8.8 12.2-11.5 36.6-20.7 43.4-36.4 6.7-15.7-13.7-14-21.3-7.2-9.1 8-11.9 20.5-23.6 25.1 7.5-23.7 31.8-37.6 38.4-61.4 2-7.3-.8-29.6-13-19.8-14.5 11.6-6.6 37.6-23.3 49.2z"/> <path fill="#193c78" d="M86.3 47.5c0-13-10.2-27.6-5.8-40.4 2.8-8.4 14.1-10.1 17-1 3.8 11.6-.3 26.3-1.8 38 11.7-.7 10.5-16 14.8-24.3 2.1-4.2 5.7-9.1 11-6.7 6 2.7 7.4 9.2 6.6 15.1-2.2 14-12.2 18.8-22.4 27-3.4 2.7-8 6.6-5.9 11.6 2 4.4 7 4.5 10.7 2.8 7.4-3.3 13.4-16.5 21.7-16 14.6.7 12 21.9.9 26.2-5 1.9-10.2 2.3-15.2 3.9-5.8 1.8-9.4 8.7-15.7 8.9-6.1.1-9-6.9-14.3-9-14.4-6-33.3-2-44.7-14.7-3.7-4.2-9.6-12-4.9-17.4 9.3-10.7 28 7.2 35.7 12 2 1.1 11 6.9 11.4 1.1.4-5.2-10-8.2-13.5-10-11.1-5.2-30-15.3-35-27.3-2.5-6 2.8-13.8 9.4-13.6 6.9.2 13.4 7 17.5 12C70.9 34 75 43.8 86.3 47.4z"/> </svg> </span> <span class="webName">nLab</span> fundamental theorem of algebra </h1> <div class="navigation"> <span class="skipNav"><a href='#navEnd'>Skip the Navigation Links</a> | </span> <span style="display:inline-block; width: 0.3em;"></span> <a href="/nlab/show/HomePage" accesskey="H" title="Home page">Home Page</a> | <a href="/nlab/all_pages" accesskey="A" title="List of all pages">All Pages</a> | <a href="/nlab/latest_revisions" accesskey="U" title="Latest edits and page creations">Latest Revisions</a> | <a href="https://nforum.ncatlab.org/discussion/2199/#Item_79" title="Discuss this page in its dedicated thread on the nForum" style="color: black">Discuss this page</a> | <form accept-charset="utf-8" action="/nlab/search" id="navigationSearchForm" method="get"> <fieldset class="search"><input type="text" id="searchField" name="query" value="Search" style="display:inline-block; float: left;" onfocus="this.value == 'Search' ? this.value = '' : true" onblur="this.value == '' ? this.value = 'Search' : true" /></fieldset> </form> <span id='navEnd'></span> </div> <div id="revision"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" xml:lang="en" lang="en"> <head><meta http-equiv="Content-type" content="application/xhtml+xml;charset=utf-8" /><title></title></head> <body> <div class="rightHandSide"> <div class="toc clickDown" tabindex="0"> <h3 id="context">Context</h3> <h4 id="analysis">Analysis</h4> <div class="hide"><div> <p><strong><a class="existingWikiWord" href="/nlab/show/analysis">analysis</a></strong> (<a class="existingWikiWord" href="/nlab/show/differential+calculus">differential</a>/<a class="existingWikiWord" href="/nlab/show/integral+calculus">integral</a> <a class="existingWikiWord" href="/nlab/show/calculus">calculus</a>, <a class="existingWikiWord" href="/nlab/show/functional+analysis">functional analysis</a>, <a class="existingWikiWord" href="/nlab/show/topology">topology</a>)</p> <p><a class="existingWikiWord" href="/nlab/show/epsilontic+analysis">epsilontic analysis</a></p> <p><a class="existingWikiWord" href="/nlab/show/infinitesimal+analysis">infinitesimal analysis</a></p> <p><a class="existingWikiWord" href="/nlab/show/computable+analysis">computable analysis</a></p> <p><em><a class="existingWikiWord" href="/nlab/show/Introduction+to+Topology+--+1">Introduction</a></em></p> <h2 id="basic_concepts">Basic concepts</h2> <p><a class="existingWikiWord" href="/nlab/show/triangle+inequality">triangle inequality</a></p> <p><a class="existingWikiWord" href="/nlab/show/metric+space">metric space</a>, <a class="existingWikiWord" href="/nlab/show/normed+vector+space">normed vector space</a></p> <p><a class="existingWikiWord" href="/nlab/show/open+ball">open ball</a>, <a class="existingWikiWord" href="/nlab/show/open+subset">open subset</a>, <a class="existingWikiWord" href="/nlab/show/neighbourhood">neighbourhood</a></p> <p><a class="existingWikiWord" href="/nlab/show/metric+topology">metric topology</a></p> <p><a class="existingWikiWord" href="/nlab/show/sequence">sequence</a>, <a class="existingWikiWord" href="/nlab/show/net">net</a></p> <p><a class="existingWikiWord" href="/nlab/show/convergence">convergence</a>, <a class="existingWikiWord" href="/nlab/show/limit+of+a+sequence">limit of a sequence</a></p> <p><a class="existingWikiWord" href="/nlab/show/compact+space">compactness</a>, <a class="existingWikiWord" href="/nlab/show/sequentially+compact+space">sequential compactness</a></p> <p><a class="existingWikiWord" href="/nlab/show/differentiation">differentiation</a>, <a class="existingWikiWord" href="/nlab/show/integration">integration</a></p> <p><a class="existingWikiWord" href="/nlab/show/topological+vector+space">topological vector space</a></p> <h2 id="basic_facts">Basic facts</h2> <p><a class="existingWikiWord" href="/nlab/show/continuous+metric+space+valued+function+on+compact+metric+space+is+uniformly+continuous">continuous metric space valued function on compact metric space is uniformly continuous</a></p> <p>…</p> <h2 id="theorems">Theorems</h2> <p><a class="existingWikiWord" href="/nlab/show/intermediate+value+theorem">intermediate value theorem</a></p> <p><a class="existingWikiWord" href="/nlab/show/extreme+value+theorem">extreme value theorem</a></p> <p><a class="existingWikiWord" href="/nlab/show/Heine-Borel+theorem">Heine-Borel theorem</a></p> <p>…</p> </div></div> <h4 id="algebra">Algebra</h4> <div class="hide"><div> <ul> <li><a class="existingWikiWord" href="/nlab/show/algebra">algebra</a>, <a class="existingWikiWord" href="/nlab/show/higher+algebra">higher algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/universal+algebra">universal algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/monoid">monoid</a>, <a class="existingWikiWord" href="/nlab/show/semigroup">semigroup</a>, <a class="existingWikiWord" href="/nlab/show/quasigroup">quasigroup</a></li> <li><a class="existingWikiWord" href="/nlab/show/nonassociative+algebra">nonassociative algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/associative+unital+algebra">associative unital algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/commutative+algebra">commutative algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/Lie+algebra">Lie algebra</a>, <a class="existingWikiWord" href="/nlab/show/Jordan+algebra">Jordan algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/Leibniz+algebra">Leibniz algebra</a>, <a class="existingWikiWord" href="/nlab/show/pre-Lie+algebra">pre-Lie algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/Poisson+algebra">Poisson algebra</a>, <a class="existingWikiWord" href="/nlab/show/Frobenius+algebra">Frobenius algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/lattice">lattice</a>, <a class="existingWikiWord" href="/nlab/show/frame">frame</a>, <a class="existingWikiWord" href="/nlab/show/quantale">quantale</a></li> <li><a class="existingWikiWord" href="/nlab/show/Boolean+ring">Boolean ring</a>, <a class="existingWikiWord" href="/nlab/show/Heyting+algebra">Heyting algebra</a></li> <li><a class="existingWikiWord" href="/nlab/show/commutator">commutator</a>, <a class="existingWikiWord" href="/nlab/show/center">center</a></li> <li><a class="existingWikiWord" href="/nlab/show/monad">monad</a>, <a class="existingWikiWord" href="/nlab/show/comonad">comonad</a></li> <li><a class="existingWikiWord" href="/nlab/show/distributive+law">distributive law</a></li> </ul> <h2 id="group_theory">Group theory</h2> <ul> <li><a class="existingWikiWord" href="/nlab/show/group">group</a>, <a class="existingWikiWord" href="/nlab/show/normal+subgroup">normal subgroup</a></li> <li><a class="existingWikiWord" href="/nlab/show/action">action</a>, <a class="existingWikiWord" href="/nlab/show/Cayley%27s+theorem">Cayley's theorem</a></li> <li><a class="existingWikiWord" href="/nlab/show/centralizer">centralizer</a>, <a class="existingWikiWord" href="/nlab/show/normalizer">normalizer</a></li> <li><a class="existingWikiWord" href="/nlab/show/abelian+group">abelian group</a>, <a class="existingWikiWord" href="/nlab/show/cyclic+group">cyclic group</a></li> <li><a class="existingWikiWord" href="/nlab/show/group+extension">group extension</a>, <a class="existingWikiWord" href="/nlab/show/Galois+extension">Galois extension</a></li> <li><a class="existingWikiWord" href="/nlab/show/algebraic+group">algebraic group</a>, <a class="existingWikiWord" href="/nlab/show/formal+group">formal group</a></li> <li><a class="existingWikiWord" href="/nlab/show/Lie+group">Lie group</a>, <a class="existingWikiWord" href="/nlab/show/quantum+group">quantum group</a></li> </ul> <h2 id="ring_theory">Ring theory</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/ring">ring</a>, <a class="existingWikiWord" href="/nlab/show/commutative+ring">commutative ring</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/local+ring">local ring</a>, <a class="existingWikiWord" href="/nlab/show/Artinian+ring">Artinian ring</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Noetherian+ring">Noetherian ring</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/skewfield">skewfield</a>, <a class="existingWikiWord" href="/nlab/show/field">field</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/integral+domain">integral domain</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/ideal">ideal</a>, <a class="existingWikiWord" href="/nlab/show/prime+ideal">prime ideal</a>, <a class="existingWikiWord" href="/nlab/show/maximal+ideal">maximal ideal</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Ore+localization">Ore localization</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/group+extension">group extension</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/central+simple+algebra">central simple algebra</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/derivation">derivation</a>, <a class="existingWikiWord" href="/nlab/show/Ore+extension">Ore extension</a></p> </li> </ul> <h2 id="module_theory">Module theory</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/module">module</a>, <a class="existingWikiWord" href="/nlab/show/bimodule">bimodule</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/vector+space">vector space</a>, <a class="existingWikiWord" href="/nlab/show/linear+algebra">linear algebra</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/matrix">matrix</a>, <a class="existingWikiWord" href="/nlab/show/eigenvalue">eigenvalue</a>, <a class="existingWikiWord" href="/nlab/show/trace">trace</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/determinant">determinant</a>, <a class="existingWikiWord" href="/nlab/show/quasideterminant">quasideterminant</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/representation+theory">representation theory</a>, <a class="existingWikiWord" href="/nlab/show/Schur+lemma">Schur lemma</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/extension+of+scalars">extension of scalars</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/restriction+of+scalars">restriction of scalars</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Frobenius+reciprocity">Frobenius reciprocity</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Morita+equivalence">Morita equivalence</a>, <a class="existingWikiWord" href="/nlab/show/Morita+context">Morita context</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Wedderburn-Artin+theorem">Wedderburn-Artin theorem</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/abelian+category">abelian category</a>, <a class="existingWikiWord" href="/nlab/show/additive+category">additive category</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/monoidal+category">monoidal category</a>, <a class="existingWikiWord" href="/nlab/show/Tannaka+duality">Tannaka duality</a></p> </li> </ul> <h2 id=""><a class="existingWikiWord" href="/nlab/show/gebra+theory">Gebras</a></h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/coalgebra">coalgebra</a>, <a class="existingWikiWord" href="/nlab/show/coring">coring</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/bialgebra">bialgebra</a>, <a class="existingWikiWord" href="/nlab/show/Hopf+algebra">Hopf algebra</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/comodule">comodule</a>, <a class="existingWikiWord" href="/nlab/show/Hopf+module">Hopf module</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Yetter-Drinfeld+module">Yetter-Drinfeld module</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/associative+bialgebroid">associative bialgebroid</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/dual+gebra">dual gebra</a>, <a class="existingWikiWord" href="/nlab/show/cotensor+product">cotensor product</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Hopf-Galois+extension">Hopf-Galois extension</a></p> </li> </ul> </div></div> </div> </div> <h1 id='section_table_of_contents'>Contents</h1> <div class='maruku_toc'> <ul> <li><a href='#statement'>Statement</a></li> <li><a href='#algebraic_proof_via_real_closed_fields'>Algebraic proof via real closed fields</a></li> <li><a href='#classical_fta_via_advanced_calculus'>Classical FTA via advanced calculus</a></li> <li><a href='#in_weak_foundations'>In weak foundations</a></li> <ul> <li><a href='#in_constructive_mathematics'>In constructive mathematics</a></li> <li><a href='#in_rca_0'>In RCA_0</a></li> </ul> <li><a href='#History'>History</a></li> <li><a href='#References'>References</a></li> </ul> </div> <h2 id="statement">Statement</h2> <p>Classically, the <strong>fundamental theorem of algebra</strong> states that</p> <ul> <li>The <a class="existingWikiWord" href="/nlab/show/field">field</a> of <a class="existingWikiWord" href="/nlab/show/complex+number">complex number</a>s <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> is <a class="existingWikiWord" href="/nlab/show/algebraically+closed+field">algebraically closed</a>. In other words, every nonconstant <a class="existingWikiWord" href="/nlab/show/polynomial+function">polynomial function</a> with <a class="existingWikiWord" href="/nlab/show/coefficients">coefficients</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> has a <a class="existingWikiWord" href="/nlab/show/root">root</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math>.</li> </ul> <p>Since every non-zero polynomial could be made a <a class="existingWikiWord" href="/nlab/show/monic+polynomial">monic polynomial</a> by dividing by the leading coefficient, it could also be expressed as</p> <ul> <li>The <a class="existingWikiWord" href="/nlab/show/field">field</a> of <a class="existingWikiWord" href="/nlab/show/complex+number">complex number</a>s <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> is <a class="existingWikiWord" href="/nlab/show/integrally+closed+field">integrally closed</a>. In other words, every <a class="existingWikiWord" href="/nlab/show/monic+polynomial">monic</a> <a class="existingWikiWord" href="/nlab/show/polynomial+function">polynomial function</a> with <a class="existingWikiWord" href="/nlab/show/coefficients">coefficients</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> has a <a class="existingWikiWord" href="/nlab/show/root">root</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math>.</li> </ul> <p>Many proofs of this theorem are known (see the <a href="#References">references</a> below); some use <a class="existingWikiWord" href="/nlab/show/complex+analysis">complex analysis</a> (the reciprocal of a <a class="existingWikiWord" href="/nlab/show/polynomial+function">polynomial function</a> cannot be bounded), some use <a class="existingWikiWord" href="/nlab/show/algebraic+topology">algebraic topology</a> (the degree of a map is invariant with respect to homotopy), and some use advanced calculus (polynomial functions on the complex numbers are <a class="existingWikiWord" href="/nlab/show/open+map">open mappings</a>). All of these proofs involve, at some level, the fact that the real numbers are <a class="existingWikiWord" href="/nlab/show/Dedekind+real+number">Dedekind complete</a>, which has as a consequence the fact that the real numbers are <a class="existingWikiWord" href="/nlab/show/archimedean+field">archimedean</a>.</p> <h2 id="algebraic_proof_via_real_closed_fields">Algebraic proof via real closed fields</h2> <p>Despite its name, the fundamental theorem of algebra makes reference to a concept from <a class="existingWikiWord" href="/nlab/show/analysis">analysis</a> (the field of complex numbers). However, the analytic part may be reduced to a minimum: that the field of <a class="existingWikiWord" href="/nlab/show/real+numbers">real numbers</a> is <a class="existingWikiWord" href="/nlab/show/real+closed+field">real closed</a>. This has been known essentially forever, and is easily proved using (for example) the <a class="existingWikiWord" href="/nlab/show/intermediate+value+theorem">intermediate value theorem</a>.</p> <p>The rest of the proof is algebraic and, unlike the other proof methods, applies to all <a class="existingWikiWord" href="/nlab/show/real+closed+field">real closed field</a>s, which need not be archimedean. It is due to <a class="existingWikiWord" href="/nlab/show/Emil+Artin">Emil Artin</a>, and forms a basic chapter in the Artin–Schreier theory of real closed fields.</p> <p>We recall that a <em>real closed field</em> is an <a class="existingWikiWord" href="/nlab/show/ordered+field">ordered field</a> such that every positive element has a <a class="existingWikiWord" href="/nlab/show/square+root">square root</a>, and every polynomial function of odd degree has a root. Note that the polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>+</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">x^2 + 1</annotation></semantics></math> cannot have any root in a real closed field — or in fact in any ordered field, since we always have <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>≥</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">x^2\ge 0</annotation></semantics></math> and hence <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>+</mo><mn>1</mn><mo>≥</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">x^2+1 \ge 1</annotation></semantics></math>.</p> <div class="num_theorem"> <h6 id="theorem">Theorem</h6> <p>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> is real closed, then <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi><mo>=</mo><mi>F</mi><mo stretchy="false">[</mo><msqrt><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn></mrow></msqrt><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">K = F[\sqrt{-1}]</annotation></semantics></math> is algebraically closed.</p> </div> <div class="proof"> <h6 id="proof">Proof</h6> <p>We must show that any <a class="existingWikiWord" href="/nlab/show/irreducible+polynomial">irreducible polynomial</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math> of degree greater than <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>0</mn></mrow><annotation encoding="application/x-tex">0</annotation></semantics></math> with coefficients in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math> has a root in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math>. Since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> has characteristic <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>0</mn></mrow><annotation encoding="application/x-tex">0</annotation></semantics></math>, it is a <a class="existingWikiWord" href="/nlab/show/perfect+field">perfect field</a>.</p> <p>Thus the <a class="existingWikiWord" href="/nlab/show/splitting+field">splitting field</a> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math> is a finite <a class="existingWikiWord" href="/nlab/show/Galois+extension">Galois extension</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>L</mi></mrow><annotation encoding="application/x-tex">L</annotation></semantics></math> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math>, with <a class="existingWikiWord" href="/nlab/show/Galois+group">Galois group</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi></mrow><annotation encoding="application/x-tex">G</annotation></semantics></math>. If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi><mo stretchy="false">(</mo><mn>2</mn><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">G(2)</annotation></semantics></math> is the <a href="http://ncatlab.org/nlab/show/class+equation#sylow_theorems">Sylow 2-group</a> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi></mrow><annotation encoding="application/x-tex">G</annotation></semantics></math>, then the <span class="newWikiWord">fixed field<a href="/nlab/new/fixed+field">?</a></span> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>E</mi></mrow><annotation encoding="application/x-tex">E</annotation></semantics></math> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi><mo stretchy="false">(</mo><mn>2</mn><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">G(2)</annotation></semantics></math> is an odd degree extension of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math>. Any <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>α</mi><mo>∈</mo><mi>E</mi></mrow><annotation encoding="application/x-tex">\alpha \in E</annotation></semantics></math> must then have an irreducible polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>q</mi><mo>∈</mo><mi>F</mi><mo stretchy="false">[</mo><mi>x</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">q \in F[x]</annotation></semantics></math> of odd degree. But since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> is real closed, <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>q</mi></mrow><annotation encoding="application/x-tex">q</annotation></semantics></math> has a root in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math>; by irreducibility, <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>deg</mi><mo stretchy="false">(</mo><mi>q</mi><mo stretchy="false">)</mo><mo>=</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">\deg(q) = 1</annotation></semantics></math> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>α</mi><mo>∈</mo><mi>F</mi></mrow><annotation encoding="application/x-tex">\alpha \in F</annotation></semantics></math>, forcing <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>E</mi><mo>=</mo><mi>F</mi></mrow><annotation encoding="application/x-tex">E = F</annotation></semantics></math> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi><mo>=</mo><mi>G</mi><mo stretchy="false">(</mo><mn>2</mn><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">G = G(2)</annotation></semantics></math>. We have <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>G</mi><mo stretchy="false">|</mo></mrow><mo>></mo><mn>1</mn></mrow><annotation encoding="application/x-tex">{|G|} \gt 1</annotation></semantics></math> since the splitting field contains <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math>.</p> <p>So <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>G</mi></mrow><annotation encoding="application/x-tex">G</annotation></semantics></math> is a <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>2</mn></mrow><annotation encoding="application/x-tex">2</annotation></semantics></math>-<a class="existingWikiWord" href="/nlab/show/primary+group">primary group</a>. But for any <a class="existingWikiWord" href="/nlab/show/prime+number">prime number</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math>, a nontrivial finite <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math>-group has nontrivial <a class="existingWikiWord" href="/nlab/show/center">center</a> (see <a href="/nlab/show/class+equation#pgroup">here</a>), and is therefore <a class="existingWikiWord" href="/nlab/show/solvable+group">solvable</a> by an inductive argument. Therefore the extension <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>L</mi><mo stretchy="false">/</mo><mi>F</mi></mrow><annotation encoding="application/x-tex">L/F</annotation></semantics></math> arises from a tower of non-trivial <span class="newWikiWord">quadratic extension<a href="/nlab/new/quadratic+extension">?</a></span>s</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mi>F</mi><mo>⊆</mo><msub><mi>L</mi> <mn>1</mn></msub><mo>⊆</mo><mi>…</mi><mo>⊆</mo><msub><mi>L</mi> <mi>n</mi></msub><mo>=</mo><mi>L</mi></mrow><annotation encoding="application/x-tex">F \subseteq L_1 \subseteq \ldots \subseteq L_n = L</annotation></semantics></math></div> <p>By the <a class="existingWikiWord" href="/nlab/show/quadratic+formula">quadratic formula</a>, the first field <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>L</mi> <mn>1</mn></msub></mrow><annotation encoding="application/x-tex">L_1</annotation></semantics></math> arises by adjoining roots to <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> of a polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>+</mo><mi>a</mi><mi>x</mi><mo>+</mo><mi>b</mi></mrow><annotation encoding="application/x-tex">x^2 + a x + b</annotation></semantics></math>,</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mfrac><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>a</mi><mo>±</mo><msqrt><mrow><msup><mi>a</mi> <mn>2</mn></msup><mo>−</mo><mn>4</mn><mi>b</mi></mrow></msqrt></mrow><mn>2</mn></mfrac><mo>,</mo></mrow><annotation encoding="application/x-tex">\frac{-a \pm \sqrt{a^2 - 4b}}{2},</annotation></semantics></math></div> <p>where <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>a</mi> <mn>2</mn></msup><mo>−</mo><mn>4</mn><mi>b</mi></mrow><annotation encoding="application/x-tex">a^2 - 4b</annotation></semantics></math> is negative. Since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> is real closed, the positive element <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>4</mn><mi>b</mi><mo>−</mo><msup><mi>a</mi> <mn>2</mn></msup></mrow><annotation encoding="application/x-tex">4b - a^2</annotation></semantics></math> has a square root in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math>, so that the roots displayed above belong to <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi><mo>=</mo><mi>F</mi><mo stretchy="false">[</mo><msqrt><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn></mrow></msqrt><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">K = F[\sqrt{-1}]</annotation></semantics></math>. So <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>L</mi> <mn>1</mn></msub><mo>=</mo><mi>K</mi></mrow><annotation encoding="application/x-tex">L_1 = K</annotation></semantics></math>. But <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math> has no nontrivial quadratic extensions by the lemma that follows, so in fact <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>L</mi> <mn>1</mn></msub><mo>=</mo><msub><mi>L</mi> <mi>n</mi></msub><mo>=</mo><mi>K</mi></mrow><annotation encoding="application/x-tex">L_1 = L_n = K</annotation></semantics></math> and the theorem is proved.</p> </div> <div class="num_lemma" id="sqrt"> <h6 id="lemma">Lemma</h6> <p>Every element of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi><mo>=</mo><mi>F</mi><mo stretchy="false">[</mo><msqrt><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn></mrow></msqrt><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">K = F[\sqrt{-1}]</annotation></semantics></math> has a square root in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math>.</p> </div> <div class="proof"> <h6 id="proof_2">Proof</h6> <p>The proof is most easily apprehended by analogy with polar coordinate representations of complex numbers and half-angle formulas, where a square root of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>r</mi><msup><mi>e</mi> <mrow><mi>i</mi><mi>θ</mi></mrow></msup></mrow><annotation encoding="application/x-tex">r e^{i\theta}</annotation></semantics></math> is given by <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>r</mi> <mrow><mn>1</mn><mo stretchy="false">/</mo><mn>2</mn></mrow></msup><msup><mi>e</mi> <mrow><mi>i</mi><mi>θ</mi><mo stretchy="false">/</mo><mn>2</mn></mrow></msup></mrow><annotation encoding="application/x-tex">r^{1/2}e^{i\theta /2}</annotation></semantics></math>. Let <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>i</mi></mrow><annotation encoding="application/x-tex">i</annotation></semantics></math> be a fixed square root of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">-1</annotation></semantics></math>, and let <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi></mrow><annotation encoding="application/x-tex">a + b i</annotation></semantics></math> be an arbitrary element of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>K</mi></mrow><annotation encoding="application/x-tex">K</annotation></semantics></math>, with <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>a</mi><mo>,</mo><mi>b</mi><mo>∈</mo><mi>F</mi></mrow><annotation encoding="application/x-tex">a, b \in F</annotation></semantics></math>. We must solve <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">(</mo><mi>x</mi><mo>+</mo><mi>y</mi><mi>i</mi><msup><mo stretchy="false">)</mo> <mn>2</mn></msup><mo>=</mo><mi>a</mi><mo>+</mo><mi>b</mi><mi>i</mi></mrow><annotation encoding="application/x-tex">(x + y i)^2 = a + b i</annotation></semantics></math>, i.e., find <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>∈</mo><mi>F</mi></mrow><annotation encoding="application/x-tex">x, y \in F</annotation></semantics></math> that solve</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>−</mo><msup><mi>y</mi> <mn>2</mn></msup><mo>=</mo><mi>a</mi><mo>,</mo><mspace width="2em"></mspace><mn>2</mn><mi>x</mi><mi>y</mi><mo>=</mo><mi>b</mi></mrow><annotation encoding="application/x-tex">x^2 - y^2 = a, \qquad 2x y = b</annotation></semantics></math></div> <p>Since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>a</mi> <mn>2</mn></msup><mo>+</mo><msup><mi>b</mi> <mn>2</mn></msup></mrow><annotation encoding="application/x-tex">a^2 + b^2</annotation></semantics></math> has a square root in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math>, we may assume by homogeneity in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>,</mo><mi>y</mi></mrow><annotation encoding="application/x-tex">x, y</annotation></semantics></math> that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">(</mo><mi>a</mi><mo>,</mo><mi>b</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">(a, b)</annotation></semantics></math> is on the unit circle: <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>a</mi> <mn>2</mn></msup><mo>+</mo><msup><mi>b</mi> <mn>2</mn></msup><mo>=</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">a^2 + b^2 = 1</annotation></semantics></math>. By interchanging <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi></mrow><annotation encoding="application/x-tex">x</annotation></semantics></math> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>y</mi></mrow><annotation encoding="application/x-tex">y</annotation></semantics></math> if need be, we may assume <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>0</mn><mo>≤</mo><mi>a</mi><mo>≤</mo><mn>1</mn></mrow><annotation encoding="application/x-tex">0 \leq a \leq 1</annotation></semantics></math>; replacing <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>y</mi></mrow><annotation encoding="application/x-tex">y</annotation></semantics></math> by <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo lspace="verythinmathspace" rspace="0em">−</mo><mi>y</mi></mrow><annotation encoding="application/x-tex">-y</annotation></semantics></math> if need be, we may assume <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>b</mi><mo>≥</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">b \geq 0</annotation></semantics></math>. Taking <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>≥</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">x, y \geq 0</annotation></semantics></math> such that</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>=</mo><mfrac><mrow><mn>1</mn><mo>+</mo><mi>a</mi></mrow><mn>2</mn></mfrac><mo>,</mo><mspace width="2em"></mspace><msup><mi>y</mi> <mn>2</mn></msup><mo>=</mo><mfrac><mrow><mn>1</mn><mo>−</mo><mi>a</mi></mrow><mn>2</mn></mfrac><mo>,</mo></mrow><annotation encoding="application/x-tex">x^2 = \frac{1+a}{2}, \qquad y^2 = \frac{1-a}{2},</annotation></semantics></math></div> <p>we obtain a solution (since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>x</mi> <mn>2</mn></msup><mo>−</mo><msup><mi>y</mi> <mn>2</mn></msup><mo>=</mo><mi>a</mi></mrow><annotation encoding="application/x-tex">x^2 - y^2 = a</annotation></semantics></math> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>4</mn><msup><mi>x</mi> <mn>2</mn></msup><msup><mi>y</mi> <mn>2</mn></msup><mo>=</mo><msup><mi>b</mi> <mn>2</mn></msup></mrow><annotation encoding="application/x-tex">4 x^2 y^2 = b^2</annotation></semantics></math>).</p> </div> <h2 id="classical_fta_via_advanced_calculus">Classical FTA via advanced calculus</h2> <p>As noted above, many proofs of the fundamental theorem are known. The following proof, ultimately rooted in the fact that <a class="existingWikiWord" href="/nlab/show/polynomial+mappings">polynomial mappings</a> on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> are <a class="existingWikiWord" href="/nlab/show/open+mappings">open mappings</a>, has the advantage that it requires very little machinery. From what I (<a class="existingWikiWord" href="/nlab/show/Todd+Trimble">Todd Trimble</a>) understand, it is close to the method used by Argand to give his proof (1814)<sup id="fnref:1"><a href="#fn:1" rel="footnote">1</a></sup>.</p> <p>Let <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo lspace="verythinmathspace">:</mo><mi>ℂ</mi><mo>→</mo><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">f\colon \mathbb{C} \to \mathbb{C}</annotation></semantics></math> be a nonconstant polynomial mapping, and suppose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi></mrow><annotation encoding="application/x-tex">f</annotation></semantics></math> has no zero.</p> <ol> <li> <p>Let <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>s</mi></mrow><annotation encoding="application/x-tex">s</annotation></semantics></math> be the <a class="existingWikiWord" href="/nlab/show/infimum">infimum</a> of values <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">{|f(z)|}</annotation></semantics></math>; choose a <a class="existingWikiWord" href="/nlab/show/sequence">sequence</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>z</mi> <mn>1</mn></msub><mo>,</mo><msub><mi>z</mi> <mn>2</mn></msub><mo>,</mo><msub><mi>z</mi> <mn>3</mn></msub><mo>,</mo><mi>…</mi></mrow><annotation encoding="application/x-tex">z_1, z_2, z_3, \ldots</annotation></semantics></math> such that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mi>n</mi></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>→</mo><mi>s</mi></mrow><annotation encoding="application/x-tex">{|f(z_n)|} \to s</annotation></semantics></math>. Since <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>lim</mi> <mrow><mi>z</mi><mo>→</mo><mn>∞</mn></mrow></msub><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo>=</mo><mn>∞</mn></mrow><annotation encoding="application/x-tex">\lim_{z \to \infty} f(z) = \infty</annotation></semantics></math>, the sequence <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>z</mi> <mi>n</mi></msub></mrow><annotation encoding="application/x-tex">z_n</annotation></semantics></math> must be bounded; by the Bolzano-Weierstrass theorem it has a <a class="existingWikiWord" href="/nlab/show/sequence">subsequence</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>z</mi> <mrow><msub><mi>n</mi> <mi>k</mi></msub></mrow></msub></mrow><annotation encoding="application/x-tex">z_{n_k}</annotation></semantics></math> that converges to some point <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>z</mi> <mn>0</mn></msub></mrow><annotation encoding="application/x-tex">z_0</annotation></semantics></math>. Then <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mrow><msub><mi>n</mi> <mi>k</mi></msub></mrow></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">{|f(z_{n_k})|}</annotation></semantics></math> converges to <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">{|f(z_0)|}</annotation></semantics></math> by continuity, and converges to <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>s</mi></mrow><annotation encoding="application/x-tex">s</annotation></semantics></math> as well, so <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">{|f(z)|}</annotation></semantics></math> attains an absolute minimum <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>s</mi></mrow><annotation encoding="application/x-tex">s</annotation></semantics></math> at <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>z</mi><mo>=</mo><msub><mi>z</mi> <mn>0</mn></msub></mrow><annotation encoding="application/x-tex">z = z_0</annotation></semantics></math>. By supposition, <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo>≠</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">f(z_0) \neq 0</annotation></semantics></math>.</p> </li> <li> <p>The polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi></mrow><annotation encoding="application/x-tex">f</annotation></semantics></math> may be uniquely written in the form</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo>=</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo>+</mo><mi>g</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo stretchy="false">(</mo><mi>z</mi><mo>−</mo><msub><mi>z</mi> <mn>0</mn></msub><msup><mo stretchy="false">)</mo> <mi>n</mi></msup></mrow><annotation encoding="application/x-tex">f(z) = f(z_0) + g(z)(z - z_0)^n</annotation></semantics></math></div> <p>where <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi></mrow><annotation encoding="application/x-tex">g</annotation></semantics></math> is polynomial function and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo>≠</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">g(z_0) \neq 0</annotation></semantics></math>. Put</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo>=</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo>+</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">(</mo><mi>z</mi><mo>−</mo><msub><mi>z</mi> <mn>0</mn></msub><msup><mo stretchy="false">)</mo> <mi>n</mi></msup></mrow><annotation encoding="application/x-tex">F(z) = f(z_0) + g(z_0)(z - z_0)^n</annotation></semantics></math></div> <p>and choose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>δ</mi><mo>></mo><mn>0</mn></mrow><annotation encoding="application/x-tex">\delta \gt 0</annotation></semantics></math> small so that</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>z</mi><mo>−</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">|</mo></mrow><mo>=</mo><mi>δ</mi><mo>⇒</mo><mrow><mo stretchy="false">|</mo><mi>g</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo>−</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo><</mo><mrow><mo stretchy="false">|</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>.</mo></mrow><annotation encoding="application/x-tex">{|z - z_0|} = \delta \Rightarrow {|g(z) - g(z_0)|} \lt {|g(z_0)|}.</annotation></semantics></math></div></li> <li> <p><math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi></mrow><annotation encoding="application/x-tex">F</annotation></semantics></math> maps the circle <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>C</mi><mo>=</mo><mo stretchy="false">{</mo><mi>z</mi><mo>:</mo><mrow><mo stretchy="false">|</mo><mi>z</mi><mo>−</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">|</mo></mrow><mo>=</mo><mi>δ</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">C = \{z : {|z - z_0|} = \delta\}</annotation></semantics></math> <em>onto</em> a circle of radius <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>r</mi><mo>=</mo><mrow><mo stretchy="false">|</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><msup><mi>δ</mi> <mi>n</mi></msup></mrow><annotation encoding="application/x-tex">r = {|g(z_0)|}\delta^n</annotation></semantics></math> centered at <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">f(z_0)</annotation></semantics></math>. (This uses the fact that any complex number has an <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>n</mi> <mi>th</mi></msup></mrow><annotation encoding="application/x-tex">n^{th}</annotation></semantics></math> root, which one can prove using polar coordinate representations. We omit the details.) Choose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>z</mi><mo>′</mo><mo>∈</mo><mi>C</mi></mrow><annotation encoding="application/x-tex">z' \in C</annotation></semantics></math> so that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">F(z')</annotation></semantics></math> is on the line segment between the origin and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">f(z_0)</annotation></semantics></math> (we can always choose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>δ</mi></mrow><annotation encoding="application/x-tex">\delta</annotation></semantics></math> so that also <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>r</mi><mo><</mo><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">r \lt {|f(z_0)|}</annotation></semantics></math>). Then</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>=</mo><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>−</mo><mi>r</mi></mrow><annotation encoding="application/x-tex">{|F(z')|} = {|f(z_0)|} - r</annotation></semantics></math></div> <p>We also have</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo>−</mo><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>=</mo><mrow><mo stretchy="false">|</mo><mi>g</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo>−</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mrow><mo stretchy="false">|</mo><mi>z</mi><mo>′</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><msub><mi>z</mi> <mn>0</mn></msub><msup><mo stretchy="false">|</mo> <mi>n</mi></msup></mrow><mo><</mo><mrow><mo stretchy="false">|</mo><mi>g</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><msup><mi>δ</mi> <mi>n</mi></msup><mo>=</mo><mi>r</mi></mrow><annotation encoding="application/x-tex">{|f(z') - F(z')|} = {|g(z') - g(z_0)|} {|z' - z_0|^n} \lt {|g(z_0)|} \delta^n = r</annotation></semantics></math></div> <p>according to how we chose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>δ</mi></mrow><annotation encoding="application/x-tex">\delta</annotation></semantics></math> in 2. We conclude by observing the strict inequality</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>≤</mo><mrow><mo stretchy="false">|</mo><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>+</mo><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo>−</mo><mi>F</mi><mo stretchy="false">(</mo><mi>z</mi><mo>′</mo><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo><</mo><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>−</mo><mi>r</mi><mo>+</mo><mi>r</mi><mo>=</mo><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><msub><mi>z</mi> <mn>0</mn></msub><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow><mo>,</mo></mrow><annotation encoding="application/x-tex">{|f(z')|} \leq {|F(z')|} + {|f(z') - F(z')|} \lt {|f(z_0)|} - r + r = {|f(z_0)|},</annotation></semantics></math></div> <p>which contradicts the fact that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mrow><mo stretchy="false">|</mo><mi>f</mi><mo stretchy="false">(</mo><mi>z</mi><mo stretchy="false">)</mo><mo stretchy="false">|</mo></mrow></mrow><annotation encoding="application/x-tex">{|f(z)|}</annotation></semantics></math> attains an absolute minimum at <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>z</mi><mo>=</mo><msub><mi>z</mi> <mn>0</mn></msub></mrow><annotation encoding="application/x-tex">z = z_0</annotation></semantics></math>.</p> </li> </ol> <h2 id="in_weak_foundations">In weak foundations</h2> <p>Many proofs rely explicitly on the <a class="existingWikiWord" href="/nlab/show/double+negation">double negation</a> rule by first supposing that a polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math> has no root and deriving a contradiction.</p> <h3 id="in_constructive_mathematics">In constructive mathematics</h3> <p>In <a class="existingWikiWord" href="/nlab/show/constructive+mathematics">constructive mathematics</a>, <a class="existingWikiWord" href="/nlab/show/integral+closure">integral closure</a> and <a class="existingWikiWord" href="/nlab/show/algebraic+closure">algebraic closure</a> of a <a class="existingWikiWord" href="/nlab/show/field">field</a> are not the same, because not every nonconstant polynomial function has a well-defined degree. This is still the case even if we take “nonconstant polynomial function”, we mean “<a class="existingWikiWord" href="/nlab/show/tight+apartness+relation">apart from</a> every constant polynomial function”. In general, every nonconstant polynomial function has a well-defined degree if and only if the field is a <a class="existingWikiWord" href="/nlab/show/discrete+field">discrete field</a>.</p> <p>Thus, the fundamental theorem of algebra is usually expressed in terms of integral closure, which classically is the same as algebraic closure for any field:</p> <ul> <li>The <a class="existingWikiWord" href="/nlab/show/field">field</a> of <a class="existingWikiWord" href="/nlab/show/complex+number">complex number</a>s <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> is <a class="existingWikiWord" href="/nlab/show/integrally+closed+field">integrally closed</a>. In other words, every <a class="existingWikiWord" href="/nlab/show/monic+polynomial">monic</a> <a class="existingWikiWord" href="/nlab/show/polynomial+function">polynomial function</a> with <a class="existingWikiWord" href="/nlab/show/coefficients">coefficients</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> has a <a class="existingWikiWord" href="/nlab/show/root">root</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math>.</li> </ul> <p>There is a second problem, namely with Lemma <a class="maruku-ref" href="#sqrt"></a>. It is usually impossible to prove that the monic quadratic function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>↦</mo><msup><mi>x</mi> <mn>2</mn></msup><mo>+</mo><mi>c</mi></mrow><annotation encoding="application/x-tex">x \mapsto x^2 + c</annotation></semantics></math> has a <a class="existingWikiWord" href="/nlab/show/root">root</a> for all complex numbers <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>c</mi><mo>∈</mo><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">c \in \mathbb{C}</annotation></semantics></math>. The problem here is once again that any constructive notion of complex numbers is only a <a class="existingWikiWord" href="/nlab/show/Heyting+field">Heyting field</a>, rather than a <a class="existingWikiWord" href="/nlab/show/discrete+field">discrete field</a>. The function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>↦</mo><msup><mi>x</mi> <mn>2</mn></msup><mo>+</mo><mi>c</mi></mrow><annotation encoding="application/x-tex">x \mapsto x^2 + c</annotation></semantics></math> has a root for <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>c</mi><mo>=</mo><mn>0</mn></mrow><annotation encoding="application/x-tex">c = 0</annotation></semantics></math> and for invertible <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>c</mi></mrow><annotation encoding="application/x-tex">c</annotation></semantics></math>, but it is not provable that every complex number <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>c</mi><mo>∈</mo><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">c \in \mathbb{C}</annotation></semantics></math> is either invertible or equal to zero. In fact, this fails in certain <a class="existingWikiWord" href="/nlab/show/topoi">topoi</a>, such as <a class="existingWikiWord" href="/nlab/show/sheaves">sheaves</a> over <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math>, because that the complex numbers have a continuous square root over <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> can only be proven in the presence of <a class="existingWikiWord" href="/nlab/show/weak+countable+choice">weak countable choice</a> or the <a class="existingWikiWord" href="/nlab/show/analytic+LPO">analytic LPO</a>.</p> <p>However, the following weaker theorem is still true in constructive mathematics for the <a class="existingWikiWord" href="/nlab/show/modulated+Cantor+real+number">modulated Cantor complex numbers</a>:</p> <p> <div class='num_theorem'> <h6>Theorem</h6> <p>Every <a class="existingWikiWord" href="/nlab/show/unramifiable+polynomial">unramifiable</a> <a class="existingWikiWord" href="/nlab/show/monic+polynomial">monic</a> <a class="existingWikiWord" href="/nlab/show/polynomial+function">polynomial function</a> with coefficients in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> has a <a class="existingWikiWord" href="/nlab/show/simple+root">simple root</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math>.</p> </div> </p> <p>A fully choice-free constructive proof of this theorem by Wim Ruitenberg (<a href="#Ruitenberg91">Ruitenberg 1991</a>) exists for the <a class="existingWikiWord" href="/nlab/show/modulated+Cantor+real+number">modulated Cantor complex numbers</a> (which agree with the <a class="existingWikiWord" href="/nlab/show/Dedekind+real+number">Dedekind complex numbers</a> by <a class="existingWikiWord" href="/nlab/show/weak+countable+choice">weak countable choice</a> or the <a class="existingWikiWord" href="/nlab/show/analytic+LPO">analytic LPO</a>). It is unknown if this weaker FTA is true of the <a class="existingWikiWord" href="/nlab/show/Dedekind+real+number">Dedekind complex numbers</a> as well.</p> <p>In the absence of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>WCC</mi></mrow><annotation encoding="application/x-tex">WCC</annotation></semantics></math> or the <a class="existingWikiWord" href="/nlab/show/analytic+LPO">analytic LPO</a>, <a href="#Richman00">Richman 2000</a> has proposed that the FTA should be interpreted as a statement about sets of roots rather than about individual roots. He constructs a <a class="existingWikiWord" href="/nlab/show/complete+metric+space">complete metric space</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mover><mi>M</mi><mo stretchy="false">^</mo></mover> <mi>n</mi></msub><mo stretchy="false">(</mo><mi>ℂ</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">\hat{M}_n(\mathbb{C})</annotation></semantics></math> which, classically, is the space of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>n</mi></mrow><annotation encoding="application/x-tex">n</annotation></semantics></math>-element <a class="existingWikiWord" href="/nlab/show/multisets">multisets</a> of complex numbers (and constructively is the completion of that space) and proves that every complex polynomial function <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math> of degree <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>n</mi></mrow><annotation encoding="application/x-tex">n</annotation></semantics></math> may be associated with a point in this space in such a way that the <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>n</mi></mrow><annotation encoding="application/x-tex">n</annotation></semantics></math> elements of that point (when viewed as a multiset, if possible, and morally in any case) are the <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>n</mi></mrow><annotation encoding="application/x-tex">n</annotation></semantics></math> roots of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>p</mi></mrow><annotation encoding="application/x-tex">p</annotation></semantics></math>.</p> <h3 id="in_rca_0">In RCA_0</h3> <p>Assuming classical logic, but weak foundations, it can be shown that FTA is true in the <a class="existingWikiWord" href="/nlab/show/reverse+mathematics">reverse mathematics</a> system <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>RCA</mi> <mn>0</mn></msub></mrow><annotation encoding="application/x-tex">RCA_0</annotation></semantics></math> (<a href="#TY2005">Tanaka-Yamazaki 2005</a>).</p> <h2 id="History">History</h2> <p>The proof was attempted many times before Gauss gave what is accepted as the first proof in his dissertation (<a href="#Gauss1799">Gauss 1799</a>), although this was not without issues (Gauss ‘fixed’ this proof almost 50 years later, but the last gap was not filled until the 20th century).</p> <p>All proofs of this fact (of which there are many) require something analytic, in the sense that ordinary algebra will not suffice: one needs to know that the real numbers (or the complex numbers) ‘have no algebraic gaps’. For instance, the rational numbers famously don’t contain the square root of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mn>2</mn></mrow><annotation encoding="application/x-tex">2</annotation></semantics></math>. The cleanest proof I know, due to Artin, that isolates this analytic germ, uses the step-ladder result that the real numbers form what is called a <a class="existingWikiWord" href="/nlab/show/real+closed+field">real closed field</a>. This is essentially saying that non-negative real numbers have square roots, and odd degree polynomial functions have roots (anyone who has plotted a cubic can appreciate this fact). Alternatively, one can characterise real closed fields as those for whom the Intermediate Value Theorem (IVT) holds for polynomial functions. Accepting this result (which does need proof), the FTA follows using pure algebra (although not of the high-school sort).</p> <p>However, it is of interest, partly theoretical, partly for the sake of finding the bare minimum needed to prove the FTA, to know an elementary proof, namely one that minimises the use of analytic techniques (for instance, the IVT for polynomial functions follows from the IVT for continuous functions, but that is like killing a mosquito with a bazooka). Gauss’ second proof (<a href="#Gauss1866">Gauss 1866</a>) is elementary (and predates Artin’s by a long time). Since Gauss lacked modern algebraic techniques, some of his proof is laborious, but (<a href="#Taylor85">Taylor 85</a>) gives a modern gloss. (With some amusing side notes: as Taylor puts it – ‘Gauss takes the opportunity [to] be rude to his inferior contemporaries’.) Gauss’ proof, in modern language, takes up less than a page and a half, but this presupposes familiarity with some of the theory of fields (but which is pure algebra). Artin’s proof, by comparison, drawing on major theorems can be given in half a page.</p> <p>It should be noted, in the context of the last statement, that proofs of the FTA can be given, relying on analytic ‘bazooka’ theorems, that are one sentence. However, to spell out the proofs of the necessary theorems, one needs a course in analysis, of some variety, so one is merely sweeping a lot under a very small rug.</p> <h2 id="References">References</h2> <ul> <li id="Gauss1799"> <p><a class="existingWikiWord" href="/nlab/show/Carl+Gauss">Carl Gauss</a>, <em>Demonstratio nova theorematis functionem algebraicam rationalem integramunius variabilis in factores reales primi vel secundi gradus resolvi posse</em>, Dissertation, Helmstedt (1799); Werke 3, 1–30 (1866) (<a href="http://www.jon-arny.com/httpdocs/Gauss/Gauss%20Fundamental%20Theorem.pdf">English transl. pdf</a>))</p> </li> <li id="Gauss1866"> <p><a class="existingWikiWord" href="/nlab/show/Carl+Gauss">Carl Gauss</a>, <em>Demonstratio nova altera theorematis omnem functionem algebraicamrationalem integram unius variabilis in factores reales primi vel secundi gradus resolviposse</em>, Comm. Soc. Reg. Sci. Göttingen 3, 107–142 (1816); Werke 3, 33–56 (1866)</p> </li> <li> <p>Michael Eisermann. <em>An Elementary Real-Algebraic Proof via Sturm Chains</em>. <a href="http://www.jon-arny.com/httpdocs/Gauss/Constructive%20roots-annotated.pdf">pdf</a></p> <p><em>Another new proof of the theorem that every integral rational algebraic function of one variable can be resolved into real factors of the first or second degree</em> translated by <a class="existingWikiWord" href="/nlab/show/Paul+Taylor">Paul Taylor</a> and B. Leak (1983) (<a href="http://www.paultaylor.eu/misc/gauss-web">web</a>)</p> </li> <li id="Taylor85"> <p><a class="existingWikiWord" href="/nlab/show/Paul+Taylor">Paul Taylor</a>, <em>Gauss’ Second Proof</em>, Eureka 45 (1985) 42-47 (<a href="http://www.jon-arny.com/httpdocs/Gauss/Eureka-2-aug24.pdf">pdf</a>)</p> </li> </ul> <p>A proof of a variant of the fundamental theorem of algebra using finite multisets of complex numbers:</p> <ul> <li id="Richman00"><a class="existingWikiWord" href="/nlab/show/Fred+Richman">Fred Richman</a>, <em>The fundamental theorem of algebra: a constructive development without choice</em>, Pacific Journal of Mathematics <strong>196</strong> 1 (2000) 213–230 [<a href="http://dx.doi.org/10.2140/pjm.2000.196.213">doi:10.2140/pjm.2000.196.213</a>, <a href="https://msp.org/pjm/2000/196-1/pjm-v196-n1-p10-p.pdf">pdf</a>]</li> </ul> <p>see also:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/Fred+Richman">Fred Richman</a>, <em>Constructive Mathematics without Choice</em>, <p>in: <em>Reuniting the Antipodes – Constructive and Nonstandard Views of the Continuum</em> Synthese Library <strong>306</strong>, Springer (2001) 199-206 [<a href="https://doi.org/10.1007/978-94-015-9757-9_17">doi:10.1007/978-94-015-9757-9_17</a>]</p> </li> </ul> <p>The Reverse Mathematical treatment is given in</p> <ul> <li id="TK2005">Kazuyuki Tanaka and Takeshi Yamazaki, <em>Manipulating the reals in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>RCA</mi> <mn>0</mn></msub></mrow><annotation encoding="application/x-tex">RCA_0</annotation></semantics></math></em> in <em>Reverse Mathematics 2001</em>, Lecture Notes in Logic <strong>21</strong> (2005)</li> </ul> <p>A <a class="existingWikiWord" href="/nlab/show/constructive+mathematics">constructive</a> algebraic proof of the fundamental theorem of algebra for the <a class="existingWikiWord" href="/nlab/show/modulated+Cauchy+real+numbers">modulated Cauchy real numbers</a> without choice princples such as <a class="existingWikiWord" href="/nlab/show/weak+countable+choice">weak countable choice</a></p> <ul> <li id="Ruitenberg91">Wim Ruitenberg, Constructing Roots of Polynomials over the Complex Numbers, Computational Aspects of Lie Group Representations and Related Topics, CWI Tract, Vol. 84, Centre for Mathematics and Computer Science, Amsterdam, 1991, pp. 107–128. (<a href="https://www.mscsnet.mu.edu/~wim/publica/roots_new.pdf">pdf</a>)</li> </ul> <p>A full formalization in the <a class="existingWikiWord" href="/nlab/show/Coq">Coq</a> <a class="existingWikiWord" href="/nlab/show/proof+assistant">proof assistant</a> is in</p> <ul> <li>Herman Geuvers, <a class="existingWikiWord" href="/nlab/show/Freek+Wiedijk">Freek Wiedijk</a>, Jan Zwanenburg, A Constructive Proof of the Fundamental Theorem of Algebra without Using the Rationals (<a href="http://dl.acm.org/citation.cfm?id=696038">web</a>)</li> </ul> <p>See also</p> <ul> <li>MathOverflow, <em><a href="http://mathoverflow.net/questions/10535/ways-to-prove-the-fundamental-theorem-of-algebra">Ways to prove the fundamental theorem of algebra</a></em></li> </ul> <div class="footnotes"><hr /><ol><li id="fn:1"> <p>Despite the credit given to Gauss for his demonstration of 1799, Argand’s proof is often credited as the first one that is <em>fully rigorous</em>. The proof given here also uses the Bolzano-Weierstrass theorem, first proven by Bolzano in 1817, making it somewhat contemporaneous. Argand is also widely credited as the one who introduced the cutting-edge idea of viewing complex numbers and their operations <em>geometrically</em>, which the proof here also uses (the complex plane <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℂ</mi></mrow><annotation encoding="application/x-tex">\mathbb{C}</annotation></semantics></math> being also known as the Argand plane). <a href="#fnref:1" rev="footnote">↩</a></p> </li></ol></div></body></html> </div> <div class="revisedby"> <p> Last revised on August 21, 2024 at 01:50:02. See the <a href="/nlab/history/fundamental+theorem+of+algebra" style="color: #005c19">history</a> of this page for a list of all contributions to it. </p> </div> <div class="navigation navfoot"> <a href="/nlab/edit/fundamental+theorem+of+algebra" accesskey="E" class="navlink" id="edit" rel="nofollow">Edit</a><a href="https://nforum.ncatlab.org/discussion/2199/#Item_79">Discuss</a><span class="backintime"><a href="/nlab/revision/fundamental+theorem+of+algebra/44" accesskey="B" class="navlinkbackintime" id="to_previous_revision" rel="nofollow">Previous revision</a></span><a href="/nlab/show/diff/fundamental+theorem+of+algebra" accesskey="C" class="navlink" id="see_changes" rel="nofollow">Changes from previous revision</a><a href="/nlab/history/fundamental+theorem+of+algebra" accesskey="S" class="navlink" id="history" rel="nofollow">History (44 revisions)</a> <a href="/nlab/show/fundamental+theorem+of+algebra/cite" style="color: black">Cite</a> <a href="/nlab/print/fundamental+theorem+of+algebra" accesskey="p" id="view_print" rel="nofollow">Print</a> <a href="/nlab/source/fundamental+theorem+of+algebra" id="view_source" rel="nofollow">Source</a> </div> </div> <!-- Content --> </div> <!-- Container --> </body> </html>