\documentclass[12pt,titlepage]{article} \usepackage{amsmath} \usepackage{mathrsfs} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsthm} \usepackage{mathtools} \usepackage{graphicx} \usepackage{color} \usepackage{ucs} \usepackage[utf8x]{inputenc} \usepackage{xparse} \usepackage{hyperref} %----Macros---------- % % Unresolved issues: % % \righttoleftarrow % \lefttorightarrow % % \color{} with HTML colorspec % \bgcolor % \array with options (without options, it's equivalent to the matrix environment) % Of the standard HTML named colors, white, black, red, green, blue and yellow % are predefined in the color package. Here are the rest. \definecolor{aqua}{rgb}{0, 1.0, 1.0} \definecolor{fuschia}{rgb}{1.0, 0, 1.0} \definecolor{gray}{rgb}{0.502, 0.502, 0.502} \definecolor{lime}{rgb}{0, 1.0, 0} \definecolor{maroon}{rgb}{0.502, 0, 0} \definecolor{navy}{rgb}{0, 0, 0.502} \definecolor{olive}{rgb}{0.502, 0.502, 0} \definecolor{purple}{rgb}{0.502, 0, 0.502} \definecolor{silver}{rgb}{0.753, 0.753, 0.753} \definecolor{teal}{rgb}{0, 0.502, 0.502} % Because of conflicts, \space and \mathop are converted to % \itexspace and \operatorname during preprocessing. % itex: \space{ht}{dp}{wd} % % Height and baseline depth measurements are in units of tenths of an ex while % the width is measured in tenths of an em. \makeatletter \newdimen\itex@wd% \newdimen\itex@dp% \newdimen\itex@thd% \def\itexspace#1#2#3{\itex@wd=#3em% \itex@wd=0.1\itex@wd% \itex@dp=#2ex% \itex@dp=0.1\itex@dp% \itex@thd=#1ex% \itex@thd=0.1\itex@thd% \advance\itex@thd\the\itex@dp% \makebox[\the\itex@wd]{\rule[-\the\itex@dp]{0cm}{\the\itex@thd}}} \makeatother % \tensor and \multiscript \makeatletter \newif\if@sup \newtoks\@sups \def\append@sup#1{\edef\act{\noexpand\@sups={\the\@sups #1}}\act}% \def\reset@sup{\@supfalse\@sups={}}% \def\mk@scripts#1#2{\if #2/ \if@sup ^{\the\@sups}\fi \else% \ifx #1_ \if@sup ^{\the\@sups}\reset@sup \fi {}_{#2}% \else \append@sup#2 \@suptrue \fi% \expandafter\mk@scripts\fi} \def\tensor#1#2{\reset@sup#1\mk@scripts#2_/} \def\multiscripts#1#2#3{\reset@sup{}\mk@scripts#1_/#2% \reset@sup\mk@scripts#3_/} \makeatother % \slash \makeatletter \newbox\slashbox \setbox\slashbox=\hbox{$/$} \def\itex@pslash#1{\setbox\@tempboxa=\hbox{$#1$} \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa \copy\slashbox \kern-\@tempdima \box\@tempboxa} \def\slash{\protect\itex@pslash} \makeatother % math-mode versions of \rlap, etc % from Alexander Perlis, "A complement to \smash, \llap, and lap" % http://math.arizona.edu/~aprl/publications/mathclap/ \def\clap#1{\hbox to 0pt{\hss#1\hss}} \def\mathllap{\mathpalette\mathllapinternal} \def\mathrlap{\mathpalette\mathrlapinternal} \def\mathclap{\mathpalette\mathclapinternal} \def\mathllapinternal#1#2{\llap{$\mathsurround=0pt#1{#2}$}} \def\mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}} \def\mathclapinternal#1#2{\clap{$\mathsurround=0pt#1{#2}$}} % Renames \sqrt as \oldsqrt and redefine root to result in \sqrt[#1]{#2} \let\oldroot\root \def\root#1#2{\oldroot #1 \of{#2}} \renewcommand{\sqrt}[2][]{\oldroot #1 \of{#2}} % Manually declare the txfonts symbolsC font \DeclareSymbolFont{symbolsC}{U}{txsyc}{m}{n} \SetSymbolFont{symbolsC}{bold}{U}{txsyc}{bx}{n} \DeclareFontSubstitution{U}{txsyc}{m}{n} % Manually declare the stmaryrd font \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} \SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n} % Manually declare the MnSymbolE font \DeclareFontFamily{OMX}{MnSymbolE}{} \DeclareSymbolFont{mnomx}{OMX}{MnSymbolE}{m}{n} \SetSymbolFont{mnomx}{bold}{OMX}{MnSymbolE}{b}{n} \DeclareFontShape{OMX}{MnSymbolE}{m}{n}{ <-6> MnSymbolE5 <6-7> MnSymbolE6 <7-8> MnSymbolE7 <8-9> MnSymbolE8 <9-10> MnSymbolE9 <10-12> MnSymbolE10 <12-> MnSymbolE12}{} % Declare specific arrows from txfonts without loading the full package \makeatletter \def\re@DeclareMathSymbol#1#2#3#4{% \let#1=\undefined \DeclareMathSymbol{#1}{#2}{#3}{#4}} \re@DeclareMathSymbol{\neArrow}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\neArr}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\seArrow}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\seArr}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\nwArrow}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\nwArr}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\swArrow}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\swArr}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\nequiv}{\mathrel}{symbolsC}{46} \re@DeclareMathSymbol{\Perp}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\Vbar}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\sslash}{\mathrel}{stmry}{12} \re@DeclareMathSymbol{\bigsqcap}{\mathop}{stmry}{"64} \re@DeclareMathSymbol{\biginterleave}{\mathop}{stmry}{"6} \re@DeclareMathSymbol{\invamp}{\mathrel}{symbolsC}{77} \re@DeclareMathSymbol{\parr}{\mathrel}{symbolsC}{77} \makeatother % \llangle, \rrangle, \lmoustache and \rmoustache from MnSymbolE \makeatletter \def\Decl@Mn@Delim#1#2#3#4{% \if\relax\noexpand#1% \let#1\undefined \fi \DeclareMathDelimiter{#1}{#2}{#3}{#4}{#3}{#4}} \def\Decl@Mn@Open#1#2#3{\Decl@Mn@Delim{#1}{\mathopen}{#2}{#3}} \def\Decl@Mn@Close#1#2#3{\Decl@Mn@Delim{#1}{\mathclose}{#2}{#3}} \Decl@Mn@Open{\llangle}{mnomx}{'164} \Decl@Mn@Close{\rrangle}{mnomx}{'171} \Decl@Mn@Open{\lmoustache}{mnomx}{'245} \Decl@Mn@Close{\rmoustache}{mnomx}{'244} \makeatother % Widecheck \makeatletter \DeclareRobustCommand\widecheck[1]{{\mathpalette\@widecheck{#1}}} \def\@widecheck#1#2{% \setbox\z@\hbox{\m@th$#1#2$}% \setbox\tw@\hbox{\m@th$#1% \widehat{% \vrule\@width\z@\@height\ht\z@ \vrule\@height\z@\@width\wd\z@}$}% \dp\tw@-\ht\z@ \@tempdima\ht\z@ \advance\@tempdima2\ht\tw@ \divide\@tempdima\thr@@ \setbox\tw@\hbox{% \raise\@tempdima\hbox{\scalebox{1}[-1]{\lower\@tempdima\box \tw@}}}% {\ooalign{\box\tw@ \cr \box\z@}}} \makeatother % \mathraisebox{voffset}[height][depth]{something} \makeatletter \NewDocumentCommand\mathraisebox{moom}{% \IfNoValueTF{#2}{\def\@temp##1##2{\raisebox{#1}{$\m@th##1##2$}}}{% \IfNoValueTF{#3}{\def\@temp##1##2{\raisebox{#1}[#2]{$\m@th##1##2$}}% }{\def\@temp##1##2{\raisebox{#1}[#2][#3]{$\m@th##1##2$}}}}% \mathpalette\@temp{#4}} \makeatletter % udots (taken from yhmath) \makeatletter \def\udots{\mathinner{\mkern2mu\raise\p@\hbox{.} \mkern2mu\raise4\p@\hbox{.}\mkern1mu \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}} \makeatother %% Fix array \newcommand{\itexarray}[1]{\begin{matrix}#1\end{matrix}} %% \itexnum is a noop \newcommand{\itexnum}[1]{#1} %% Renaming existing commands \newcommand{\underoverset}[3]{\underset{#1}{\overset{#2}{#3}}} \newcommand{\widevec}{\overrightarrow} \newcommand{\darr}{\downarrow} \newcommand{\nearr}{\nearrow} \newcommand{\nwarr}{\nwarrow} \newcommand{\searr}{\searrow} \newcommand{\swarr}{\swarrow} \newcommand{\curvearrowbotright}{\curvearrowright} \newcommand{\uparr}{\uparrow} \newcommand{\downuparrow}{\updownarrow} \newcommand{\duparr}{\updownarrow} \newcommand{\updarr}{\updownarrow} \newcommand{\gt}{>} \newcommand{\lt}{<} \newcommand{\map}{\mapsto} \newcommand{\embedsin}{\hookrightarrow} \newcommand{\Alpha}{A} \newcommand{\Beta}{B} \newcommand{\Zeta}{Z} \newcommand{\Eta}{H} \newcommand{\Iota}{I} \newcommand{\Kappa}{K} \newcommand{\Mu}{M} \newcommand{\Nu}{N} \newcommand{\Rho}{P} \newcommand{\Tau}{T} \newcommand{\Upsi}{\Upsilon} \newcommand{\omicron}{o} \newcommand{\lang}{\langle} \newcommand{\rang}{\rangle} \newcommand{\Union}{\bigcup} \newcommand{\Intersection}{\bigcap} \newcommand{\Oplus}{\bigoplus} \newcommand{\Otimes}{\bigotimes} \newcommand{\Wedge}{\bigwedge} \newcommand{\Vee}{\bigvee} \newcommand{\coproduct}{\coprod} \newcommand{\product}{\prod} \newcommand{\closure}{\overline} \newcommand{\integral}{\int} \newcommand{\doubleintegral}{\iint} \newcommand{\tripleintegral}{\iiint} \newcommand{\quadrupleintegral}{\iiiint} \newcommand{\conint}{\oint} \newcommand{\contourintegral}{\oint} \newcommand{\infinity}{\infty} \newcommand{\bottom}{\bot} \newcommand{\minusb}{\boxminus} \newcommand{\plusb}{\boxplus} \newcommand{\timesb}{\boxtimes} \newcommand{\intersection}{\cap} \newcommand{\union}{\cup} \newcommand{\Del}{\nabla} \newcommand{\odash}{\circleddash} \newcommand{\negspace}{\!} \newcommand{\widebar}{\overline} \newcommand{\textsize}{\normalsize} \renewcommand{\scriptsize}{\scriptstyle} \newcommand{\scriptscriptsize}{\scriptscriptstyle} \newcommand{\mathfr}{\mathfrak} \newcommand{\statusline}[2]{#2} \newcommand{\tooltip}[2]{#2} \newcommand{\toggle}[2]{#2} % Theorem Environments \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}{Lemma} \newtheorem{prop}{Proposition} \newtheorem{cor}{Corollary} \newtheorem*{utheorem}{Theorem} \newtheorem*{ulemma}{Lemma} \newtheorem*{uprop}{Proposition} \newtheorem*{ucor}{Corollary} \theoremstyle{definition} \newtheorem{defn}{Definition} \newtheorem{example}{Example} \newtheorem*{udefn}{Definition} \newtheorem*{uexample}{Example} \theoremstyle{remark} \newtheorem{remark}{Remark} \newtheorem{note}{Note} \newtheorem*{uremark}{Remark} \newtheorem*{unote}{Note} %------------------------------------------------------------------- \begin{document} %------------------------------------------------------------------- \section*{Stone duality} \hypertarget{context}{}\subsubsection*{{Context}}\label{context} \hypertarget{category_theory}{}\paragraph*{{$(0,1)$-Category theory}}\label{category_theory} [[!include (0,1)-category theory - contents]] \hypertarget{duality}{}\paragraph*{{Duality}}\label{duality} [[!include duality - contents]] \hypertarget{stone_duality}{}\section*{{Stone duality}}\label{stone_duality} \noindent\hyperlink{idea}{Idea}\dotfill \pageref*{idea} \linebreak \noindent\hyperlink{particular_cases}{Particular cases}\dotfill \pageref*{particular_cases} \linebreak \noindent\hyperlink{locales_and_frames}{Locales and frames}\dotfill \pageref*{locales_and_frames} \linebreak \noindent\hyperlink{topological_spaces}{Topological spaces}\dotfill \pageref*{topological_spaces} \linebreak \noindent\hyperlink{coherent_spaces_and_distributive_lattices}{Coherent spaces and distributive lattices}\dotfill \pageref*{coherent_spaces_and_distributive_lattices} \linebreak \noindent\hyperlink{StoneSpacesAndBooleanAlgebras}{Stone spaces and Boolean algebras}\dotfill \pageref*{StoneSpacesAndBooleanAlgebras} \linebreak \noindent\hyperlink{StoneSpacesAndProfiniteSets}{Stone spaces and profinite sets}\dotfill \pageref*{StoneSpacesAndProfiniteSets} \linebreak \noindent\hyperlink{stonean_spaces_and_complete_boolean_algebras}{Stonean spaces and complete Boolean algebras}\dotfill \pageref*{stonean_spaces_and_complete_boolean_algebras} \linebreak \noindent\hyperlink{profinite_algebras}{Profinite algebras}\dotfill \pageref*{profinite_algebras} \linebreak \noindent\hyperlink{related_concepts}{Related concepts}\dotfill \pageref*{related_concepts} \linebreak \noindent\hyperlink{references}{References}\dotfill \pageref*{references} \linebreak \hypertarget{idea}{}\subsection*{{Idea}}\label{idea} Stone duality is a subject comprising various [[dualities]] between [[space and quantity]] in the area of [[general topology]] and topological [[algebra]]. \hypertarget{particular_cases}{}\subsection*{{Particular cases}}\label{particular_cases} \hypertarget{locales_and_frames}{}\subsubsection*{{Locales and frames}}\label{locales_and_frames} Perhaps the most general duality falling under this heading is that between [[locales]] (on the [[space]] side) and [[frames]] (on the [[quantity]] side). Of course, this duality is not very deep at all; the category [[Loc]] of locales is simply \emph{defined} to be the [[opposite category|opposite]] of the category [[Frm]] of frames. But there are several interesting dualities between [[subcategories]] of these. \hypertarget{topological_spaces}{}\subsubsection*{{Topological spaces}}\label{topological_spaces} Stone duality is often described for [[topological spaces]] rather than for [[locales]]. In this case, the most general duality is that between [[sober spaces]] and frames with enough points (which correspond to [[topological locale]]s). In many cases, one requires the [[ultrafilter theorem]] (or other forms of the [[axiom of choice]]) in order for the duality to hold when applied to topological spaces, while the duality holds for locales even in [[constructive mathematics]]. \hypertarget{coherent_spaces_and_distributive_lattices}{}\subsubsection*{{Coherent spaces and distributive lattices}}\label{coherent_spaces_and_distributive_lattices} Any [[distributive lattice]] generates a [[free object|free]] frame. The locales which arise in this way can be characterized as the [[coherent locale]]s, and this gives a duality between distributive lattices and coherent locales. Note that one must additionally restrict to ``coherent maps'' between coherent locales. Also, at least assuming the [[axiom of choice]], every coherent locale is [[topological locale|topological]], so we may say ``coherent space'' instead. \hypertarget{StoneSpacesAndBooleanAlgebras}{}\subsubsection*{{Stone spaces and Boolean algebras}}\label{StoneSpacesAndBooleanAlgebras} The duality which is due to [[Marshall Stone]], and which gives its name to the subject, is the duality between [[Stone spaces]] and [[Boolean algebras]]. Specifically, a [[distributive lattice]] is a Boolean algebra precisely when the free frame it generates is the topology of a Stone space, and any continuous map of Stone spaces is coherent. Therefore, the category of Stone spaces is dual to the category of Boolean algebras. The Boolean algebra corresponding to a Stone space consists of its [[clopen sets]]. This duality may be realized via a [[dualizing object]] as follows. The two-element [[Boolean algebra]] may be regarded as a Boolean algebra object $\mathbf{2}$ [[internalization|internal to]] the [[category]] of [[compact Hausdorff spaces]] $CH$. Thus, for each finitary Boolean algebra operation $\theta\colon \mathbf{2}^n \to \mathbf{2}$, there is a corresponding operation on the [[representable functor]] $CH(-, \mathbf{2}): CH^{op} \to Set$ given by \begin{displaymath} CH(-, \mathbf{2})^n \cong CH(-, \mathbf{2}^n) \stackrel{CH(-, \theta)}{\to} CH(-, \mathbf{2}) \end{displaymath} and therefore we obtain a lift \begin{displaymath} CH(-, \mathbf{2}): CH^{op} \to BoolAlg \end{displaymath} A \emph{[[Stone space]]} is by definition a [[totally disconnected topological space|totally disconnected]] [[compact topological space|compact]] [[Hausdorff topological space]]. Let $Stone \hookrightarrow CH$ denote the [[full subcategory]] of Stone spaces. \begin{theorem} \label{}\hypertarget{}{} The representable functor restricts to an [[equivalence of categories]] $Stone^{op} \to BoolAlg$. \end{theorem} This important theorem can be exploited to give a third description of the free Boolean algebra on a set $X$: \begin{displaymath} Bool(X) \cong CH(2^X, \mathbf{2}) \end{displaymath} where $2$ denotes the 2-element compact Hausdorff space, and $2^X$ the product space $\prod_X 2$. Indeed, the inverse equivalence \begin{displaymath} BoolAlg^{op} \to Stone \end{displaymath} takes a Boolean algebra $B$ to its [[spectrum]], i.e., the space of Boolean algebra maps $Bool(B, 2)$ (\emph{this} $2$ is the two-element Boolean algebra $\mathbb{Z}_2$!) equipped with the [[Zariski topology]]. Applied to $B = Bool(X)$, we have \begin{displaymath} BoolAlg(B, 2) \cong Set(X, 2) = 2^X \end{displaymath} where the Zariski topology coincides with the [[product topology]] on $2^X$. By the equivalence, we therefore retrieve $Bool(X)$ as $CH(2^X, \mathbf{2})$. This in turn is identified with the Boolean algebra of [[clopen subset]]s of the generalised [[Cantor space]] $2^X$. A second description of the inverse equivalence $BoolAlg^{op} \to Stone$ comes about through the yoga of [[ambimorphic object|ambimorphic objects]]. Namely, the Boolean compact Hausdorff space $\mathbf{2}$ can equally well be seen as a \href{/nlab/show/compact+Hausdorff+object#comphaus}{compact Hausdorff object} in the category of Boolean algebras. Thus, the representable functor $Bool(-, \mathbf{2}): Bool^{op} \to Set$ lifts canonically to a functor \begin{displaymath} Bool^{op} \to CH \end{displaymath} and in fact part of the Stone representation theorem is that this factors through the inclusion $Stone \hookrightarrow CH$ as the inverse equivalence $Bool^{op} \to Stone$. In particular this lift determines the topology, providing an description alternative to the description in terms of the Zariski topology (although they are of course the same). An extension of the classical Stone duality to the category of Boolean spaces (= zero-dimensional locally compact Hausdorff spaces) and continuous maps (respectively, perfect maps) was obtained by G. D. Dimov (respectively, by H. P. Doctor) (see the references below). \hypertarget{StoneSpacesAndProfiniteSets}{}\subsubsection*{{Stone spaces and profinite sets}}\label{StoneSpacesAndProfiniteSets} Note that a finite [[Stone space]] is necessarily [[discrete space|discrete]], and these correspond to the finite Boolean algebras, i.e. $FinSet \simeq FinStoneTop \simeq FinBool^{op}$. However, since Boolean algebras form a [[locally finitely presentable category]], we have $Bool \simeq Ind(FinBool) \simeq Pro(FinSet)^{op}$ (see [[ind-object]] and [[pro-object]]). In consequence, $StoneTop \simeq Pro(FinSet)$: i.e. [[Stone spaces]] are equivalent to \emph{[[profinite sets]]}, in this context then often called \emph{[[profinite spaces]]}. One way of explaining this classical Stone duality is hence via the following sequence of [[equivalences of categories]] \begin{displaymath} Bool \simeq Ind(FinBool) \simeq Ind(FinSet^{op}) \simeq Pro(FinSet)^{op} \,, \end{displaymath} where ``[[FinSet]]'' is the [[category]] of [[finite sets]], ``$Ind$'' stands for [[ind-objects]], ``$Pro$'' for [[pro-objects]] and ${}^{op}$ for the [[opposite category]] and the [[equivalence of categories|equivalence]] $FinSet^{op} \simeq FinBool$ is that discussed at \emph{\href{FinSet#OppositeCategory}{FinSet -- Opposite category}}. \hypertarget{stonean_spaces_and_complete_boolean_algebras}{}\subsubsection*{{Stonean spaces and complete Boolean algebras}}\label{stonean_spaces_and_complete_boolean_algebras} The [[category]] of [[Stonean spaces]], i.e., compact [[extremally disconnected]] Hausdorff topological spaces equipped with open continuous maps as morphisms, is contravariantly equivalent to the category of [[complete Boolean algebras]] and continuous Boolean homomorphisms as morphisms. See [[complete Boolean algebra]] for more information. \hypertarget{profinite_algebras}{}\subsubsection*{{Profinite algebras}}\label{profinite_algebras} If $T$ is a [[Lawvere theory]] on $Set$, we can talk about \emph{Stone $T$-algebras}, i.e. $T$-algebras with a compatible Stone topology, and compare the resulting category $T Alg(Stone)$ with the category $Pro(Fin T Alg)$ of pro-(finite $T$-algebras). The previous duality says that these categories are equivalent when $T$ is the identity theory. It is also true in many other cases, such as: \begin{itemize}% \item the theory of [[groups]], resulting in the rich theory of [[profinite groups]] \item the theories of [[semigroups]] and [[monoids]] \item the theory of [[rings]] (with or without 1) \item the theories of [[distributive lattices]], [[Heyting algebras]], and [[Boolean algebras]] \item the theory of $M$-sets, where $M$ is a finite monoid \item the theories of $R$-modules and $R$-algebras, where $R$ is a finite ring \end{itemize} However it is false for some $T$, such as: \begin{itemize}% \item the theory of $\mathbb{N}$-sets, i.e. sets equipped with an endomorphism \item the theory of [[Jónsson-Tarski algebras]] \item the theory of [[lattices]] \end{itemize} All of these can be found in chapter VI of Johnstone's book cited below. The corresponding fact is also notably false for [[groupoids]], i.e. $Gpd(Stone)$ is not equivalent to $Pro(FinGpd)$, in contrast to the case for groups. (Of course, groupoids are not described by a Lawvere theory.) \hypertarget{related_concepts}{}\subsection*{{Related concepts}}\label{related_concepts} \begin{itemize}% \item [[canonical extension]] \item [[syntax - semantics duality]] \item [[abstract Stone duality]] \item [[Gelfand duality]] \end{itemize} \hypertarget{references}{}\subsection*{{References}}\label{references} \begin{itemize}% \item [[Peter Johnstone]], \emph{[[Stone Spaces]]} \item [[Olivia Caramello]], \emph{A topos-theoretic approach to Stone-type dualities}, \href{http://arxiv.org/abs/1103.3493}{arxiv/1103.3493} 158 pp. \item G. D. Dimov, Some generalizations of the Stone Duality Theorem, Publ. Math. Debrecen 80/3-4 (2012), 255--293. \item H. P. Doctor, The categories of Boolean lattices, Boolean rings and Boolean spaces, Canad. Math. Bulletin 7 (1964), 245--252. \item [[Jacob Lurie]], section A.1.1 of \emph{[[Spectral Algebraic Geometry]]}. \end{itemize} There is a version in model theory, [[Makkai duality]], \begin{itemize}% \item [[M. Makkai]], \emph{Stone duality for first-order logic}, Adv. Math. \textbf{65} (1987) no. 2, 97--170, , \href{http://www.ams.org/mathscinet-getitem?mr=900266}{MR89h:03067}; \emph{Duality and definability in first order logic}, Mem. Amer. Math. Soc. \textbf{105} (1993), no. 503 \end{itemize} Other variants are in \begin{itemize}% \item Henrik Forssell, \emph{First-order logical duality}, Ph.D. thesis, Carnegie Mellon U. 2008, \href{http://www.andrew.cmu.edu/user/awodey/students/forssell.pdf}{pdf} \item Spencer Breiner, \emph{Scheme representation for first-order logic}, Ph.D. thesis, Carnegie Mellon U. 2014, \href{https://www.andrew.cmu.edu/user/awodey/students/breiner.pdf}{pdf} \end{itemize} Discussion in [[E-∞ geometry]] is in \begin{itemize}% \item [[Jacob Lurie]], section A of \emph{[[Proper Morphisms, Completions, and the Grothendieck Existence Theorem]]} \end{itemize} Discussion of an $(\infty, 1)$-version of Stone duality is in \begin{itemize}% \item [[Jacob Lurie]], section 3.5.3 of [[Spectral Algebraic Geometry]] \end{itemize} [[!redirects Stone duality]] [[!redirects Stone dualities]] [[!redirects Stone representation theorem]] [[!redirects Stone representation theorems]] [[!redirects Stone's representation theorem]] [[!redirects Stone's representation theorems]] [[!redirects Stone's representation theorem]] [[!redirects Stone's representation theorems]] [[!redirects profinite algebra]] [[!redirects profinite algebras]] [[!redirects Stone algebra]] [[!redirects Stone algebras]] [[!redirects Stone topological algebra]] [[!redirects Stone topological algebras]] \end{document}