\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*{Dowker's theorem} \hypertarget{dowkers_theorem}{}\section*{{Dowker's Theorem}}\label{dowkers_theorem} \noindent\hyperlink{note}{Note}\dotfill \pageref*{note} \linebreak \noindent\hyperlink{the_two_nerves_of_a_relation_dowkers_construction}{The two nerves of a relation: Dowker's construction}\dotfill \pageref*{the_two_nerves_of_a_relation_dowkers_construction} \linebreak \noindent\hyperlink{barycentric_subdivisions}{Barycentric subdivisions}\dotfill \pageref*{barycentric_subdivisions} \linebreak \noindent\hyperlink{contiguity}{Contiguity}\dotfill \pageref*{contiguity} \linebreak \noindent\hyperlink{references}{References}\dotfill \pageref*{references} \linebreak \hypertarget{note}{}\subsection*{{Note}}\label{note} The purpose of this entry is simply to state and prove a result of Dowker that was mentioned at [[Vietoris complex]]. Here we will look at a version of Dowker's original proof. In later sections we will see other ways of proving it. We will also discuss some of the interpretations and applications of the result and ask about possible generalisations. To keep the discussion fairly self contained, certain ideas will be repeated from that, and possibly other, entries. \hypertarget{the_two_nerves_of_a_relation_dowkers_construction}{}\subsection*{{The two nerves of a relation: Dowker's construction}}\label{the_two_nerves_of_a_relation_dowkers_construction} Let $X, Y$ be sets and $R$ a relation between $X$ and $Y$, so $R \subseteq X \times Y$. We write $x R y$ for $(x, y) \in R$. \begin{uexample} (In addition to those given in [[Vietoris complex]].) If $K$ is a [[simplicial complex]], its structure is specified by a collection of non-empty finite subsets of its set of vertices namely those sets of vertices declared to be simplices. This collection of simplices is supposed to be downward closed, i.e., if $\sigma$ is a simplex and $\tau \subseteq \sigma$ with $\tau \neq \emptyset$, then $\tau$ is a simplex. For our purposes here, set $X = V_K$ to be the set of vertices of $K$ and $Y = S_K$, the set of simplices of $K$ with $x R y$ if $x$ is a vertex of the simplex $y$. \end{uexample} \textbf{Returning to the general situation,} we define two [[simplicial complex|simplicial complexes]] associated to $R$, as follows: \begin{enumerate}% \item $K = K_R:$ \begin{itemize}% \item the set of vertices is the set $X$; \item a $p$-simplex of $K$ is a set $\{x_0, \cdots, x_p\}\subseteq X$ such that there is some $y \in Y$ with $x_i R y$ for $i = 0, 1, \cdots, p$. \end{itemize} \item $L = L_R :$ \begin{itemize}% \item the set of vertices is the set, $Y$; \item $p$-simplex of $K$ is a set $\{y_0, \cdots, y_p\}\subseteq Y$ such that there is some $x \in X$ with $x R y_j$ for $j = 0, 1, \cdots, p$. \end{itemize} \end{enumerate} Clearly the two constructions are in some sense dual to each other. \begin{uremark} These two simplicial complexes were denoted $V(R)$ and $C(R)$ at [[Vietoris complex]]. \end{uremark} We next need some classical subdivision ideas. \hypertarget{barycentric_subdivisions}{}\subsubsection*{{Barycentric subdivisions}}\label{barycentric_subdivisions} Combinatorially, if $K$ is a simplicial complex with vertex set $V_K$, then one associates to $K$ the partially ordered set of its simplices. Explicitly we write $S_K$ for the set of simplices of $K$ and $(S_K, \subseteq)$ for the partially ordered set with $\subseteq$ being the obvious inclusion. The \textbf{barycentric subdivision}, $K'$, of $K$ has $S_K$ as its set of vertices and a finite set of vertices of $K'$ (i.e. simplices of $K$) is a simplex of $K'$ if it can be totally ordered by inclusion. (Thus $K'$ is the simplicial complex given by taking the nerve of the poset, $(S_K, \subseteq)$.) \begin{uremark} It is important to note that there is in general \emph{no} natural simplicial map from $K'$ to $K$. If however $V_K$ is ordered in such a way that the vertices of any simplex in $K$ are totally ordered (for instance by picking a total order on $V_K$), then one can easily specify a map \begin{displaymath} \varphi : K' \rightarrow K \end{displaymath} by: \begin{itemize}% \item if $\sigma' = \{ x_0, \cdots, x_p\}$ is a vertex of $K'$ (so $\sigma' \in S_K$), let $\varphi \sigma'$ be the least vertex of $\sigma'$ in the given fixed order. \end{itemize} This preserves simplices, but reverses order so if $\sigma_1' \subset \sigma_2'$ then $\varphi (\sigma_1') \geq \varphi(\sigma_2')$. \end{uremark} If one changes the order, then the resulting map is \emph{contiguous}: \hypertarget{contiguity}{}\subsection*{{Contiguity}}\label{contiguity} Let $\varphi,~ \psi : K \rightarrow L$ be two simplicial maps between [[simplicial complex|simplicial complexes]]. They are \textbf{contiguous} if for any simplex $\sigma$ of $K$, $\varphi (\sigma) \cup \psi (\sigma)$ forms a simplex in $L$. Contiguity gives a constructive form of homotopy applicable to simplicial maps. If $\psi : K \rightarrow L$ is a simplicial map, then it induces $\psi' : K' \rightarrow L'$ after subdivision. As there is no way of knowing / picking compatible orders on $V_K$ and $V_L$ in advance, we get that on constructing \begin{displaymath} \varphi_K : K' \rightarrow K \end{displaymath} and \begin{displaymath} \varphi_L : L' \rightarrow L \end{displaymath} that $\varphi_L \psi'$ and $\psi \varphi_K$ will be contiguous to each other but rarely equal. \textbf{Returning to $K_R$ and $L_R$,} we order the elements of $X$ and $Y$. Then suppose $y'$ is a vertex of $L'_R$, so $y' = \{y_0, \cdots, y_p\}$, a simplex of $L_R$ and there is an element $x \in X$ with $x R y_i, i = 0, 1, \cdots, p$. Set $\psi y' = x$ for one such $x$. If $\sigma = \{ y'_0, \cdots, y'_q\}$ is a $q$-simplex of $L'_R$, assume $y'_0$ is its least vertex (in the inclusion ordering) \begin{displaymath} \varphi_L (y^\prime_0) \in y'_0 \subset y^\prime for each y_i \in \sigma \end{displaymath} hence $\psi y'_i R \varphi_L (y'_0)$ and the elements $\psi y'_0, \cdots, \psi y'_q$ form a simplex in $K_R$, so $\psi : L'_R \rightarrow K_R$ is a simplicial map. It, of course, depends on the ordering used and on the choice of $x$, but any other choice $\bar x$ for $\psi y'$ gives a contiguous map. Reversing the roles of $X$ and $Y$ in the above we get a simplicial map \begin{displaymath} \bar\psi : K_R' \rightarrow L_R. \end{displaymath} Applying barycentric subdivisions again gives \begin{displaymath} \bar\psi' : K_R'' \rightarrow L_R' \end{displaymath} and composing with $\psi : L_R' \rightarrow K_R$ gives a map \begin{displaymath} \psi \bar\psi' : K_R'' \rightarrow K_R. \end{displaymath} Obviously, $K'$ is ordered by inclusion of simplices, so there is a map $\varphi_{K'}:K_R''\rightarrow K_R'$, and then we get a map \begin{displaymath} \varphi_K \varphi_{K'} : K_R''\rightarrow K_R. \end{displaymath} \begin{uproposition} The two maps $\varphi_K \varphi_{K'}$ and $\psi \bar\psi'$ are contiguous. \end{uproposition} Before proving this, note that contiguity implies homotopy and that $\varphi_K \varphi_{K'}$ is homotopic to the identity map on $K_R$ after realisation, i.e., this proves the following modulo the proof of the proposition (see addendum below): \begin{utheorem} $|K_R| \simeq |L_R|.$ \end{utheorem} The homotopy depends on the ordering of the vertices and so is not natural. \begin{proof} Let $\sigma''' = \{ x_0'', x_1'', \cdots, x_q''\}$ be a simplex of $K_R''$ and as usual assume $x_0''$ is its least vertex, then for all $i \gt 0$ \begin{displaymath} x_0'' \subset x_i''. \end{displaymath} We have that $\varphi_{K'}$ is clearly order reversing so $\varphi_{K'} x_i'' \subseteq \varphi_{K'} x_0''$. Let $y = \bar\varphi \varphi_{K'} x_0''$, then for each $x \in \varphi_{K'} x_0''$, $x Ry$. Since $\varphi_K \varphi_{K'} x_i'' \in \varphi_{K'} x_i'' \subseteq \varphi_{K'} x_0''$, we have $\varphi_K \varphi_{K'} x_i'' R y$. For each vertex $x'$ of $x_i'', \bar \psi x' \in \bar \psi' x_i''$, hence as $\varphi_{K'}x_0'' \in x_0'' \subset x_i'', y = \bar \psi \varphi_{K'} xx_0'' \in \bar \psi' x_i''$ for each $x_i ''$, so for each $x_i'', \psi \bar \psi' x_i'' R y$, however we therefore have \begin{displaymath} \varphi_k \varphi_{K'} (\sigma '') \cup \psi \bar \psi (\sigma''') = \bigcup \varphi_K \varphi_{K'} (x_i'')\cup \psi \bar \psi; x_i '' \end{displaymath} forms a simplex in $K_R$, i.e. $\varphi_K \varphi_{K'}$ and $\psi \bar \psi'$ are contiguous. \end{proof} \textbf{Addendum.} In the current form, it is difficult to see why $\bar\psi' \psi$ should be homotopic to the identity on $|L_R|$. Notice that this is a necessary step in proving the homotopy equivalence between $|K_R|$ and $|L_R|$. The purpose of this addendum is to make a slightly different claim which yields a homotopy equivalence between $|K_R|$ and $|L_R|$. From above, observe that we have maps $\bar\psi \varphi_{K'}:K_R'' \rightarrow L_R$ and $\varphi_L \bar\psi' : K_R'' \rightarrow L_R$. Dowker proves the following: \begin{uproposition} The two maps $\bar\psi \varphi_{K'}$ and $\varphi_L \bar\psi'$ are contiguous. \end{uproposition} Thus upon passing to the geometric realization, we get that the realizations of the maps are homotopic, i.e. $|\bar\psi| \simeq |\bar\psi'|$. Notice that we are using the fact that $|\varphi_{K'}|$ and $|\varphi_L|$ are homotopic to the respective identity maps. Thus we obtain $|\psi||\bar\psi'| \simeq |\psi||\bar\psi|$, and in particular, the latter composition is homotopic to the identity on $|K_R|$. By symmetric arguments, we obtain the following results: \begin{enumerate}% \item $\bar\psi \psi'$ and $\varphi_L \varphi_{L'}$ are contiguous. \item $\varphi_K \psi'$ and $\psi \varphi_{L'}$ are contiguous. \end{enumerate} Passing to the geometric realization, we get that $|\bar\psi| |\psi'|$ is homotopic to the identity on $|L_R|$, and also that $|\psi'|\simeq |\psi|$. Thus we see that $|\bar\psi||\psi|$ is homotopic to the identity on $|L_R|$. It follows that $|\psi|: |L_R| \rightarrow |K_R|$ is a homotopy equivalence, with $|\bar\psi|$ as its homotopy inverse. \hypertarget{references}{}\subsection*{{References}}\label{references} \begin{itemize}% \item C. H. Dowker, \emph{Homology Groups of Relations}, Annals of Maths, 56, (1952), 84--95. \end{itemize} [[!redirects Dowker's theorem]] [[!redirects Dowker's theorem]] [[!redirects Dowker's theorem]] [[!redirects Dowker's Theorem]] [[!redirects Dowker's theorem]] [[!redirects Dowker's Theorem]] [[!redirects Dowker's theorem]] [[!redirects Dowker's Theorem]] [[!redirects Dowker theorem]] [[!redirects Dowker Theorem]] \end{document}