CINXE.COM
coverage 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> coverage 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> coverage </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/8268/#Item_20" 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="topos_theory">Topos theory</h4> <div class="hide"><div> <p><strong><a class="existingWikiWord" href="/nlab/show/topos+theory">topos theory</a></strong></p> <ul> <li><a class="existingWikiWord" href="/nlab/show/Toposes">Toposes</a></li> </ul> <h2 id="background">Background</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/category+theory">category theory</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/category">category</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/functor">functor</a></p> </li> </ul> </li> </ul> <h2 id="toposes">Toposes</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/%280%2C1%29-topos">(0,1)-topos</a>, <a class="existingWikiWord" href="/nlab/show/Heyting+algebra">Heyting algebra</a>, <a class="existingWikiWord" href="/nlab/show/locale">locale</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/pretopos">pretopos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/topos">topos</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/Grothendieck+topos">Grothendieck topos</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/category+of+presheaves">category of presheaves</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/presheaf">presheaf</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/representable+functor">representable presheaf</a></p> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/category+of+sheaves">category of sheaves</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/site">site</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/sieve">sieve</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/coverage">coverage</a>, <a class="existingWikiWord" href="/nlab/show/Grothendieck+pretopology">pretopology</a>, <a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">topology</a></p> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/sheaf">sheaf</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/sheafification">sheafification</a></p> </li> </ul> </li> </ul> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/quasitopos">quasitopos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/base+topos">base topos</a>, <a class="existingWikiWord" href="/nlab/show/indexed+topos">indexed topos</a></p> </li> </ul> <h2 id="toc_internal_logic">Internal Logic</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/categorical+semantics">categorical semantics</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/internal+logic">internal logic</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/subobject+classifier">subobject classifier</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/natural+numbers+object">natural numbers object</a></p> </li> </ul> </li> </ul> <h2 id="topos_morphisms">Topos morphisms</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/logical+morphism">logical morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/geometric+morphism">geometric morphism</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/direct+image">direct image</a>/<a class="existingWikiWord" href="/nlab/show/inverse+image">inverse image</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/global+section">global sections</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/geometric+embedding">geometric embedding</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/surjective+geometric+morphism">surjective geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/essential+geometric+morphism">essential geometric morphism</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/locally+connected+geometric+morphism">locally connected geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/connected+geometric+morphism">connected geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/totally+connected+geometric+morphism">totally connected geometric morphism</a></p> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/%C3%A9tale+geometric+morphism">étale geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/open+geometric+morphism">open geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/proper+geometric+morphism">proper geometric morphism</a>, <a class="existingWikiWord" href="/nlab/show/compact+topos">compact topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/separated+geometric+morphism">separated geometric morphism</a>, <a class="existingWikiWord" href="/nlab/show/Hausdorff+topos">Hausdorff topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/local+geometric+morphism">local geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/bounded+geometric+morphism">bounded geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/base+change">base change</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/localic+geometric+morphism">localic geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/hyperconnected+geometric+morphism">hyperconnected geometric morphism</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/atomic+geometric+morphism">atomic geometric morphism</a></p> </li> </ul> </li> </ul> <h2 id="extra_stuff_structure_properties">Extra stuff, structure, properties</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/topological+locale">topological locale</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/localic+topos">localic topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/petit+topos">petit topos/gros topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/locally+connected+topos">locally connected topos</a>, <a class="existingWikiWord" href="/nlab/show/connected+topos">connected topos</a>, <a class="existingWikiWord" href="/nlab/show/totally+connected+topos">totally connected topos</a>, <a class="existingWikiWord" href="/nlab/show/strongly+connected+topos">strongly connected topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/local+topos">local topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/cohesive+topos">cohesive topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/classifying+topos">classifying topos</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/smooth+topos">smooth topos</a></p> </li> </ul> <h2 id="cohomology_and_homotopy">Cohomology and homotopy</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/cohomology">cohomology</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/homotopy+groups+in+an+%28infinity%2C1%29-topos">homotopy</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/abelian+sheaf+cohomology">abelian sheaf cohomology</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/model+structure+on+simplicial+presheaves">model structure on simplicial presheaves</a></p> </li> </ul> <h2 id="in_higher_category_theory">In higher category theory</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/higher+topos+theory">higher topos theory</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/%280%2C1%29-topos">(0,1)-topos</a></p> <ul> <li><a class="existingWikiWord" href="/nlab/show/%280%2C1%29-site">(0,1)-site</a></li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/2-topos">2-topos</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/2-site">2-site</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/2-sheaf">2-sheaf</a>, <a class="existingWikiWord" href="/nlab/show/stack">stack</a></p> </li> </ul> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-topos">(∞,1)-topos</a></p> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-site">(∞,1)-site</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-sheaf">(∞,1)-sheaf</a>, <a class="existingWikiWord" href="/nlab/show/%E2%88%9E-stack">∞-stack</a>, <a class="existingWikiWord" href="/nlab/show/derived+stack">derived stack</a></p> </li> </ul> </li> </ul> <h2 id="theorems">Theorems</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/Diaconescu%27s+theorem">Diaconescu's theorem</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Barr%27s+theorem">Barr's theorem</a></p> </li> </ul> <div> <p> <a href="/nlab/edit/topos+theory+-+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='#Definition'>Definition</a></li> <ul> <li><a href='#sheaves_on_a_site'>Sheaves on a site</a></li> <li><a href='#cartesian'>Sites with pullbacks</a></li> <li><a href='#saturation_conditions'>Saturation conditions</a></li> <li><a href='#grothendieck_coverages'>Grothendieck coverages</a></li> </ul> <li><a href='#Examples'>Examples</a></li> <li><a href='#applications'>Applications</a></li> <li><a href='#in_higher_category_theory'>In higher category theory</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>A <strong>coverage</strong> on a <a class="existingWikiWord" href="/nlab/show/category">category</a> <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> consists of, for each object <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi><mo>∈</mo><mi>C</mi></mrow><annotation encoding="application/x-tex">U\in C</annotation></semantics></math>, a collection of families <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo lspace="verythinmathspace">:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i \colon U_i\to U\}_{i\in I}</annotation></semantics></math> of <a class="existingWikiWord" href="/nlab/show/morphisms">morphisms</a> with <a class="existingWikiWord" href="/nlab/show/target">target</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> to be thought of as <a class="existingWikiWord" href="/nlab/show/cover">covering families</a>. The essential characteristic of these covering families is that they be “stable under <a class="existingWikiWord" href="/nlab/show/base+change">pullback</a>.” A number of other “saturation” conditions are frequently also imposed for convenience. A category equipped with a coverage is called a <a class="existingWikiWord" href="/nlab/show/site">site</a>.</p> <p>One of the main purposes of a coverage is that it provides the minimum structure necessary to define a notion of <a class="existingWikiWord" href="/nlab/show/sheaf">sheaf</a> (or more generally <a class="existingWikiWord" href="/nlab/show/stack">stack</a>) on <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>. A <a class="existingWikiWord" href="/nlab/show/Grothendieck+topos">Grothendieck topos</a> is defined to be the category of sheaves (of sets) on a small site. From this perspective, the example to keep in mind is the <a class="existingWikiWord" href="/nlab/show/partial+order">poset</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>O</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">O(X)</annotation></semantics></math> of open sets in some <a class="existingWikiWord" href="/nlab/show/topological+space">topological space</a> (or <a class="existingWikiWord" href="/nlab/show/locale">locale</a>) <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>, where a morphism is an inclusion, and a family of inclusions <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>↪</mo><mi>U</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{U_i \hookrightarrow U\}</annotation></semantics></math> is a covering family iff <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi><mo>=</mo><msub><mo lspace="thinmathspace" rspace="thinmathspace">⋃</mo> <mi>i</mi></msub><msub><mi>U</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">U = \bigcup_i U_i</annotation></semantics></math>.</p> <p>Another perspective on a coverage is that the covering families are “postulated well-behaved quotients.” That is, saying that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> is a covering family means that we want to think of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> as a well-behaved quotient (i.e. colimit) of the <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>U</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">U_i</annotation></semantics></math>. Here “well-behaved” means primarily “stable under pullback.” In general, <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> may or may not <em>actually</em> be a colimit of the <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>U</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">U_i</annotation></semantics></math>; if it always is we call the site <em><a class="existingWikiWord" href="/nlab/show/subcanonical+coverage">subcanonical</a></em>. From this perspective, the embedding of <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> into its category of sheaves is “the free cocompletion of <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> that takes covering families to well-behaved quotients”; compare how the <a class="existingWikiWord" href="/nlab/show/Yoneda+embedding">Yoneda embedding</a> of an arbitrary category <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> into its category of <a class="existingWikiWord" href="/nlab/show/presheaf">presheaves</a> is its <a class="existingWikiWord" href="/nlab/show/free+cocompletion">free cocompletion</a>, period.</p> <p>The traditional name for a coverage, with the extra saturation conditions imposed, is a <a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">Grothendieck topology</a>, and this is still widely used in mathematics. Following the <a class="existingWikiWord" href="/nlab/show/Elephant">Elephant</a>, on this page we use <em>coverage</em> for a pullback-stable system of covering families and <em>Grothendieck coverage</em> if the extra saturation conditions are imposed. See <a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">Grothendieck topology</a> for a discussion of the objections to that term.</p> <p>A related notion is that of <a class="existingWikiWord" href="/nlab/show/basis+for+a+Grothendieck+topology">basis for a Grothendieck topology</a>, which is similar to the notion of coverage, and similarly induces a Grothendieck topology, but assumes existence of <a class="existingWikiWord" href="/nlab/show/pullback">pullback</a>s and closure of covering families under these pullbacks.</p> <h2 id="Definition">Definition</h2> <div class="num_defn" id="ConditionsOnACoverage"> <h6 id="definition_2">Definition</h6> <p>A <strong>coverage</strong> on a <a class="existingWikiWord" href="/nlab/show/category">category</a> <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> consists of a <a class="existingWikiWord" href="/nlab/show/function">function</a> assigning to each <a class="existingWikiWord" href="/nlab/show/object">object</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi><mo>∈</mo><mi>C</mi></mrow><annotation encoding="application/x-tex">U\in C</annotation></semantics></math> a collection of families of <a class="existingWikiWord" href="/nlab/show/morphisms">morphisms</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math>, called <em><a class="existingWikiWord" href="/nlab/show/covering">covering</a> families</em>, such that</p> <ul> <li>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> is a covering family and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mo>:</mo><mi>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">g:V\to U</annotation></semantics></math> is a morphism, then there exists a covering family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>h</mi> <mi>j</mi></msub><mo>:</mo><msub><mi>V</mi> <mi>j</mi></msub><mo>→</mo><mi>V</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{h_j:V_j\to V\}</annotation></semantics></math> such that each composite <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><msub><mi>h</mi> <mi>j</mi></msub></mrow><annotation encoding="application/x-tex">g h_j</annotation></semantics></math> factors through some <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>f</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">f_i</annotation></semantics></math>.</li> </ul> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mrow><mtable><mtr><mtd><msub><mi>V</mi> <mi>j</mi></msub></mtd> <mtd><mover><mo>⟶</mo><mi>k</mi></mover></mtd> <mtd><msub><mi>U</mi> <mi>i</mi></msub></mtd></mtr> <mtr><mtd><mpadded width="0" lspace="-100%width"><mrow><msup><mrow></mrow> <mrow><msub><mi>h</mi> <mi>j</mi></msub></mrow></msup></mrow></mpadded><mo maxsize="1.2em" minsize="1.2em">↓</mo></mtd> <mtd></mtd> <mtd><mo maxsize="1.2em" minsize="1.2em">↓</mo><mpadded width="0"><mrow><msup><mo></mo><mrow><msub><mi>f</mi> <mi>i</mi></msub></mrow></msup></mrow></mpadded></mtd></mtr> <mtr><mtd><mi>V</mi></mtd> <mtd><munder><mo>⟶</mo><mi>g</mi></munder></mtd> <mtd><mi>U</mi></mtd></mtr></mtable></mrow><mspace width="thickmathspace"></mspace><mspace width="thickmathspace"></mspace><mo>.</mo></mrow><annotation encoding="application/x-tex"> \array{ V_j &\overset{k}{\longrightarrow}& U_i \\ \mathllap{{}^{h_j}}\big\downarrow & & \big\downarrow\mathrlap{^{f_i}} \\ V &\underset{g}{\longrightarrow}& U } \;\;. </annotation></semantics></math></div> <p>(NB. The logic here is: <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo>∀</mo><mi>f</mi><mo>,</mo><mo>∀</mo><mi>g</mi><mo>,</mo><mo>∃</mo><mi>h</mi><mo>,</mo><mo>∀</mo><mi>j</mi><mo>,</mo><mo>∃</mo><mi>i</mi><mo>,</mo><mo>∃</mo><mi>k</mi><mo lspace="verythinmathspace">:</mo></mrow><annotation encoding="application/x-tex">\forall f, \forall g, \exists h, \forall j, \exists i, \exists k \colon</annotation></semantics></math> such that the above <a class="existingWikiWord" href="/nlab/show/commuting+diagram">diagram commutes</a>.)</p> </div> <div class="num_defn"> <h6 id="definition_3">Definition</h6> <p>A <a class="existingWikiWord" href="/nlab/show/site">site</a> is a category equipped with a coverage.</p> </div> <p>Often <a class="existingWikiWord" href="/nlab/show/site">site</a>s are required to be <a class="existingWikiWord" href="/nlab/show/small+category">small</a>; see <a class="existingWikiWord" href="/nlab/show/large+site">large site</a> for complications that may otherwise arise.</p> <h3 id="sheaves_on_a_site">Sheaves on a site</h3> <p>See <a class="existingWikiWord" href="/nlab/show/sheaf">sheaf</a>, of course, but it seems appropriate to briefly recall the concept here. If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> is a family of morphisms with codomain <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math>, a <a class="existingWikiWord" href="/nlab/show/presheaf">presheaf</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>X</mi><mo>:</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>→</mo><mi>Set</mi></mrow><annotation encoding="application/x-tex">X:C^{op}\to Set</annotation></semantics></math> is called a <strong>sheaf</strong> for this family if</p> <ul> <li>For any collection of elements <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>x</mi> <mi>i</mi></msub><mo>∈</mo><mi>X</mi><mo stretchy="false">(</mo><msub><mi>U</mi> <mi>i</mi></msub><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">x_i \in X(U_i)</annotation></semantics></math> such that, whenever <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mo>:</mo><mi>V</mi><mo>→</mo><msub><mi>U</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">g:V\to U_i</annotation></semantics></math> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>h</mi><mo>:</mo><mi>V</mi><mo>→</mo><msub><mi>U</mi> <mi>j</mi></msub></mrow><annotation encoding="application/x-tex">h:V\to U_j</annotation></semantics></math> are such that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>f</mi> <mi>i</mi></msub><mi>g</mi><mo>=</mo><msub><mi>f</mi> <mi>j</mi></msub><mi>h</mi></mrow><annotation encoding="application/x-tex">f_i g = f_j h</annotation></semantics></math>, we have <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>X</mi><mo stretchy="false">(</mo><mi>g</mi><mo stretchy="false">)</mo><mo stretchy="false">(</mo><msub><mi>x</mi> <mi>i</mi></msub><mo stretchy="false">)</mo><mo>=</mo><mi>X</mi><mo stretchy="false">(</mo><mi>h</mi><mo stretchy="false">)</mo><mo stretchy="false">(</mo><msub><mi>x</mi> <mi>j</mi></msub><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">X(g)(x_i) = X(h)(x_j)</annotation></semantics></math>, then there exists a unique <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>x</mi><mo>∈</mo><mi>X</mi><mo stretchy="false">(</mo><mi>U</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">x\in X(U)</annotation></semantics></math> such that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>X</mi><mo stretchy="false">(</mo><msub><mi>f</mi> <mi>i</mi></msub><mo stretchy="false">)</mo><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msub><mi>x</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">X(f_i)(x)=x_i</annotation></semantics></math> for all <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>.</li> </ul> <p>If <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> is a site, a presheaf <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>X</mi><mo>:</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>→</mo><mi>Set</mi></mrow><annotation encoding="application/x-tex">X:C^{op}\to Set</annotation></semantics></math> is called a <strong>sheaf</strong> on <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> if it is a sheaf for every covering family in <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>. We call a site <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> <strong><a class="existingWikiWord" href="/nlab/show/subcanonical+coverage">subcanonical</a></strong> if every representable functor <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>C</mi><mo stretchy="false">(</mo><mo lspace="verythinmathspace" rspace="0em">−</mo><mo>,</mo><mi>c</mi><mo stretchy="false">)</mo><mo>:</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>→</mo><mi>Set</mi></mrow><annotation encoding="application/x-tex">C(-,c):C^{op}\to Set</annotation></semantics></math> is a sheaf.</p> <p>The <a class="existingWikiWord" href="/nlab/show/category+of+sheaves">category of sheaves</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Sh</mi><mo stretchy="false">(</mo><mi>C</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Sh(C)</annotation></semantics></math> is a full <a class="existingWikiWord" href="/nlab/show/subcategory">subcategory</a> of the category <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">[</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>,</mo><mi>Set</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">[C^{op},Set]</annotation></semantics></math> of presheaves. If <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> is <a class="existingWikiWord" href="/nlab/show/subcanonical+coverage">subcanonical</a>, then its <a class="existingWikiWord" href="/nlab/show/Yoneda+embedding">Yoneda embedding</a> <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><msup><mi>C</mi> <mi>op</mi></msup><mo>,</mo><mi>Set</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">C\to [C^{op},Set]</annotation></semantics></math> factors through <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Sh</mi><mo stretchy="false">(</mo><mi>C</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Sh(C)</annotation></semantics></math>. If <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> is small, then <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Sh</mi><mo stretchy="false">(</mo><mi>C</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Sh(C)</annotation></semantics></math> is <a class="existingWikiWord" href="/nlab/show/reflective+subcategory">reflective</a> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">[</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>,</mo><mi>Set</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">[C^{op},Set]</annotation></semantics></math> and a <a class="existingWikiWord" href="/nlab/show/Grothendieck+topos">Grothendieck topos</a>.</p> <h3 id="cartesian">Sites with pullbacks</h3> <p>If, as is frequently the case, <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> has <a class="existingWikiWord" href="/nlab/show/pullback">pullbacks</a>, then it is natural to impose the following stronger condition:</p> <ul> <li>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> is a covering family and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mo>:</mo><mi>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">g:V\to U</annotation></semantics></math> is a morphism, then the family of pullbacks <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msup><mi>g</mi> <mo>*</mo></msup><mo stretchy="false">(</mo><msub><mi>f</mi> <mi>i</mi></msub><mo stretchy="false">)</mo><mo>:</mo><msup><mi>g</mi> <mo>*</mo></msup><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>V</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{g^*(f_i):g^*U_i\to V\}</annotation></semantics></math> is a covering family of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>V</mi></mrow><annotation encoding="application/x-tex">V</annotation></semantics></math>.</li> </ul> <p>One can also impose the weaker condition that the pullbacks of covering families exist and are covering families, even if not all pullbacks exist in <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>. The saturation conditions below imply that on a category with pullbacks, every coverage is equivalent to one satisfying this stronger condition, which perhaps we may call a <strong>cartesian coverage</strong>.</p> <p>Likewise, when <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> has pullbacks (of covering families), the condition for a presheaf <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> to be a sheaf for a covering family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> can be stated more simply (and probably more familiarly, to some readers), as the assertion that the following diagram is an <a class="existingWikiWord" href="/nlab/show/equalizer">equalizer</a>:</p> <div class="maruku-equation"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block" class="maruku-mathml"><semantics><mrow><mi>X</mi><mo stretchy="false">(</mo><mi>U</mi><mo stretchy="false">)</mo><mo>→</mo><munder><mo lspace="thinmathspace" rspace="thinmathspace">∏</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></munder><mi>X</mi><mo stretchy="false">(</mo><msub><mi>U</mi> <mi>i</mi></msub><mo stretchy="false">)</mo><mo>⇉</mo><munder><mo lspace="thinmathspace" rspace="thinmathspace">∏</mo> <mrow><mi>j</mi><mo>,</mo><mi>k</mi><mo>∈</mo><mi>I</mi></mrow></munder><mi>X</mi><mo stretchy="false">(</mo><msub><mi>U</mi> <mi>j</mi></msub><msub><mo>×</mo> <mi>U</mi></msub><msub><mi>U</mi> <mi>k</mi></msub><mo stretchy="false">)</mo><mo>.</mo></mrow><annotation encoding="application/x-tex"> X(U) \to \prod_{i\in I} X(U_i) \rightrightarrows \prod_{j,k\in I} X(U_j\times_U U_k). </annotation></semantics></math></div> <p>The generalization to <a class="existingWikiWord" href="/nlab/show/stack">stacks</a> using <a class="existingWikiWord" href="/nlab/show/cosimplicial+object">cosimplicial objects</a> is then straightforward.</p> <h3 id="saturation_conditions">Saturation conditions</h3> <p>The collection of covering families can be “closed up” under a number of convenient operations without changing the notion of sheaf.</p> <ol> <li> <p>Any presheaf is a sheaf for the singleton family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mn>1</mn> <mi>U</mi></msub><mo>:</mo><mi>U</mi><mo>→</mo><mi>U</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{1_U:U\to U\}</annotation></semantics></math>.</p> </li> <li> <p>Any presheaf which is a sheaf for a family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> and also for some family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>h</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>:</mo><msub><mi>U</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>→</mo><msub><mi>U</mi> <mi>i</mi></msub><msub><mo stretchy="false">}</mo> <mrow><mi>j</mi><mo>∈</mo><msub><mi>J</mi> <mi>i</mi></msub></mrow></msub></mrow><annotation encoding="application/x-tex">\{h_{i j}:U_{i j} \to U_i\}_{j\in J_i}</annotation></semantics></math> for each <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> is also a sheaf for the family of all composites <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><msub><mi>h</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>:</mo><msub><mi>U</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi><mo>,</mo><mi>j</mi><mo>∈</mo><msub><mi>J</mi> <mi>i</mi></msub></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i h_{i j}:U_{i j}\to U\}_{i\in I, j\in J_i}</annotation></semantics></math>.</p> </li> <li> <p>Let <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> be a site and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> a covering family, and suppose <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>g</mi> <mi>j</mi></msub><mo>:</mo><msub><mi>V</mi> <mi>j</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>j</mi><mo>∈</mo><mi>J</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{g_j:V_j\to U\}_{j\in J}</annotation></semantics></math> is a family of morphisms such that each <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>f</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">f_i</annotation></semantics></math> factors through some <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>g</mi> <mi>j</mi></msub></mrow><annotation encoding="application/x-tex">g_j</annotation></semantics></math>. Then any sheaf <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> on <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> is also a sheaf for the family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>g</mi> <mi>j</mi></msub><mo>:</mo><msub><mi>V</mi> <mi>j</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>j</mi><mo>∈</mo><mi>J</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{g_j:V_j\to U\}_{j\in J}</annotation></semantics></math>. <em>(NB: for this condition, it is essential that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{f_i\}</annotation></semantics></math> be part of a coverage and that <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> be a sheaf for the entire coverage, not just for <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{f_i\}</annotation></semantics></math>.)</em></p> </li> <li> <p>For any family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math>, the <a class="existingWikiWord" href="/nlab/show/sieve">sieve</a> it generates is the family of all morphisms <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mo>:</mo><mi>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">g:V\to U</annotation></semantics></math> which factor through some <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>f</mi> <mi>i</mi></msub></mrow><annotation encoding="application/x-tex">f_i</annotation></semantics></math>. A presheaf <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> is a sheaf for <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{f_i\}</annotation></semantics></math> iff it is a sheaf for the sieve it generates.</p> </li> </ol> <h3 id="grothendieck_coverages">Grothendieck coverages</h3> <p>Grothendieck originally considered only coverages that are closed under some or all of the above saturation conditions.</p> <p>Because of the final condition, we may choose to consider only covering <em>sieves</em>. Incorporating the other saturation conditions as well, we define a <strong>Grothendieck coverage</strong> (commonly called a <a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">Grothendieck topology</a>) to be a collection of sieves called <em>covering sieves</em>, satisfying the following pullback-stability and saturation conditions. (If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>R</mi></mrow><annotation encoding="application/x-tex">R</annotation></semantics></math> is a sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</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>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">g:V\to U</annotation></semantics></math> is a morphism, we define <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>g</mi> <mo>*</mo></msup><mo stretchy="false">(</mo><mi>R</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">g^*(R)</annotation></semantics></math> to be the sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>V</mi></mrow><annotation encoding="application/x-tex">V</annotation></semantics></math> consisting of all morphisms <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>h</mi></mrow><annotation encoding="application/x-tex">h</annotation></semantics></math> into <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>V</mi></mrow><annotation encoding="application/x-tex">V</annotation></semantics></math> such that <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>g</mi><mi>h</mi></mrow><annotation encoding="application/x-tex">g h</annotation></semantics></math> factors through some morphism in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>R</mi></mrow><annotation encoding="application/x-tex">R</annotation></semantics></math>.)</p> <ul> <li> <p>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>R</mi></mrow><annotation encoding="application/x-tex">R</annotation></semantics></math> is a covering sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</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>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">g:V\to U</annotation></semantics></math> is any morphism, then <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>g</mi> <mo>*</mo></msup><mo stretchy="false">(</mo><mi>R</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">g^*(R)</annotation></semantics></math> is a covering sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>V</mi></mrow><annotation encoding="application/x-tex">V</annotation></semantics></math>.</p> </li> <li> <p>For each <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> the sieve <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mi>M</mi> <mi>U</mi></msub></mrow><annotation encoding="application/x-tex">M_U</annotation></semantics></math> consisting of <em>all</em> morphisms into <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> (the sieve generated by the singleton family <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mn>1</mn> <mi>U</mi></msub><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{1_U\}</annotation></semantics></math>) is a covering sieve.</p> </li> <li> <p>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>R</mi></mrow><annotation encoding="application/x-tex">R</annotation></semantics></math> is a covering sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> and <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> is an arbitrary sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math> such that for each <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>f</mi><mo>:</mo><mi>V</mi><mo>→</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">f:V\to U</annotation></semantics></math> in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>R</mi></mrow><annotation encoding="application/x-tex">R</annotation></semantics></math>, <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msup><mi>f</mi> <mo>*</mo></msup><mo stretchy="false">(</mo><mi>S</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">f^*(S)</annotation></semantics></math> is a covering sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>V</mi></mrow><annotation encoding="application/x-tex">V</annotation></semantics></math>, then <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> is also a covering sieve on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math>.</p> </li> </ul> <p>One can then show that for every coverage, there is a <em>unique</em> Grothendieck coverage having the same sheaves. When <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> is small, then Grothendieck coverages on <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> are also in bijective correspondence with <a class="existingWikiWord" href="/nlab/show/Lawvere-Tierney+topology">Lawvere-Tierney topologies</a> on its presheaf topos <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">[</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>,</mo><mi>Set</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">[C^{op},Set]</annotation></semantics></math>, and thus in bijection with <a class="existingWikiWord" href="/nlab/show/subtopos">subtoposes</a> of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">[</mo><msup><mi>C</mi> <mi>op</mi></msup><mo>,</mo><mi>Set</mi><mo stretchy="false">]</mo></mrow><annotation encoding="application/x-tex">[C^{op},Set]</annotation></semantics></math>. For more on this see <a class="existingWikiWord" href="/nlab/show/category+of+sheaves">category of sheaves</a>.</p> <p>On the other hand, it is often useful to consider only pullback-stable covering families, without needing to close them up into sieves satisfying the saturation conditions. For instance, in many cases the generating covering families will be finite and easy to describe. As we saw above, the notion of sheaf can also be defined more explicitly in terms of covering families, especially when <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> has pullbacks.</p> <p>Frequently, though, these covering families will satisfy at least some of the saturation conditions. The name <a class="existingWikiWord" href="/nlab/show/Grothendieck+pretopology">Grothendieck pretopology</a> or <em>basis for a Grothendieck topology</em> is commonly used for a coverage (often of the stronger sort requiring pullbacks) that also satisfies</p> <ul> <li> <p>Every isomorphism is a covering family.</p> </li> <li> <p>If <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i\to U\}_{i\in I}</annotation></semantics></math> is a covering family and for each <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>, so is <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>h</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>:</mo><msub><mi>U</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>→</mo><msub><mi>U</mi> <mi>i</mi></msub><msub><mo stretchy="false">}</mo> <mrow><mi>j</mi><mo>∈</mo><msub><mi>J</mi> <mi>i</mi></msub></mrow></msub></mrow><annotation encoding="application/x-tex">\{h_{i j}:U_{i j} \to U_i\}_{j\in J_i}</annotation></semantics></math>, then <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><msub><mi>h</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>:</mo><msub><mi>U</mi> <mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mi>i</mi><mo>∈</mo><mi>I</mi><mo>,</mo><mi>j</mi><mo>∈</mo><msub><mi>U</mi> <mi>i</mi></msub></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i h_{i j}:U_{i j}\to U\}_{i\in I, j\in U_i}</annotation></semantics></math> is also a covering family.</p> </li> </ul> <h2 id="Examples">Examples</h2> <ul> <li> <p>For <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> a <a class="existingWikiWord" href="/nlab/show/topological+space">topological space</a> and <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Op</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Op(X)</annotation></semantics></math> its <a class="existingWikiWord" href="/nlab/show/category+of+open+subsets">category of open subsets</a>, the collection of <a class="existingWikiWord" href="/nlab/show/open+cover">open cover</a>s is a <a class="existingWikiWord" href="/nlab/show/subcanonical+coverage">subcanonical</a> coverage on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Op</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Op(X)</annotation></semantics></math>. I.e. a covering family on an open subset <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi><mo>⊂</mo><mi>X</mi></mrow><annotation encoding="application/x-tex">U \subset X</annotation></semantics></math> is a collection of further open subsets <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>⊂</mo><mi>X</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{U_i \subset X\}</annotation></semantics></math> such that their union (in <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>) is <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math>: <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mo>∪</mo> <mi>i</mi></msub><msub><mi>U</mi> <mi>i</mi></msub><mo>=</mo><mi>U</mi></mrow><annotation encoding="application/x-tex">\cup_i U_i = U</annotation></semantics></math>.</p> <p>This is the standard choice of coverage on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Op</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Op(X)</annotation></semantics></math>. Sheaves for this coverage are the usual notion of sheaf on a topological space.</p> <p>A <strong><a class="existingWikiWord" href="/nlab/show/basis+for+the+topology">basis for the topology</a></strong> on <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> is also a coverage on <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>, generating the same Grothendieck topology but in general not being closed under pullbacks (which in <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Op</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Op(X)</annotation></semantics></math> is intersection of open subsets). Notice that thence a basis for a topology on <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> is not what is called a <a class="existingWikiWord" href="/nlab/show/basis+for+a+Grothendieck+topology">basis for a Grothendieck topology</a> on <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>Op</mi><mo stretchy="false">(</mo><mi>X</mi><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">Op(X)</annotation></semantics></math>.</p> </li> <li> <p>Similarly on (any <a class="existingWikiWord" href="/nlab/show/small+category">small</a> version of) the category <a class="existingWikiWord" href="/nlab/show/Top">Top</a> or <a class="existingWikiWord" href="/nlab/show/Diff">Diff</a> or similar categories of topological spaces possibly with extra <a class="existingWikiWord" href="/nlab/show/stuff%2C+structure%2C+property">structure</a>, <a class="existingWikiWord" href="/nlab/show/open+cover">open cover</a>s form a coverage.</p> <p>Another choice of coverage is given by taking covering families to consist of <a class="existingWikiWord" href="/nlab/show/%C3%A9tale+map">étale map</a>s, i.e. of local <a class="existingWikiWord" href="/nlab/show/homeomorphism">homeomorphism</a>s. Notice that every open cover <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>X</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{U_i \to X\}</annotation></semantics></math> consist of local homeomorphisms and in addition gives the local homeomorphism out of the <a class="existingWikiWord" href="/nlab/show/coproduct">coproduct</a> <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><msub><mo lspace="thinmathspace" rspace="thinmathspace">∐</mo> <mi>i</mi></msub><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>X</mi></mrow><annotation encoding="application/x-tex">\coprod_i U_i \to X</annotation></semantics></math>.</p> </li> <li> <p>On <a class="existingWikiWord" href="/nlab/show/Diff">Diff</a> also <a class="existingWikiWord" href="/nlab/show/good+open+cover">good open cover</a>s form an equivalent coverage. <br />While good open covers are not stable under pullback in <a class="existingWikiWord" href="/nlab/show/Diff">Diff</a>, every pullback of a good open cover gives an open cover that may be refined by a good open cover. This is all we need in the definition of coverage.</p> </li> <li> <p>There are many interesting coverages on the category of <a class="existingWikiWord" href="/nlab/show/scheme">schemes</a>; it was these examples which originally motivated Grothendieck to consider the notion. See <a class="existingWikiWord" href="/nlab/show/fpqc+topology">fpqc topology</a>, etc.</p> </li> <li> <p>On any <a class="existingWikiWord" href="/nlab/show/category">category</a> there is the <em><a class="existingWikiWord" href="/nlab/show/trivial+coverage">trivial coverage</a></em> which has no covering families at all. Every presheaf is a sheaf for this coverage (and in particular, it is subcanonical). The corresponding Grothendieck coverage consists of all sieves that contain a <a class="existingWikiWord" href="/nlab/show/split+epimorphism">split epimorphism</a>. (Note that every presheaf is a sheaf for any family containing a split epic.)</p> </li> <li> <p>On any <a class="existingWikiWord" href="/nlab/show/regular+category">regular category</a> there is a coverage, called the <em>regular coverage</em>, whose covering families are the singletons <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><mi>f</mi><mo>:</mo><mi>V</mi><mo>→</mo><mi>U</mi><mo stretchy="false">}</mo></mrow><annotation encoding="application/x-tex">\{f:V\to U\}</annotation></semantics></math> where <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 a <a class="existingWikiWord" href="/nlab/show/regular+epimorphism">regular epimorphism</a>. It is subcanonical.</p> </li> <li> <p>On any <a class="existingWikiWord" href="/nlab/show/coherent+category">coherent category</a> there is a a coverage, called the <em>coherent coverage</em>, whose covering families are the finite families <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">{</mo><msub><mi>f</mi> <mi>i</mi></msub><mo>:</mo><msub><mi>U</mi> <mi>i</mi></msub><mo>→</mo><mi>U</mi><msub><mo stretchy="false">}</mo> <mrow><mn>1</mn><mo>≤</mo><mi>i</mi><mo>≤</mo><mi>n</mi></mrow></msub></mrow><annotation encoding="application/x-tex">\{f_i:U_i \to U\}_{1\le i\le n}</annotation></semantics></math> the union of whose images is all of <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mi>U</mi></mrow><annotation encoding="application/x-tex">U</annotation></semantics></math>. It is subcanonical. Likewise there is a <em>geometric coverage</em> on any infinitary-coherent category.</p> </li> <li> <p>On any <a class="existingWikiWord" href="/nlab/show/extensive+category">extensive category</a> there is a coverage, called the <em>extensive coverage</em>, whose covering families are the inclusions into a (finite) coproduct. It is subcanonical. The coherent coverage on an extensive coherent category is generated by the union of the regular coverage and the extensive one.</p> </li> <li> <p>Any category has a <em><a class="existingWikiWord" href="/nlab/show/canonical+coverage">canonical coverage</a></em>, defined to be the largest subcanonical one. (Hence the name “subcanonical” = “contained in the canonical coverage.”) The covering sieves for the canonical coverage are precisely those which are <strong>universally effective-epimorphic</strong>, meaning that their target is their colimit and this colimit is preserved by pullback.</p> </li> <li> <p>The canonical coverage on a <a class="existingWikiWord" href="/nlab/show/Grothendieck+topos">Grothendieck topos</a> coincides with its geometric coverage, and moreover every sheaf for this coverage is representable. That is, a Grothendieck topos is a (<a class="existingWikiWord" href="/nlab/show/large+site">large</a>) site which is equivalent to its own category of sheaves.</p> </li> </ul> <h2 id="applications">Applications</h2> <p>In addition to the construction of <a class="existingWikiWord" href="/nlab/show/sheaf">sheaves</a> and <a class="existingWikiWord" href="/nlab/show/stack">stacks</a>, other (not unrelated) applications of coverages include:</p> <ul> <li> <p>The definition of internal <a class="existingWikiWord" href="/nlab/show/anafunctor">anafunctors</a>.</p> </li> <li> <p>The construction of <a class="existingWikiWord" href="/nlab/show/folk+model+structure">model structures for internal categories</a>.</p> </li> </ul> <h2 id="in_higher_category_theory">In higher category theory</h2> <p>The notion of <a class="existingWikiWord" href="/nlab/show/site">site</a> and hence that of <a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">Grothendieck topology</a>, <a class="existingWikiWord" href="/nlab/show/Grothendieck+pretopology">Grothendieck pretopology</a> and coverage typically has its straightforward analogs in <a class="existingWikiWord" href="/nlab/show/higher+category+theory">higher category theory</a>.</p> <p>in <a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-category+theory">(∞,1)-category theory</a> the corresponding notion is that of <em><a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-site">(∞,1)-site</a></em>. Such an <math xmlns="http://www.w3.org/1998/Math/MathML" display="inline" class="maruku-mathml"><semantics><mrow><mo stretchy="false">(</mo><mn>∞</mn><mo>,</mo><mn>1</mn><mo stretchy="false">)</mo></mrow><annotation encoding="application/x-tex">(\infty,1)</annotation></semantics></math>-site has correspondingly its <a class="existingWikiWord" href="/nlab/show/%28%E2%88%9E%2C1%29-category+of+%28%E2%88%9E%2C1%29-sheaves">(∞,1)-category of (∞,1)-sheaves</a>. A discussion of a <a class="existingWikiWord" href="/nlab/show/model+category">model category</a> <a class="existingWikiWord" href="/nlab/show/presentable+%28%E2%88%9E%2C1%29-category">presentation</a> of this in terms of localization at a coverage is at…</p> <h2 id="related_concepts">Related concepts</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/open+cover">open cover</a>, <a class="existingWikiWord" href="/nlab/show/good+open+cover">good open cover</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/closed+cover">closed cover</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/quasi-net">quasi-net</a></p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Grothendieck+topology">Grothendieck topology</a></p> </li> </ul> <h2 id="references">References</h2> <ul> <li> <p><a class="existingWikiWord" href="/nlab/show/Peter+Johnstone">Peter Johnstone</a>, <em><a class="existingWikiWord" href="/nlab/show/Elephant">Sketches of an Elephant</a></em> , especially section C2.1.</p> </li> <li> <p><a class="existingWikiWord" href="/nlab/show/Anders+Kock">Anders Kock</a>, <em><a href="http://home.imf.au.dk/kock/postulated.pdf">Postulated colimits and left exactness of Kan-extensions</a></em></p> </li> </ul> </body></html> </div> <div class="revisedby"> <p> Last revised on February 1, 2025 at 16:33:06. See the <a href="/nlab/history/coverage" 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/coverage" accesskey="E" class="navlink" id="edit" rel="nofollow">Edit</a><a href="https://nforum.ncatlab.org/discussion/8268/#Item_20">Discuss</a><span class="backintime"><a href="/nlab/revision/coverage/43" accesskey="B" class="navlinkbackintime" id="to_previous_revision" rel="nofollow">Previous revision</a></span><a href="/nlab/show/diff/coverage" accesskey="C" class="navlink" id="see_changes" rel="nofollow">Changes from previous revision</a><a href="/nlab/history/coverage" accesskey="S" class="navlink" id="history" rel="nofollow">History (43 revisions)</a> <a href="/nlab/show/coverage/cite" style="color: black">Cite</a> <a href="/nlab/print/coverage" accesskey="p" id="view_print" rel="nofollow">Print</a> <a href="/nlab/source/coverage" id="view_source" rel="nofollow">Source</a> </div> </div> <!-- Content --> </div> <!-- Container --> </body> </html>