CINXE.COM
intuitionistic logic 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> intuitionistic logic 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> intuitionistic logic </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/3408/#Item_5" 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>Contents</title></head> <body> <div class="rightHandSide"> <div class="toc clickDown" tabindex="0"> <h3 id="context">Context</h3> <h4 id="foundations">Foundations</h4> <div class="hide"><div> <p><strong><a class="existingWikiWord" href="/nlab/show/foundations">foundations</a></strong></p> <h2 id="the_basis_of_it_all">The basis of it all</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/mathematical+logic">mathematical logic</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/deduction+system">deduction system</a>, <a class="existingWikiWord" href="/nlab/show/natural+deduction">natural deduction</a>, <a class="existingWikiWord" href="/nlab/show/sequent+calculus">sequent calculus</a>, <a class="existingWikiWord" href="/nlab/show/lambda-calculus">lambda-calculus</a>, <a class="existingWikiWord" href="/nlab/show/judgment">judgment</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/type+theory">type theory</a>, <a class="existingWikiWord" href="/nlab/show/simple+type+theory">simple type theory</a>, <a class="existingWikiWord" href="/nlab/show/dependent+type+theory">dependent type theory</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/collection">collection</a>, <a class="existingWikiWord" href="/nlab/show/object">object</a>, <a class="existingWikiWord" href="/nlab/show/type">type</a>, <a class="existingWikiWord" href="/nlab/show/term">term</a>, <a class="existingWikiWord" href="/nlab/show/set">set</a>, <a class="existingWikiWord" href="/nlab/show/element">element</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/equality">equality</a>, <a class="existingWikiWord" href="/nlab/show/judgmental+equality">judgmental equality</a>, <a class="existingWikiWord" href="/nlab/show/typal+equality">typal equality</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/universe">universe</a>, <a class="existingWikiWord" href="/nlab/show/size+issues">size issues</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/higher-order+logic">higher-order logic</a></p> </li> </ul> <h2 id="set_theory"> Set theory</h2> <div> <p><strong><a class="existingWikiWord" href="/nlab/show/set+theory">set theory</a></strong></p> <ul> <li>fundamentals of set theory <ul> <li><a class="existingWikiWord" href="/nlab/show/propositional+logic">propositional logic</a></li> <li><a class="existingWikiWord" href="/nlab/show/first-order+logic">first-order logic</a></li> <li><a class="existingWikiWord" href="/nlab/show/typed+predicate+logic">typed predicate logic</a></li> <li><a class="existingWikiWord" href="/nlab/show/membership+relation">membership relation</a></li> <li><a class="existingWikiWord" href="/nlab/show/propositional+equality">propositional equality</a></li> <li><a class="existingWikiWord" href="/nlab/show/set">set</a>, <a class="existingWikiWord" href="/nlab/show/element">element</a>, <a class="existingWikiWord" href="/nlab/show/function">function</a>, <a class="existingWikiWord" href="/nlab/show/relation">relation</a></li> <li><a class="existingWikiWord" href="/nlab/show/universe">universe</a>, <a class="existingWikiWord" href="/nlab/show/small+set">small set</a>, <a class="existingWikiWord" href="/nlab/show/large+set">large set</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/material+set+theory">material set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/membership+relation">membership relation</a>, <a class="existingWikiWord" href="/nlab/show/propositional+equality">propositional equality</a>, <a class="existingWikiWord" href="/nlab/show/axiom+of+extensionality">axiom of extensionality</a></li> <li><a class="existingWikiWord" href="/nlab/show/pairing+structure">pairing structure</a>, <a class="existingWikiWord" href="/nlab/show/axiom+of+pairing">axiom of pairing</a></li> <li><a class="existingWikiWord" href="/nlab/show/union+structure">union structure</a>, <a class="existingWikiWord" href="/nlab/show/axiom+of+union">axiom of union</a></li> <li><a class="existingWikiWord" href="/nlab/show/powerset+structure">powerset structure</a>, <a class="existingWikiWord" href="/nlab/show/axiom+of+power+sets">axiom of power sets</a></li> <li><a class="existingWikiWord" href="/nlab/show/natural+numbers+structure">natural numbers structure</a>, <a class="existingWikiWord" href="/nlab/show/axiom+of+infinity">axiom of infinity</a></li> </ul> </li> <li>presentations of set theory <ul> <li><a class="existingWikiWord" href="/nlab/show/first-order+set+theory">first-order set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/unsorted+set+theory">unsorted set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/simply+sorted+set+theory">simply sorted set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/one-sorted+set+theory">one-sorted set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/two-sorted+set+theory">two-sorted set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/three-sorted+set+theory">three-sorted set theory</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/dependently+sorted+set+theory">dependently sorted set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/structurally+presented+set+theory">structurally presented set theory</a></li> </ul> </li> <li>structuralism in set theory <ul> <li><a class="existingWikiWord" href="/nlab/show/material+set+theory">material set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/ZFC">ZFC</a></li> <li><a class="existingWikiWord" href="/nlab/show/ZFA">ZFA</a></li> <li><a class="existingWikiWord" href="/nlab/show/Mostowski+set+theory">Mostowski set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/New+Foundations">New Foundations</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/structural+set+theory">structural set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/categorical+set+theory">categorical set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/ETCS">ETCS</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/fully+formal+ETCS">fully formal ETCS</a></li> <li><a class="existingWikiWord" href="/nlab/show/ETCS+with+elements">ETCS with elements</a></li> <li><a class="existingWikiWord" href="/nlab/show/Trimble+on+ETCS+I">Trimble on ETCS I</a></li> <li><a class="existingWikiWord" href="/nlab/show/Trimble+on+ETCS+II">Trimble on ETCS II</a></li> <li><a class="existingWikiWord" href="/nlab/show/Trimble+on+ETCS+III">Trimble on ETCS III</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/structural+ZFC">structural ZFC</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/allegorical+set+theory">allegorical set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/SEAR">SEAR</a></li> </ul> </li> </ul> </li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/class-set+theory">class-set theory</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/class">class</a>, <a class="existingWikiWord" href="/nlab/show/proper+class">proper class</a></li> <li><a class="existingWikiWord" href="/nlab/show/universal+class">universal class</a>, <a class="existingWikiWord" href="/nlab/show/universe">universe</a></li> <li><a class="existingWikiWord" href="/nlab/show/category+of+classes">category of classes</a></li> <li><a class="existingWikiWord" href="/nlab/show/category+with+class+structure">category with class structure</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/constructive+set+theory">constructive set theory</a></li> <li><a class="existingWikiWord" href="/nlab/show/algebraic+set+theory">algebraic set theory</a></li> </ul> </div> <h2 id="foundational_axioms">Foundational axioms</h2> <div> <p><strong><a class="existingWikiWord" href="/nlab/show/foundational+axiom">foundational</a> <a class="existingWikiWord" href="/nlab/show/axioms">axioms</a></strong></p> <ul> <li> <p>basic constructions:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+cartesian+products">axiom of cartesian products</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+disjoint+unions">axiom of disjoint unions</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+the+empty+set">axiom of the empty set</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+fullness">axiom of fullness</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+function+sets">axiom of function sets</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+power+sets">axiom of power sets</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+quotient+sets">axiom of quotient sets</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/material+set+theory">material axioms</a>:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+extensionality">axiom of extensionality</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+foundation">axiom of foundation</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+anti-foundation">axiom of anti-foundation</a></li> <li><a class="existingWikiWord" href="/nlab/show/Mostowski%27s+axiom">Mostowski's axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+pairing">axiom of pairing</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+transitive+closure">axiom of transitive closure</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+union">axiom of union</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/structural+set+theory">structural axioms</a>:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+materialization">axiom of materialization</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/type+theory">type theoretic axioms</a>:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axioms+of+set+truncation">axioms of set truncation</a> <ul> <li><a class="existingWikiWord" href="/nlab/show/uniqueness+of+identity+proofs">uniqueness of identity proofs</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+K">axiom K</a></li> <li><a class="existingWikiWord" href="/nlab/show/boundary+separation">boundary separation</a></li> <li><a class="existingWikiWord" href="/nlab/show/equality+reflection">equality reflection</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+circle+type+localization">axiom of circle type localization</a></li> </ul> </li> <li><a class="existingWikiWord" href="/nlab/show/homotopy+type+theory">homotopy type theoretic axioms</a>: <ul> <li><a class="existingWikiWord" href="/nlab/show/univalence+axiom">univalence axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/Whitehead%27s+principle">Whitehead's principle</a></li> </ul> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/axioms+of+choice">axioms of choice</a>:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+choice">axiom of choice</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+countable+choice">axiom of countable choice</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+dependent+choice">axiom of dependent choice</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+excluded+middle">axiom of excluded middle</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+existence">axiom of existence</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+multiple+choice">axiom of multiple choice</a></li> <li><a class="existingWikiWord" href="/nlab/show/Markov%27s+axiom">Markov's axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/presentation+axiom">presentation axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/small+cardinality+selection+axiom">small cardinality selection axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+small+violations+of+choice">axiom of small violations of choice</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+weakly+initial+sets+of+covers">axiom of weakly initial sets of covers</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/large+cardinal+axioms">large cardinal axioms</a>:</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+infinity">axiom of infinity</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+universes">axiom of universes</a></li> <li><a class="existingWikiWord" href="/nlab/show/regular+extension+axiom">regular extension axiom</a></li> <li><a class="existingWikiWord" href="/nlab/show/inaccessible+cardinal">inaccessible cardinal</a></li> <li><a class="existingWikiWord" href="/nlab/show/measurable+cardinal">measurable cardinal</a></li> <li><a class="existingWikiWord" href="/nlab/show/elementary+embedding">elementary embedding</a></li> <li><a class="existingWikiWord" href="/nlab/show/supercompact+cardinal">supercompact cardinal</a></li> <li><a class="existingWikiWord" href="/nlab/show/Vop%C4%9Bnka%27s+principle">Vopěnka's principle</a></li> </ul> </li> <li> <p>strong axioms</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+separation">axiom of separation</a></li> <li><a class="existingWikiWord" href="/nlab/show/axiom+of+replacement">axiom of replacement</a></li> </ul> </li> <li> <p>further</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/reflection+principle">reflection principle</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/axiom+of+inequality+spaces">axiom of inequality spaces</a></p> </li> </ul> </div> <h2 id="removing_axioms">Removing axioms</h2> <ul> <li><a class="existingWikiWord" href="/nlab/show/constructive+mathematics">constructive mathematics</a></li> <li><a class="existingWikiWord" href="/nlab/show/predicative+mathematics">predicative mathematics</a></li> </ul> <div> <p> <a href="/nlab/edit/foundations+-+contents">Edit this sidebar</a> </p> </div></div></div> </div> </div> <h1 id="contents">Contents</h1> <div class='maruku_toc'> <ul> <li><a href='#idea'>Idea</a></li> <li><a href='#idea_2'>Idea</a></li> <ul> <li><a href='#general'>General</a></li> <li><a href='#ConstructiveInterpretationOfConnectives'>Constructive interpretation of connectives</a></li> </ul> <li><a href='#properties'>Properties</a></li> <ul> <li><a href='#DoubleNegation'>Double negation</a></li> <li><a href='#DisjunctionProperty'>Disjunction property</a></li> </ul> <li><a href='#classicality_principles'>Classicality principles</a></li> <li><a href='#related_concepts'>Related concepts</a></li> <li><a href='#references'>References</a></li> </ul> </div> <h2 id="idea">Idea</h2> <p><strong>Intuitionistic logic</strong> was introduced by <a class="existingWikiWord" href="/nlab/show/Arend+Heyting">Arend Heyting</a> as a <a class="existingWikiWord" href="/nlab/show/logic">logic</a> for <a class="existingWikiWord" href="/nlab/show/Brouwer">Brouwer</a>'s <a class="existingWikiWord" href="/nlab/show/intuitionistic+mathematics">intuitionistic mathematics</a>. It applies more generally to <a class="existingWikiWord" href="/nlab/show/constructive+mathematics">constructive mathematics</a> and so may also be called <strong>constructive logic</strong>.</p> <p>Beware the terminological ambiguity: Some people insist that “intuitionistic logic” refers to Brouwerian intuitionism, which includes axioms that contradict classical logic; but other people use “intuitionistic” to mean the same as what in other contexts is called “constructive”, i.e. mathematics without the <a class="existingWikiWord" href="/nlab/show/principle+of+excluded+middle">principle of excluded middle</a> or the <a class="existingWikiWord" href="/nlab/show/axiom+of+choice">axiom of choice</a> but nothing added that contradicts them. Some people (particularly material set theorists) use “constructive” to mean <em>predicative</em> constructive and “intuitionistic” to mean impredicative constructive.</p> <h2 id="idea_2">Idea</h2> <h3 id="general">General</h3> <p>Intuitionistic logic is most easily described as <a class="existingWikiWord" href="/nlab/show/classical+logic">classical logic</a> without the <a class="existingWikiWord" href="/nlab/show/principle+of+excluded+middle">principle of excluded middle</a> (<math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mi>A</mi><mo>∨</mo><mo>¬</mo><mi>A</mi></mrow><annotation encoding="application/x-tex">\vdash A \vee \neg{A}</annotation></semantics></math>) or the <a class="existingWikiWord" href="/nlab/show/double-negation">double-negation</a> rule (<math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>¬</mo><mo>¬</mo><mi>A</mi><mo>⊢</mo><mi>A</mi></mrow><annotation encoding="application/x-tex">\neg\neg{A} \vdash A</annotation></semantics></math>). It may also be defined by starting with Gentzen's <a class="existingWikiWord" href="/nlab/show/sequent+calculus">sequent calculus</a> for <a class="existingWikiWord" href="/nlab/show/classical+logic">classical logic</a> (with <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>¬</mo></mrow><annotation encoding="application/x-tex">\neg</annotation></semantics></math> but not <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊥</mo></mrow><annotation encoding="application/x-tex">\bot</annotation></semantics></math>) and restricting to sequents <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Γ</mi><mo>⊢</mo><mi>Δ</mi></mrow><annotation encoding="application/x-tex">\Gamma \vdash \Delta</annotation></semantics></math> where <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> may contain <em>at most one</em> formula, or by starting with <a class="existingWikiWord" href="/nlab/show/sequent+calculus">sequent calculus</a> with <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊥</mo></mrow><annotation encoding="application/x-tex">\bot</annotation></semantics></math> and restricting to such sequents where <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> must contain <em>exactly one</em> formula.</p> <h3 id="ConstructiveInterpretationOfConnectives">Constructive interpretation of connectives</h3> <p>The <em>intuitionistic interpretation</em> of the <a class="existingWikiWord" href="/nlab/show/logical+connectives">logical connectives</a> (known as the <a class="existingWikiWord" href="/nlab/show/BHK+interpretation">BHK interpretation</a>, due to <a href="#Kolmogorov32">Kolmogorov (1932, p. 59)</a>, <a href="#Heyting56">Heyting (1956, §7.1.1)</a>, <a href="#Troelstra69">Troelstra (1969, §2)</a>) is such that the resulting <a class="existingWikiWord" href="/nlab/show/proposition">proposition</a> is regarded as <a class="existingWikiWord" href="/nlab/show/true">true</a> only if it is possible to <a class="existingWikiWord" href="/nlab/show/constructive+mathematics">construct</a> a <a class="existingWikiWord" href="/nlab/show/proof">proof</a> of its <a class="existingWikiWord" href="/nlab/show/assertion">assertion</a>.</p> <p>For instance, to assert a <a class="existingWikiWord" href="/nlab/show/logical+conjunction">logical conjunction</a> (“and”) or a <a class="existingWikiWord" href="/nlab/show/universal+quantification">universal quantification</a> (“for all”) is taken to mean to provide a proof of all the instances.</p> <p>Dually but more notably, to assert a <a class="existingWikiWord" href="/nlab/show/logical+disjunction">logical disjunction</a> (“or”) or an <a class="existingWikiWord" href="/nlab/show/existential+quantification">existential quantification</a> (“exists”) is taken to mean to prove one of the instances, so that there is no intuitionistic existence statement without construction of an example (the “disjunction property”, see <a href="#DisjunctionProperty">below</a>).</p> <p>This constructive interpretation of logical truth is the crux of the rejection of the <a class="existingWikiWord" href="/nlab/show/principle+of+excluded+middle">principle of excluded middle</a>, for it implies that to prove <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>P</mi><mo>∨</mo><mo stretchy="false">(</mo><mo>¬</mo><mi>P</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">P \vee (\not P)</annotation></semantics></math> (which may superficially/classically seem tautologous) one must prove <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> or one must prove <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>¬</mo><mi>P</mi></mrow><annotation encoding="application/x-tex">\not P</annotation></semantics></math> — but neither proof may be known (e.g. if <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 class="existingWikiWord" href="/nlab/show/Riemann+hypothesis">Riemann hypothesis</a>).</p> <p>(Here the classical mathematician is regarded as “idealistic” in their assumption that either case must hold, even if it is impossible to tell which one.)</p> <p id="FromKolmogorov"> From <a href="#Kolmogorov32">Kolmogorov (1932, p. 59)</a>:</p> <div style="margin: -30px 0px 20px 10px"> <img src="/nlab/files/KolmogorovIntroducingBHK.jpg" width="550px" /> </div> <p>From <a href="#Heyting56">Heyting (1956, p. 97)</a>:</p> <div style="margin: -30px 0px 20px 10px"> <img src="/nlab/files/HeytingIntroducingBHK.jpg" width="500px" /> </div> <p>From <a href="#Troelstra69">Troelstra (1969, p. 5)</a>:</p> <div style="margin: -30px 0px 20px 10px"> <img src="/nlab/files/Troelstra-IntroducingBHKInterp.jpg" width="660px" /> </div> <p>From <a href="#Troelstra77">Troelstra (1977, p. 977)</a>:</p> <div style="margin: -30px 0px 20px 10px"> <img src="/nlab/files/Troelstra-AttributingBHK.jpg" width="500px" /> </div> <p id="FromBridges"> From <a href="#Bridges99">Bridges (1999), p. 96</a>:</p> <div style="margin: -30px 0px 20px 10px"> <img src="/nlab/files/Bridges-IntuitInterpOfConnectives.jpg" width="600px" /> </div> <p>The analogous discussion for <a class="existingWikiWord" href="/nlab/show/inference+rules">inference rules</a> in <a class="existingWikiWord" href="/nlab/show/intuitionistic+type+theory">intuitionistic type theory</a> is then given spring in <a href="#Girard89">Girard (1989, §2)</a> and with more emphasis in <a href="#MartinLöf96">Martin-Löf (1996, Lec 3)</a>.</p> <h2 id="properties">Properties</h2> <h3 id="DoubleNegation">Double negation</h3> <p>The <a class="existingWikiWord" href="/nlab/show/double+negation+translation">double negation translation</a> says that a <a class="existingWikiWord" href="/nlab/show/proposition">proposition</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> is provable in <a class="existingWikiWord" href="/nlab/show/classical+logic">classical logic</a> precisely if its <a class="existingWikiWord" href="/nlab/show/double+negation">double negation</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>¬</mo><mo>¬</mo><mi>P</mi></mrow><annotation encoding="application/x-tex">\not \not P</annotation></semantics></math> is provable in constructive logic.</p> <h3 id="DisjunctionProperty">Disjunction property</h3> <p>Unlike classical logic, intuitionistic logic has the <em>disjunction-</em> and <em>existence</em> properties (cf. <a href="#ConstructiveInterpretationOfConnectives">above</a>): any <a class="existingWikiWord" href="/nlab/show/proof">proof</a> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mi>A</mi><mo>∨</mo><mi>B</mi></mrow><annotation encoding="application/x-tex">\vdash A \vee B</annotation></semantics></math> must contain a proof of either <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mi>A</mi></mrow><annotation encoding="application/x-tex">\vdash A</annotation></semantics></math> or <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mi>B</mi></mrow><annotation encoding="application/x-tex">\vdash B</annotation></semantics></math>, and similarly any proof of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mo>∃</mo><mi>x</mi><mo>.</mo><mspace width="thinmathspace"></mspace><mi>F</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">\vdash \exists x.\,F(x)</annotation></semantics></math> must construct a term <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>t</mi></mrow><annotation encoding="application/x-tex">t</annotation></semantics></math> and a proof of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>⊢</mo><mi>F</mi><mo stretchy="false">(</mo><mi>t</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">\vdash F(t)</annotation></semantics></math>. These properties are what justify our calling intuitionistic logic ‘constructive’.</p> <p>On the other hand, (classical) <a class="existingWikiWord" href="/nlab/show/Peano+arithmetic">Peano arithmetic</a> is conservative over (intuitionistic) <a class="existingWikiWord" href="/nlab/show/Heyting+arithmetic">Heyting arithmetic</a> when restricted to <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msubsup><mi>Π</mi> <mn>1</mn> <mn>0</mn></msubsup></mrow><annotation encoding="application/x-tex">\Pi^0_1</annotation></semantics></math> formulas; that is, formulas of the form <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>∀</mo><mi>x</mi><mo lspace="verythinmathspace">:</mo><mi>N</mi><mo>.</mo><mspace width="thinmathspace"></mspace><mo>∃</mo><mi>y</mi><mo lspace="verythinmathspace">:</mo><mi>N</mi><mo>.</mo><mspace width="thinmathspace"></mspace><mi>F</mi><mo stretchy="false">(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">\forall x\colon N.\, \exists y\colon N.\, F(x,y)</annotation></semantics></math>. Roughly speaking, classical logic can be just as ‘constructive’ as intuitionistic logic as far as proving the totality of functions <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>ℕ</mi><mo>→</mo><mi>ℕ</mi></mrow><annotation encoding="application/x-tex">\mathbb{N} \to \mathbb{N}</annotation></semantics></math> is concerned.</p> <h2 id="classicality_principles">Classicality principles</h2> <p>The principle of <a class="existingWikiWord" href="/nlab/show/excluded+middle">excluded middle</a> is not provable in intuitionistic logic, and if we assume it then the logic becomes <a class="existingWikiWord" href="/nlab/show/classical+logic">classical logic</a>. But there are other principles that are provable classically but not intuitionistically, but which are weaker than full PEM, such as</p> <ul> <li>various <a class="existingWikiWord" href="/nlab/show/omniscience+principles">omniscience principles</a> such as LPO and LLPO</li> <li>the <a class="existingWikiWord" href="/nlab/show/double-negation+shift">double-negation shift</a></li> <li><a class="existingWikiWord" href="/nlab/show/de+Morgan%27s+law">de Morgan's law</a>, i.e. <a class="existingWikiWord" href="/nlab/show/weak+excluded+middle">weak excluded middle</a></li> <li>the <span class="newWikiWord">world's simplest axiom of choice<a href="/nlab/new/world%27s+simplest+axiom+of+choice">?</a></span></li> </ul> <h2 id="related_concepts">Related concepts</h2> <ul> <li><a class="existingWikiWord" href="/nlab/show/BHK+interpretation">BHK interpretation</a></li> </ul> <div> <table><thead><tr><th><a class="existingWikiWord" href="/nlab/show/category">category</a></th><th><a class="existingWikiWord" href="/nlab/show/functor">functor</a></th><th><a class="existingWikiWord" href="/nlab/show/internal+logic">internal logic</a></th><th><a class="existingWikiWord" href="/nlab/show/theory">theory</a></th><th><a class="existingWikiWord" href="/nlab/show/hyperdoctrine">hyperdoctrine</a></th><th><a class="existingWikiWord" href="/nlab/show/subobject+poset">subobject poset</a></th><th><a class="existingWikiWord" href="/nlab/show/coverage">coverage</a></th><th><a class="existingWikiWord" href="/nlab/show/classifying+topos">classifying topos</a></th></tr></thead><tbody><tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/finitely+complete+category">finitely complete category</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/cartesian+functor">cartesian functor</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/cartesian+logic">cartesian logic</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/essentially+algebraic+theory">essentially algebraic theory</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/lextensive+category">lextensive category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/disjunctive+logic">disjunctive logic</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+category">regular category</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+functor">regular functor</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+logic">regular logic</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+theory">regular theory</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+hyperdoctrine">regular hyperdoctrine</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/infimum">infimum</a>-<a class="existingWikiWord" href="/nlab/show/semilattice">semilattice</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+coverage">regular coverage</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/regular+topos">regular topos</a></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+category">coherent category</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+functor">coherent functor</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+logic">coherent logic</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+theory">coherent theory</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+hyperdoctrine">coherent hyperdoctrine</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/distributive+lattice">distributive lattice</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+coverage">coherent coverage</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/coherent+topos">coherent topos</a></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+category">geometric category</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+functor">geometric functor</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+logic">geometric logic</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+theory">geometric theory</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+hyperdoctrine">geometric hyperdoctrine</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/frame">frame</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/geometric+coverage">geometric coverage</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Grothendieck+topos">Grothendieck topos</a></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Heyting+category">Heyting category</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Heyting+functor">Heyting functor</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/intuitionistic+logic">intuitionistic</a> <a class="existingWikiWord" href="/nlab/show/first-order+logic">first-order logic</a></td><td style="text-align: left;">intuitionistic <a class="existingWikiWord" href="/nlab/show/first-order+theory">first-order theory</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/first-order+hyperdoctrine">first-order hyperdoctrine</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Heyting+algebra">Heyting algebra</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/De+Morgan+Heyting+category">De Morgan Heyting category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/intuitionistic+logic">intuitionistic</a> <a class="existingWikiWord" href="/nlab/show/first-order+logic">first-order logic</a> with <a class="existingWikiWord" href="/nlab/show/weak+excluded+middle">weak excluded middle</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/De+Morgan+Heyting+algebra">De Morgan Heyting algebra</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Boolean+category">Boolean category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/classical+logic">classical</a> <a class="existingWikiWord" href="/nlab/show/first-order+logic">first-order logic</a></td><td style="text-align: left;">classical <a class="existingWikiWord" href="/nlab/show/first-order+theory">first-order theory</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Boolean+hyperdoctrine">Boolean hyperdoctrine</a></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/Boolean+algebra">Boolean algebra</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/star-autonomous+category">star-autonomous category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/multiplicative+classical+linear+logic">multiplicative classical linear logic</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/symmetric+monoidal+closed+category">symmetric monoidal closed category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/multiplicative+intuitionistic+linear+logic">multiplicative intuitionistic linear logic</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/cartesian+monoidal+category">cartesian monoidal category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/fragment">fragment</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><mi>&</mi><mo>,</mo><mo>⊤</mo><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{\&, \top\}</annotation></semantics></math> of <a class="existingWikiWord" href="/nlab/show/linear+logic">linear logic</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/cocartesian+monoidal+category">cocartesian monoidal category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/fragment">fragment</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><mo>⊕</mo><mo>,</mo><mn>0</mn><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{\oplus, 0\}</annotation></semantics></math> of <a class="existingWikiWord" href="/nlab/show/linear+logic">linear logic</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> <tr><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/cartesian+closed+category">cartesian closed category</a></td><td style="text-align: left;"></td><td style="text-align: left;"><a class="existingWikiWord" href="/nlab/show/simply+typed+lambda+calculus">simply typed lambda calculus</a></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td><td style="text-align: left;"></td></tr> </tbody></table> </div> <h2 id="references">References</h2> <p>Original articles on <a class="existingWikiWord" href="/nlab/show/intuitionism">intuitionism</a>:</p> <ul> <li id="Heyting1930"> <p><a class="existingWikiWord" href="/nlab/show/Arend+Heyting">Arend Heyting</a>, <em>Die formalen Regeln der intuitionistischen Logik. I, II, III.</em> Sitzungsberichte der Preußischen Akademie der Wissenschaften, Physikalisch-Mathematische Klasse (1930) 42-56, 57-71, 158-169</p> <p>abridged reprint in:</p> <p>Karel Berka, Lothar Kreiser (eds.), <em>Logik-Texte</em>, De Gruyter (1986) 188-192 [<a href="https://doi.org/10.1515/9783112645826">doi:10.1515/9783112645826</a>]</p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Arend+Heyting">Arend Heyting</a>, <em>Die intuitionistische Grundlegung der Mathematik</em>, Erkenntnis <strong>2</strong> (1931) 106-115 [<a href="https://www.jstor.org/stable/20011630">jsotr:20011630</a>, <a href="http://www.psiquadrat.de/downloads/heyting1931.pdf">pdf</a>]</p> </li> <li id="Kolmogorov32"> <p><a class="existingWikiWord" href="/nlab/show/Andrey+Kolmogorov">Andrey Kolmogorov</a>, <em>Zur Deutung der intuitionistischen Logik</em>, Math. Z. <strong>35</strong> (1932) 58-65 [<a href="https://link.springer.com/article/10.1007/BF01186549">doi:10.1007/BF01186549</a>]</p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Hans+Freudenthal">Hans Freudenthal</a>, <em>Zur intuitionistischen Deutung logischer Formeln</em>, Comp. Math. <strong>4</strong> (1937) 112-116 [<a href="http://www.numdam.org/item/?id=CM_1937__4__112_0">numdam:CM_1937__4__112_0</a>]</p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Arend+Heyting">Arend Heyting</a>, <em>Bemerkungen zu dem Aufsatz von Herrn Freudenthal “Zur intuitionistischen Deutung logischer Formeln”</em>, Comp. Math. <strong>4</strong> (1937) 117-118 [<a href="http://www.numdam.org/item/?id=CM_1937__4__117_0">doi:CM_1937__4__117_0</a>]</p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/L.+E.+J.+Brouwer">L. E. J. Brouwer</a>, <em>Points and Spaces</em>, Canadian Journal of Mathematics <strong>6</strong> (1954) 1-17 [<a href="https://doi.org/10.4153/CJM-1954-001-9">doi:10.4153/CJM-1954-001-9</a>]</p> </li> </ul> <p>Early monographs:</p> <ul> <li id="Heyting56"> <p><a class="existingWikiWord" href="/nlab/show/Arend+Heyting">Arend Heyting</a>, <em>Intuitionism: An introduction</em>, Studies in Logic and the Foundations of Mathematics, North-Holland (1956, 1971) [<a href="">ISBN:978-0720422399</a>]</p> </li> <li id="Kreisel65"> <p><a class="existingWikiWord" href="/nlab/show/Georg+Kreisel">Georg Kreisel</a>, Section 2 of: <em>Mathematical Logic</em>, in T. Saaty et al. (ed.), <em>Lectures on Modern Mathematics III</em>, Wiley New York (1965) 95-195</p> </li> </ul> <p>Early historical account:</p> <ul> <li id="Troelstra90"><a class="existingWikiWord" href="/nlab/show/Anne+Sjerp+Troelstra">Anne Sjerp Troelstra</a>, <em>On the Early History of Intuitionistic Logic</em>, in <em>Mathematical Logic</em>, Springer, (1990) [<a href="https://doi.org/10.1007/978-1-4613-0609-2_1">doi:10.1007/978-1-4613-0609-2_1</a>]</li> </ul> <p>Recognizable statemens of the <a class="existingWikiWord" href="/nlab/show/BHK+interpretation">BHK interpretation</a> of <a class="existingWikiWord" href="/nlab/show/intuitionistic+logic">intuitionistic logic</a> appear in</p> <ul> <li><a href="#Kolmogorov32">Kolmogorov (1932, p. 59)</a></li> </ul> <p>(who however speaks not of propositions but of <em>Aufgaben</em>, i.e. “tasks”, here in the sense of: “mathematical problems”)</p> <ul> <li><a href="#Heyting56">Heyting (1956, §7.1.1)</a></li> </ul> <p>(who is maybe the first to speak of the “meaning of logical connectives”)</p> <p>and then in</p> <ul> <li id="Troelstra69"><a class="existingWikiWord" href="/nlab/show/Anne+Sjerp+Troelstra">Anne Sjerp Troelstra</a>, §2 of: <em>Principles of Intuitionism</em>, Lecture Notes in Mathematics <strong>95</strong> Springer Heidelberg (1969) [<a href="https://link.springer.com/book/10.1007/BFb0080643">doi:10.1007/BFb0080643</a>]</li> </ul> <p>(where it is presented as the author’s invention) and then in</p> <ul> <li id="Troelstra77"><a class="existingWikiWord" href="/nlab/show/Anne+Sjerp+Troelstra">Anne Sjerp Troelstra</a>, §2 of: <em>Aspects of Constructive Mathematics</em>, Studies in Logic and the Foundations of Mathematics <strong>90</strong> 973-1052 (1977) [<a href="https://doi.org/10.1016/S0049-237X(08)71127-3">doi:10.1016/S0049-237X(08)71127-3</a>]</li> </ul> <p>(where the same is now called the “Brouwer-Heyting-<em>Kreisel</em> explanation”, not mentioning Kolmogorov)</p> <p>and then in the context of <a class="existingWikiWord" href="/nlab/show/intuitionistic+type+theory">intuitionistic type theory</a>:</p> <ul> <li id="Girard89"><a class="existingWikiWord" href="/nlab/show/Jean-Yves+Girard">Jean-Yves Girard</a> (translated and with appendiced by <a class="existingWikiWord" href="/nlab/show/Paul+Taylor">Paul Taylor</a> and <a class="existingWikiWord" href="/nlab/show/Yves+Lafont">Yves Lafont</a>), §1.2.2 of: <em>Proofs and Types</em>, Cambridge University Press (1989) [<a href="">ISBN:978-0-521-37181-0</a>, <a href="http://www.paultaylor.eu/stable/Proofs+Types.html">webpage</a>, <a href="https://www.paultaylor.eu/stable/prot.pdf">pdf</a>]</li> </ul> <p>(where it is called <em>Heyting semantics</em>), further expanded on on:</p> <ul> <li id="MartinLöf96"><a class="existingWikiWord" href="/nlab/show/Per+Martin-L%C3%B6f">Per Martin-Löf</a>, Lecture 3 of: <em>On the Meanings of the Logical Constants and the Justifications of the Logical Laws</em>, Nordic Journal of Philosophical Logic, <strong>1</strong> 1 (1996) 11-60 [<a href="http://docenti.lett.unisi.it/files/4/1/1/6/martinlof4.pdf">pdf</a>, <a class="existingWikiWord" href="/nlab/files/MartinLofOnTheMeaning96.pdf" title="pdf">pdf</a>]</li> </ul> <p>and recalled in the context of <a class="existingWikiWord" href="/nlab/show/constructive+analysis">constructive analysis</a>:</p> <ul> <li id="Bridges99"><a class="existingWikiWord" href="/nlab/show/Douglas+Bridges">Douglas Bridges</a>, p. 96 of: <em>Constructive mathematics: a foundation for computable analysis</em>, Theoretical Computer Science <strong>219</strong> 1–2 (1999) 95-109 [<a href="https://doi.org/10.1016/S0304-3975(98)00285-0">doi:10.1016/S0304-3975(98)00285-0</a>]</li> </ul> <p>See also:</p> <ul> <li> <p>Wikipedia, <em><a href="https://en.wikipedia.org/wiki/Intuitionistic_logic">Intuitionistic logic</a></em></p> </li> <li> <p>Stanford Encyclopedia, <em><a href="https://plato.stanford.edu/entries/intuitionistic-logic-development/#ProoInte">The Development of Intuitionistic Logic</a></em></p> </li> </ul> <p>The observation that the <a class="existingWikiWord" href="/nlab/show/poset">poset</a> of <a class="existingWikiWord" href="/nlab/show/open+subsets">open subsets</a> of a <a class="existingWikiWord" href="/nlab/show/topological+space">topological space</a> (the <a class="existingWikiWord" href="/nlab/show/internal+logic">internal logic</a> of the <a class="existingWikiWord" href="/nlab/show/sheaf+topos">sheaf topos</a>) serves as a model for <a class="existingWikiWord" href="/nlab/show/intuitionistic+logic">intuitionistic logic</a> is apparently originally due to</p> <ul> <li id="Tarski"><a class="existingWikiWord" href="/nlab/show/Alfred+Tarski">Alfred Tarski</a>, <em>Der Aussagenkalkül und die Topologie</em>, Fundamenta Mathematicae 31 (1938), pp. 103-134.</li> </ul> <p>A textbook account in the context of <a class="existingWikiWord" href="/nlab/show/programming+languages">programming languages</a> is in section 30 of</p> <ul> <li><a class="existingWikiWord" href="/nlab/show/Robert+Harper">Robert Harper</a>, <em><a class="existingWikiWord" href="/nlab/show/Practical+Foundations+for+Programming+Languages">Practical Foundations for Programming Languages</a></em></li> </ul> </body></html> </div> <div class="revisedby"> <p> Last revised on March 6, 2023 at 05:24:51. See the <a href="/nlab/history/intuitionistic+logic" 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/intuitionistic+logic" accesskey="E" class="navlink" id="edit" rel="nofollow">Edit</a><a href="https://nforum.ncatlab.org/discussion/3408/#Item_5">Discuss</a><span class="backintime"><a href="/nlab/revision/intuitionistic+logic/24" accesskey="B" class="navlinkbackintime" id="to_previous_revision" rel="nofollow">Previous revision</a></span><a href="/nlab/show/diff/intuitionistic+logic" accesskey="C" class="navlink" id="see_changes" rel="nofollow">Changes from previous revision</a><a href="/nlab/history/intuitionistic+logic" accesskey="S" class="navlink" id="history" rel="nofollow">History (24 revisions)</a> <a href="/nlab/show/intuitionistic+logic/cite" style="color: black">Cite</a> <a href="/nlab/print/intuitionistic+logic" accesskey="p" id="view_print" rel="nofollow">Print</a> <a href="/nlab/source/intuitionistic+logic" id="view_source" rel="nofollow">Source</a> </div> </div> <!-- Content --> </div> <!-- Container --> </body> </html>