\documentclass[dvipdfmx,14pt,notheorems,aspectratio=169]{beamer} \usepackage{array,booktabs} \usepackage{amsmath,amssymb,mathtools,amsthm} \usepackage{mathrsfs} \usepackage{tikz} \usepackage{graphicx} \usetikzlibrary{positioning,arrows.meta,calc,shapes.geometric,fit,backgrounds} \usepackage[utf8]{inputenc} \usepackage{bxdpx-beamer} \usepackage{pxjahyper} \usetheme{Darmstadt} \usecolortheme{seahorse} \setbeamertemplate{navigation symbols}{} \setbeamertemplate{items}[default] \usefonttheme{professionalfonts} \definecolor{toposblue}{RGB}{0,72,165} \definecolor{toposorange}{RGB}{236,120,0} \definecolor{toposgreen}{RGB}{0,130,90} \definecolor{toposred}{RGB}{190,45,45} \definecolor{lightblue}{RGB}{225,238,255} \definecolor{lightorange}{RGB}{255,240,220} \definecolor{lightgreen}{RGB}{225,248,238} \definecolor{lightred}{RGB}{255,229,229} \definecolor{slate}{RGB}{50,60,70} \definecolor{paper}{RGB}{250,250,247} \definecolor{ink}{RGB}{31,35,38} \definecolor{muted}{RGB}{112,118,125} \definecolor{line}{RGB}{214,216,218} % Color grammar: green = logic, orange = geometry/space, blue = bridge/structure. \colorlet{logic}{toposgreen} \colorlet{spacec}{toposorange} \colorlet{bridge}{toposblue} \colorlet{danger}{toposred} \colorlet{logicLight}{lightgreen} \colorlet{spaceLight}{lightorange} \colorlet{bridgeLight}{lightblue} \colorlet{dangerLight}{lightred} \setbeamercolor{title}{fg=bridge} \setbeamercolor{frametitle}{fg=bridge} \setbeamercolor{block title}{bg=bridge!15,fg=bridge} \setbeamercolor{block body}{bg=bridge!5,fg=black} \setbeamercolor{alerted text}{fg=toposred} \newcommand{\Set}{\mathbf{Set}} \newcommand{\BA}{\mathbf{Bool}} \newcommand{\FinSet}{\mathbf{FinSet}} \newcommand{\FinBool}{\mathbf{FinBool}} \newcommand{\Sub}{\mathrm{Sub}} \newcommand{\Clop}{\mathrm{Clop}} \newcommand{\Stone}{\mathrm{Stone}} \newcommand{\Hom}{\mathrm{Hom}} \newcommand{\Sh}{\mathrm{Sh}} \newcommand{\R}{\mathbb{R}} \newcommand{\sem}[1]{[\![#1]\!]} \newcommand{\true}{\mathsf{true}} \newcommand{\false}{\mathsf{false}} \newcommand{\key}[1]{\textcolor{logic}{\textbf{#1}}} \newcommand{\shock}[1]{\textcolor{toposred}{\textbf{#1}}} \newcommand{\geom}[1]{\textcolor{spacec}{\textbf{#1}}} \newcommand{\vocab}[1]{\textbf{\textcolor{bridge}{#1}}} \AtBeginEnvironment{frame}{\small} \newcommand{\onemessage}[1]{% \vfill \begin{center} {\large\bfseries\color{bridge}#1} \end{center} } \tikzset{ >={Latex[length=2.4mm,width=2.0mm]}, world/.style={circle,draw=spacec,fill=spaceLight,very thick,minimum size=9mm,inner sep=0pt,font=\small\bfseries}, worldbad/.style={circle,draw=danger,fill=dangerLight,very thick,minimum size=9mm,inner sep=0pt,font=\small\bfseries}, worldgood/.style={circle,draw=bridge,fill=bridgeLight,very thick,minimum size=10mm,inner sep=0pt,font=\small\bfseries}, logicbox/.style={rounded corners=2pt,draw=logic,fill=logicLight,very thick,inner sep=7pt,align=center}, spacebox/.style={rounded corners=2pt,draw=spacec,fill=spaceLight,very thick,inner sep=7pt,align=center}, bridgebox/.style={rounded corners=2pt,draw=bridge,fill=bridgeLight,very thick,inner sep=7pt,align=center}, dangerbox/.style={rounded corners=2pt,draw=danger,fill=dangerLight,very thick,inner sep=7pt,align=center}, tinylabel/.style={font=\scriptsize\color{muted},align=center}, arrow/.style={->,very thick,draw=bridge}, linearrow/.style={->,thick,draw=ink!70}, dot/.style={circle,fill=ink,inner sep=1.8pt} } \title[ベン図からトポスへ]{ベン図からトポスへ} \subtitle{} \author{洞龍弥} \institute[]{数理空間トポス 新歓 2026} \date[2026年5月23日]{2026年5月23日} \begin{document} % 1 \begin{frame}[plain] \titlepage \end{frame} \section{ベン図} % 2 \begin{frame}{オイラーの手紙} \begin{center} \begin{tikzpicture}[scale=1.0] \draw[fill=white,draw=line,very thick,rounded corners=2pt] (-5.1,-2.35) rectangle (-0.7,2.35); \node[inner sep=0pt] at (-2.9,-0.05) {\includegraphics[width=4.15cm]{euler_letters/euler_circle_detail.png}}; \node[logicbox,minimum width=3.0cm] (p) at (1.5,1.25) {命題}; \node[spacebox,minimum width=3.0cm] (r) at (4.9,1.25) {空間の領域}; \draw[arrow] (p) -- (r); \node[font=\Large\bfseries\color{bridge}] at (3.2,0.22) {$P \longmapsto \sem{P}$}; \node[bridgebox,align=left,text width=6.0cm] at (3.2,-1.05) {``represented by figures, so as to exhibit their nature to the eye''\\ {\scriptsize Euler, \textit{Letters to a German Princess}, Letter CII}}; \end{tikzpicture} \end{center} \onemessage{空間と論理の対応は,とてもprimitiveである} \end{frame} % 3 \begin{frame}{嘘つきパズル Q} \small \begin{block}{問題} A, B, C のうち,ちょうど1人だけが嘘つき. \[ A:\text{「Bが嘘つき」}\qquad B:\text{「Cが嘘つき」}\qquad C:\text{「Aは正直者」} \] \end{block} \vspace{2pt} \begin{center} \begin{tikzpicture}[scale=.92,transform shape] \node[logicbox,minimum width=2.7cm] (a) at (-3.4,0.4) {A}; \node[logicbox,minimum width=2.7cm] (b) at (0,0.4) {B}; \node[logicbox,minimum width=2.7cm] (c) at (3.4,0.4) {C}; \node[tinylabel] at (-3.4,-0.55) {Bが嘘つき}; \node[tinylabel] at (0,-0.55) {Cが嘘つき}; \node[tinylabel] at (3.4,-0.55) {Aは正直者}; \node[bridgebox,minimum width=5.5cm] at (0,-2.1) {誰が嘘つきか?}; \end{tikzpicture} \end{center} \onemessage{まず,発言を命題として読む} \end{frame} % 3 \begin{frame}{嘘つきパズル A} \scriptsize \begin{block}{条件} ちょうど1人だけが嘘つき.円 A, B, C は「その人が本当のことを言う」領域. \end{block} \vspace{-8pt} \begin{center} \begin{tikzpicture}[scale=.80,transform shape] \begin{scope}[xshift=-4.15cm] \node[font=\bfseries\color{logic}] at (0,1.38) {Aが本当 $\leftrightarrow$ Bが嘘}; \draw[very thick,rounded corners=2pt,draw=line,fill=white] (-1.45,-1.22) rectangle (1.45,1.10); \fill[logicLight] (-.38,.12) circle (.72); \fill[logicLight] (.38,.12) circle (.72); \begin{scope} \clip (-.38,.12) circle (.72); \fill[white] (.38,.12) circle (.72); \end{scope} \draw[very thick,logic] (-.38,.12) circle (.72); \draw[very thick,logic] (.38,.12) circle (.72); \draw[very thick,logic] (0,-.48) circle (.72); \node at (-.78,.62) {A}; \node at (.78,.62) {B}; \node at (0,-1.02) {C}; \end{scope} \begin{scope} \node[font=\bfseries\color{logic}] at (0,1.38) {Bが本当 $\leftrightarrow$ Cが嘘}; \draw[very thick,rounded corners=2pt,draw=line,fill=white] (-1.45,-1.22) rectangle (1.45,1.10); \fill[logicLight] (.38,.12) circle (.72); \fill[logicLight] (0,-.48) circle (.72); \begin{scope} \clip (.38,.12) circle (.72); \fill[white] (0,-.48) circle (.72); \end{scope} \draw[very thick,logic] (-.38,.12) circle (.72); \draw[very thick,logic] (.38,.12) circle (.72); \draw[very thick,logic] (0,-.48) circle (.72); \node at (-.78,.62) {A}; \node at (.78,.62) {B}; \node at (0,-1.02) {C}; \end{scope} \begin{scope}[xshift=4.15cm] \node[font=\bfseries\color{logic}] at (0,1.38) {Cが本当 $\leftrightarrow$ Aが本当}; \fill[logicLight] (-1.45,-1.22) rectangle (1.45,1.10); \fill[white] (-.38,.12) circle (.72); \fill[white] (0,-.48) circle (.72); \begin{scope} \clip (-.38,.12) circle (.72); \fill[logicLight] (0,-.48) circle (.72); \end{scope} \draw[very thick,rounded corners=2pt,draw=line] (-1.45,-1.22) rectangle (1.45,1.10); \draw[very thick,logic] (-.38,.12) circle (.72); \draw[very thick,logic] (.38,.12) circle (.72); \draw[very thick,logic] (0,-.48) circle (.72); \node at (-.78,.62) {A}; \node at (.78,.62) {B}; \node at (0,-1.02) {C}; \end{scope} \end{tikzpicture} \end{center} \vspace{-10pt} \begin{block}{答え} \centering \vocab{AとCが本当,Bが嘘} \end{block} \onemessage{論理条件は,可能な場合を削っていく操作として見られる} \end{frame} % 3 \begin{frame}{論理と... 空間?} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=2.5cm] (formula) at (-4.6,0.9) {$P \Rightarrow Q$}; \node[font=\Huge\bfseries\color{bridge}] at (0,0.9) {?}; \begin{scope}[xshift=4.0cm,yshift=0.55cm] \fill[spaceLight] (0,0) circle (1.25); \fill[spaceLight,opacity=.55] (-0.28,0) circle (0.65); \draw[very thick,spacec] (0,0) circle (1.25); \draw[very thick,spacec] (-0.28,0) circle (0.65); \node[text=logic] at (-0.28,0) {$P$}; \node[text=logic] at (0.75,0.72) {$Q$}; \end{scope} \draw[arrow] (-3.25,0.9) -- (-0.55,0.9); \draw[arrow] (0.55,0.9) -- (2.65,0.9); \node[font=\Large,align=center] at (0,-1.65) {なぜ,証明や真偽の話が\\領域の包含になるのか}; \end{tikzpicture} \end{center} \onemessage{なんで対応するの?という問題提起} \end{frame} % 4 \begin{frame}{今日の地図} \begin{center} \begin{tikzpicture}[node distance=.55cm,scale=.80,transform shape] \node[spacebox,minimum width=2.7cm,minimum height=1.05cm] (venn) {ベン図}; \node[logicbox,minimum width=3.0cm,minimum height=1.05cm,right=of venn] (bool) {Boolean代数}; \node[spacebox,minimum width=3.0cm,minimum height=1.05cm,right=of bool] (stone) {Stone空間}; \node[bridgebox,minimum width=2.7cm,minimum height=1.05cm,right=of stone] (topos) {Topos}; \draw[arrow] (venn) -- (bool); \draw[arrow] (bool) -- (stone); \draw[arrow] (stone) -- (topos); \node[tinylabel,below=.35cm of venn] {命題は領域}; \node[tinylabel,below=.35cm of bool] {演算だけ残す}; \node[tinylabel,below=.35cm of stone] {論理の空間}; \node[tinylabel,below=.35cm of topos] {理論の空間}; \begin{scope}[yshift=-2.2cm] \draw[very thick,logic] (-5.0,0) -- (-1.8,0); \draw[very thick,spacec] (-0.8,0) -- (2.4,0); \draw[very thick,bridge] (3.4,0) -- (5.0,0); \node[font=\scriptsize\bfseries\color{logic}] at (-3.4,-.35) {論理}; \node[font=\scriptsize\bfseries\color{spacec}] at (.8,-.35) {幾何}; \node[font=\scriptsize\bfseries\color{bridge}] at (4.2,-.35) {対応}; \end{scope} \end{tikzpicture} \end{center} \onemessage{今日の道筋は,丸から理論の空間へ進むこと} \end{frame} % 7 \begin{frame}{可能世界の空間} \begin{center} \begin{tikzpicture}[scale=1.0] \node[world] at (-1.5,-1.0) {$00$}; \node[worldgood] at (1.5,-1.0) {$10$}; \node[world] at (-1.5,1.0) {$01$}; \node[world] at (1.5,1.0) {$11$}; \draw[very thick,line] (-1.5,-1.0) -- (1.5,-1.0) -- (1.5,1.0) -- (-1.5,1.0) -- cycle; \node[tinylabel] at (0,-1.75) {$p$}; \node[tinylabel] at (-2.25,0) {$q$}; \node[logicbox] at (-5.0,0.45) {$\varphi=p\land \neg q$}; \draw[arrow] (-3.85,0.25) -- (-2.2,-0.55); \node[spacebox] at (5.0,0.45) {$\sem{\varphi}=\{10\}$}; \draw[arrow] (2.2,-0.55) -- (3.7,0.25); \end{tikzpicture} \end{center} \onemessage{論理に対して,その「可能世界」の空間を割り当てる} \end{frame} % 8 \begin{frame}{論理演算は塗り絵} \begin{center} \begin{tikzpicture}[scale=1.0] \fill[spaceLight] (-1.1,0) circle (1.35); \fill[spaceLight,opacity=.62] (1.1,0) circle (1.35); \begin{scope} \clip (-1.1,0) circle (1.35); \fill[bridgeLight] (1.1,0) circle (1.35); \end{scope} \draw[very thick,spacec] (-1.1,0) circle (1.35); \draw[very thick,spacec] (1.1,0) circle (1.35); \node[text=logic] at (-1.55,.75) {$P$}; \node[text=logic] at (1.55,.75) {$Q$}; \node[font=\Large\bfseries\color{bridge}] at (0,0) {$P\land Q$}; \node[bridgebox,anchor=west] at (4.0,1.2) {\textcolor{logic}{$\land$}\quad \textcolor{spacec}{$\cap$}}; \node[bridgebox,anchor=west] at (4.0,0.0) {\textcolor{logic}{$\lor$}\quad \textcolor{spacec}{$\cup$}}; \node[dangerbox,anchor=west] at (4.0,-1.2) {\textcolor{logic}{$\neg$}\quad $\mathrm{int}(X\setminus -)$}; \end{tikzpicture} \end{center} \onemessage{論理に対して,その「可能世界」の空間を割り当てる} \end{frame} \section{Stone双対} % 9 \begin{frame}{1億円パズル Q} \small \begin{block}{問題} 金持ちが言う: \[ \text{真なら }1000\text{円},\qquad \text{偽なら }1000\text{円以外}. \] \end{block} \vspace{4pt} \begin{center} \includegraphics[width=.74\textwidth,height=.27\textheight,keepaspectratio]{figures/one_hundred_million_yen_puzzle_q.png} \end{center} \vspace{-8pt} {\centering\tiny\color{muted}出典(改変): R. M. Smullyan, \textit{Forever Undecided}, Knopf, 1987; cf. \textit{Logical Labyrinths}, A K Peters, 2008.\par} \onemessage{発言の真偽によって受け取る金額が変わる} \end{frame} % 10 \begin{frame}{1億円パズル A} \scriptsize \begin{columns}[T,totalwidth=\textwidth] \begin{column}{0.47\textwidth} \begin{block}{答え} 支払額を $x$ として,次の命題を言う: \[ S:\quad x\neq1000\ \land\ x\neq10^8. \] \end{block} \vspace{-4pt} \begin{block}{約束} \[ S\Rightarrow x=1000,\qquad \neg S\Rightarrow x\neq1000. \] \end{block} \end{column} \begin{column}{0.53\textwidth} \begin{center} \begin{tikzpicture}[scale=.82,transform shape] \node[logicbox,minimum width=4.0cm] (true) at (0,1.8) {$S$ が真}; \node[dangerbox,minimum width=4.0cm] (bad) at (0,0.45) {約束より $x=1000$\\よって $S$ は偽}; \draw[arrow] (true) -- (bad); \node[dangerbox,minimum width=3.6cm] at (0,-0.75) {$S$ は真ではない}; \draw[arrow] (bad) -- (0,-0.25); \node[spacebox,minimum width=2.6cm] (a) at (-2.0,-2.05) {$x=1000$}; \node[bridgebox,minimum width=2.6cm] (b) at (2.0,-2.05) {$x=10^8$}; \node[tinylabel] at (0,-1.35) {$\neg S$ なので $x=1000$ または $x=10^8$}; \draw[very thick,danger] (-2.85,-1.65) -- (-1.15,-2.45); \draw[very thick,danger] (-1.15,-1.65) -- (-2.85,-2.45); \node[tinylabel,align=center] at (-2.0,-2.9) {偽なら\\1000円以外}; \node[font=\large\bfseries\color{bridge}] at (2.0,-2.9) {残る}; \end{tikzpicture} \end{center} \end{column} \end{columns} \onemessage{論理をうまく設計すると,真偽によらず望む結論へ追い込める} \end{frame} % 11 \begin{frame}{1億円パズルをCantor空間で見る} \scriptsize \begin{columns}[T,totalwidth=\textwidth] \begin{column}{0.53\textwidth} \begin{center} \begin{tikzpicture}[scale=.72,transform shape, bit/.style={circle,draw=ink!65,fill=white,inner sep=0pt,minimum size=3.2mm}, chosen/.style={circle,draw=spacec,fill=spaceLight,very thick,inner sep=0pt,minimum size=4.4mm} ] \node[bit] (r) at (0,2.55) {}; \node[chosen] (a0) at (-2.8,1.45) {}; \node[bit] (a1) at (2.8,1.45) {}; \node[bit] (b00) at (-4.2,0.35) {}; \node[chosen] (b01) at (-1.4,0.35) {}; \node[bit] (b10) at (1.4,0.35) {}; \node[bit] (b11) at (4.2,0.35) {}; \node[bit] (c000) at (-4.9,-0.75) {}; \node[bit] (c001) at (-3.5,-0.75) {}; \node[chosen] (c010) at (-2.1,-0.75) {}; \node[bit] (c011) at (-0.7,-0.75) {}; \node[bit] (c100) at (0.7,-0.75) {}; \node[bit] (c101) at (2.1,-0.75) {}; \node[bit] (c110) at (3.5,-0.75) {}; \node[bit] (c111) at (4.9,-0.75) {}; \foreach \u/\v in {r/a0,r/a1,a0/b00,a0/b01,a1/b10,a1/b11,b00/c000,b00/c001,b01/c010,b01/c011,b10/c100,b10/c101,b11/c110,b11/c111} \draw[thick,line] (\u) -- (\v); \draw[very thick,spacec] (r) -- (a0) -- (b01) -- (c010); \node[tinylabel] at (-1.85,2.15) {$P(1)=0$}; \node[tinylabel] at (1.85,2.15) {$P(1)=1$}; \node[tinylabel] at (-2.55,0.85) {$P(2)=1$}; \node[tinylabel] at (-1.55,-0.2) {$P(3)=0$}; \node[font=\scriptsize\color{spacec}\bfseries] at (-2.1,-1.32) {$010\cdots$}; \draw[very thick,logic,rounded corners=2pt] (-5.2,-1.55) rectangle (-0.35,1.75); \node[tinylabel,logic] at (-3.2,1.98) {clopen cylinder}; \node[tinylabel] at (0,-2.0) {無限パス = すべての $P(n)$ への真偽割り当て}; \end{tikzpicture} \end{center} \end{column} \begin{column}{0.43\textwidth} \begin{block}{無限ベン図} \[ x=(\varepsilon_1,\varepsilon_2,\ldots)\in2^{\mathbb N} \] \[ \varepsilon_n=1 \quad\Longleftrightarrow\quad P(n)\text{ が真}. \] \end{block} \vspace{-4pt} \begin{block}{命題は領域} \[ \widehat{P(n)} = \{x\in2^{\mathbb N}\mid \varepsilon_n=1\}. \] 有限個の真偽条件は,有限段で決まる cylinder になる. \end{block} \vspace{-4pt} \begin{block}{Stone空間} 無限 Boolean algebra の点は,このような無限パスとして見える. \end{block} \end{column} \end{columns} \onemessage{有限個の円を,無限回の左右分岐に置き換える} \end{frame} % 9 \begin{frame}{Boolean代数} \begin{center} \begin{tikzpicture}[node distance=1.0cm] \node[spacebox,minimum width=2.6cm] (venn) {ベン図}; \node[bridgebox,minimum width=2.8cm,right=of venn] (ops) {$\cap,\ \cup,\ {}^c$}; \node[logicbox,minimum width=3.0cm,right=of ops] (ba) {Boolean代数}; \draw[arrow] (venn) -- (ops); \draw[arrow] (ops) -- (ba); \node[font=\Large\color{logic},align=center] at (0,-2.0) {$[\varphi]\wedge[\psi]=[\varphi\land\psi]$}; \node[tinylabel] at (0,-2.65) {論理的に同じ式を同一視する}; \end{tikzpicture} \end{center} \onemessage{論理操作は代数} \end{frame} % 10 \begin{frame}{有限なら,点に戻る} \begin{center} \begin{tikzpicture}[scale=1.0] \node[dot,label=below:$a$] (a) at (-4.6,-0.3) {}; \node[dot,label=below:$b$] (b) at (-3.8,0.8) {}; \node[dot,label=below:$c$] (c) at (-2.9,-0.5) {}; \node[tinylabel] at (-3.75,-1.35) {$X=\{a,b,c\}$}; \node[font=\Large\color{bridge}] at (0,0) {$\mathcal{P}$}; \draw[arrow] (-2.2,0) -- (-0.65,0); \draw[arrow] (0.65,0) -- (2.2,0); \node[world] at (3.2,-1.0) {$a$}; \node[world] at (4.3,-1.0) {$b$}; \node[world] at (5.4,-1.0) {$c$}; \node[logicbox,minimum width=3.2cm] at (4.3,0.65) {$\mathcal{P}(X)$}; \node[tinylabel] at (4.3,-1.75) {atomたち}; \node[font=\Large\bfseries\color{ink}] at (0,-2.65) {$\FinBool \simeq \FinSet^{op}$}; \end{tikzpicture} \end{center} \onemessage{圏の言葉で,本当に対応は定理になる} \end{frame} % 11 \begin{frame}{無限では,位相が出る} \begin{center} \begin{tikzpicture}[scale=1.0] \node[world,minimum size=8mm] at (-4.20,1.1) {0}; \node[world,minimum size=8mm] at (-3.42,1.1) {1}; \node[world,minimum size=8mm] at (-2.64,1.1) {0}; \node[world,minimum size=8mm] at (-1.86,1.1) {0}; \node[world,minimum size=8mm] at (-1.08,1.1) {1}; \node[world,minimum size=8mm] at (-0.30,1.1) {1}; \node[world,minimum size=8mm] at (0.48,1.1) {0}; \node[world,minimum size=8mm] at (1.26,1.1) {1}; \node[world,minimum size=8mm] at (2.04,1.1) {$\cdots$}; \draw[very thick,logic] (-3.95,0.35) rectangle (-2.45,1.85); \draw[very thick,logic] (-1.62,0.35) rectangle (-0.1,1.85); \node[tinylabel] at (-3.2,0.05) {$p_1,p_2$を見る}; \node[tinylabel] at (-0.85,0.05) {$p_4,p_5$を見る}; \node[spacebox] (twon) at (0,-1.15) {$2^{\mathbb{N}}$}; \node[logicbox] (finite) at (-4.0,-1.15) {有限個の条件}; \node[bridgebox] (cyl) at (4.0,-1.15) {clopen cylinder}; \draw[arrow] (finite) -- (twon); \draw[arrow] (twon) -- (cyl); \end{tikzpicture} \end{center} \onemessage{問題提起: 無限人のパズルに対応する図形は何か} \end{frame} % 12 \begin{frame}{Stone双対} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=2.8cm] (b) at (-4.0,0.8) {$b\in B$}; \node[bridgebox,minimum width=3.3cm] (open) at (0,0.8) {$\widehat b=\{x\mid x(b)=1\}$}; \node[spacebox,minimum width=3.0cm] (stone) at (4.1,0.8) {$\Stone(B)$}; \draw[arrow] (b) -- (open); \draw[arrow] (open) -- (stone); \begin{scope}[yshift=-1.55cm] \fill[spaceLight] (0,0) ellipse (2.1 and 0.85); \fill[bridgeLight] (-0.55,0.02) ellipse (0.95 and 0.55); \draw[very thick,spacec] (0,0) ellipse (2.1 and 0.85); \draw[very thick,bridge] (-0.55,0.02) ellipse (0.95 and 0.55); \node[tinylabel] at (1.1,0.35) {Stone空間}; \node at (-0.55,0.02) {$\widehat b$}; \end{scope} \node[font=\Large\bfseries\color{ink}] at (0,-3.0) {$B\cong\Clop(\Stone(B))$}; \end{tikzpicture} \end{center} \onemessage{無限Bool代数に対応する空間は「位相空間」で作れる} \end{frame} \section{Topos} % 13 \begin{frame}{まだ不満がある} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=4.0cm,minimum height=1.4cm] at (-3.4,0.8) {論理の不満\\{\small 量化子がない}}; \node[spacebox,minimum width=4.0cm,minimum height=1.4cm] at (3.4,0.8) {幾何の不満\\{\small 空間がバラバラ}}; \node[bridgebox,minimum width=3.2cm] at (0,-1.25) {Stone双対}; \draw[arrow] (-2.25,0.1) -- (-0.85,-0.85); \draw[arrow] (2.25,0.1) -- (0.85,-0.85); \node[font=\Large\color{logic}] at (-3.4,-2.3) {$\exists,\ \forall$}; \node[font=\Large\color{spacec}] at (3.4,-2.3) {境界・連続性}; \end{tikzpicture} \end{center} \onemessage{Stone双対は,論理からも幾何からも不満} \end{frame} % 14 \begin{frame}{境界では,排中律が揺れる} \begin{center} \begin{tikzpicture}[scale=1.0] \draw[->,very thick,ink] (-4.8,0) -- (4.8,0) node[right] {$\mathbb{R}$}; \draw[very thick,spacec] (0.15,0) -- (4.2,0); \draw[very thick,spacec] (-4.2,0) -- (-0.15,0); \fill[paper,draw=danger,very thick] (0,0) circle (4pt); \node[font=\large\color{logic}] at (2.2,0.55) {$U$}; \node[font=\large\color{logic}] at (-2.3,0.55) {$\neg U$}; \node[dangerbox] at (0,-1.45) {$U\lor\neg U=\mathbb{R}\setminus\{0\}$}; \end{tikzpicture} \end{center} \onemessage{Stone双対は,論理からも幾何からも不満} \end{frame} % 15 \begin{frame}{不満を,互いに解く} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=3.8cm] (l) at (-4.0,1.05) {量化子がほしい}; \node[spacebox,minimum width=3.8cm] (s) at (4.0,1.05) {空間を広げたい}; \node[spacebox,minimum width=3.8cm] (sheaf) at (-4.0,-1.05) {sheaf}; \node[logicbox,minimum width=3.8cm] (int) at (4.0,-1.05) {直観主義論理}; \draw[arrow] (l) -- node[right,tinylabel]{幾何の回答} (sheaf); \draw[arrow] (s) -- node[left,tinylabel]{論理の回答} (int); \node[bridgebox,minimum width=2.8cm,minimum height=1.15cm] at (0,0) {Topos}; \draw[arrow] (sheaf) -- (-1.35,-0.35); \draw[arrow] (int) -- (1.35,-0.35); \end{tikzpicture} \end{center} \onemessage{不満を,互いに解決する} \end{frame} % 16 \begin{frame}{Toposの真理値} \begin{center} \begin{tikzpicture}[scale=1.0] \node (A) at (-2.6,1.3) {$A$}; \node (one) at (2.0,1.3) {$1$}; \node (X) at (-2.6,-1.0) {$X$}; \node (Om) at (2.0,-1.0) {$\Omega$}; \draw[>->,very thick,spacec] (A) -- (X); \draw[linearrow] (A) -- (one); \draw[linearrow] (one) -- node[right] {$\true$} (Om); \draw[linearrow] (X) -- node[below] {$\chi_A$} (Om); \draw[draw=line,rounded corners=2pt] (-3.25,-1.55) rectangle (2.65,1.8); \node[spacebox] at (-5.1,0.1) {$A\hookrightarrow X$}; \node[logicbox] at (5.0,0.1) {$\chi_A:X\to\Omega$}; \node[font=\Large\bfseries\color{ink}] at (0,-2.65) {$\Sub_{\mathcal E}(X)\cong\mathcal E(X,\Omega)$}; \end{tikzpicture} \end{center} \onemessage{Toposは,その両方を実現したもの} \end{frame} % 17 \begin{frame}{量化子は射影} \begin{center} \begin{tikzpicture}[scale=.86,transform shape] \draw[->,very thick,ink] (-3.8,-1.65) -- (3.8,-1.65) node[right] {$X$}; \draw[->,very thick,ink] (-3.35,-1.95) -- (-3.35,2.0) node[above] {$Y$}; \fill[spaceLight] (-0.25,0.25) ellipse (1.85 and .9); \draw[very thick,spacec] (-0.25,0.25) ellipse (1.85 and .9); \draw[dashed,very thick,bridge] (-2.1,-1.65) -- (1.6,-1.65); \draw[dashed,bridge] (-2.1,-1.65) -- (-2.1,-0.1); \draw[dashed,bridge] (1.6,-1.65) -- (1.6,-0.1); \node[spacebox] at (-0.25,1.75) {$R\subset X\times Y$}; \node[logicbox] at (-0.25,-2.55) {$\exists y\,R(x,y)$}; \node[font=\Large\bfseries\color{ink}] at (4.1,0.2) {$\exists_\pi\dashv\pi^\ast\dashv\forall_\pi$}; \end{tikzpicture} \end{center} \onemessage{sheafを考えることで,一階述語論理を扱える} \end{frame} % 18 \begin{frame}{理論が空間になる} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=3.2cm] (T) at (-4.2,0.8) {理論 $T$}; \node[bridgebox,minimum width=3.2cm] (ET) at (0,0.8) {$\mathcal{E}_T$}; \node[spacebox,minimum width=3.2cm] (models) at (4.2,0.8) {モデルたち}; \draw[arrow] (T) -- node[above,tinylabel]{classify} (ET); \draw[arrow] (ET) -- node[above,tinylabel]{points} (models); \node[world] (mone) at (-1.15,-1.35) {$M_1$}; \node[world] (mtwo) at (0,-1.65) {$M_2$}; \node[world] (mthree) at (1.15,-1.35) {$M_3$}; \draw[linearrow] (mone) -- (ET); \draw[linearrow] (mtwo) -- (ET); \draw[linearrow] (mthree) -- (ET); \node[tinylabel] at (0,-2.3) {点 = 集合値モデル}; \end{tikzpicture} \end{center} \onemessage{sheafを考えることで,一階述語論理を扱える} \end{frame} % 19 \begin{frame}{Locale: 開集合から空間へ} \begin{center} \begin{tikzpicture}[scale=1.0] \node[logicbox,minimum width=3.2cm] (hey) at (-4.3,0.9) {Heyting代数}; \node[spacebox,minimum width=3.2cm] (loc) at (0,0.9) {Locale}; \node[bridgebox,minimum width=3.2cm] (ltop) at (4.3,0.9) {Localic topos}; \draw[arrow] (hey) -- (loc); \draw[arrow] (loc) -- (ltop); \node[logicbox,minimum width=3.6cm] at (-2.3,-1.5) {命題的\\geometric theory}; \node[bridgebox,minimum width=3.6cm] at (2.3,-1.5) {開集合の\\論理}; \draw[<->,very thick,bridge] (-0.35,-1.5) -- (0.35,-1.5); \end{tikzpicture} \end{center} \onemessage{直観主義論理を使うと,広い意味の空間を論理として実現できる} \end{frame} % 20 \begin{frame}{Toposは奇跡なのか} \begin{center} \begin{tikzpicture}[scale=.88,transform shape] \draw[fill=white,draw=line,very thick,rounded corners=3pt] (-5.2,-2.35) rectangle (5.2,2.25); \draw[spacec!35,very thick] (-5.0,-0.7) .. controls (-3.2,1.8) and (-1.2,-1.8) .. (0.8,1.6) .. controls (2.2,2.6) and (3.7,-0.7) .. (5.0,0.9); \draw[logic!35,very thick] (-4.7,1.45) .. controls (-2.2,0.3) and (-0.8,1.2) .. (1.2,-0.5) .. controls (2.8,-1.8) and (3.8,1.3) .. (4.8,-1.1); \fill[spaceLight,opacity=.75] (-1.25,0.05) ellipse (2.1 and 1.15); \fill[logicLight,opacity=.75] (1.25,0.05) ellipse (2.1 and 1.15); \begin{scope} \clip (-1.25,0.05) ellipse (2.1 and 1.15); \fill[bridgeLight,opacity=.95] (1.25,0.05) ellipse (2.1 and 1.15); \end{scope} \draw[very thick,spacec] (-1.25,0.05) ellipse (2.1 and 1.15); \draw[very thick,logic] (1.25,0.05) ellipse (2.1 and 1.15); \node[font=\large\bfseries\color{spacec}] at (-2.0,1.55) {空間的条件}; \node[font=\large\bfseries\color{logic}] at (2.0,1.55) {論理的条件}; \node[font=\Large\bfseries\color{bridge}] at (0,0.05) {$\land$}; \node[bridgebox] at (0,-1.75) {行動できる場所}; \end{tikzpicture} \end{center} \onemessage{論理は,空間を切り分けて行動する能力から生まれたのではないか} \end{frame} \end{document}