← rota-baxter-winning-games
DiffCatRIMS__DiffCat.tex
\documentclass[12pt,portrait,aspectratio=169]{beamer}
\usepackage[T1]{fontenc}
% \usepackage[utf8]{inputenc}
\usepackage{tikz}
\usepackage{tikz-cd}
\usepackage{amsmath,amssymb,mathtools}
\usepackage{pifont}
\usepackage{xcolor}
\usepackage[style=authoryear,maxnames=3]{biblatex}
\addbibresource{Horabiblio.bib}
\usetikzlibrary{calc,positioning,arrows.meta,fit,decorations.pathreplacing,backgrounds,shapes.geometric}
\usetikzlibrary{decorations.pathmorphing,arrows.meta}
% ---- macros adapted from the provided tex sources ----
\newtheorem{proposition}{Proposition}
\definecolor{dcol}{RGB}{50,140,90}
\definecolor{icol}{RGB}{200,105,40}
\newcommand{\dq}[1]{``#1"}
\newcommand{\demph}[1]{\textbf{\textit{#1}}}
\newcommand{\memo}[1]{{\color{red} #1}}
% \newcommand{\invmemo}[1]{{\color{blue} #1}}
\newcommand{\invmemo}[1]{}
\newcommand{\C}{\mathcal{C}}
\newcommand{\D}{\mathcal{D}}
\newcommand{\E}{\mathcal{E}}
\newcommand{\F}{\mathcal{F}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\X}{\mathbb{X}}
\newcommand{\Y}{\mathbb{Y}}
\newcommand{\W}{\mathbb{W}}
\newcommand{\gS}{\mathbb{S}}
\newcommand{\Set}{\mathbf{Set}}
\newcommand{\Gs}{\mathbf{Game}}
\newcommand{\Gsp}{\mathbf{Game}_{*}}
\newcommand{\Pf}{\mathcal{P}_{\mathrm{fin}}}
\newcommand{\Pow}{\mathcal{P}}
\newcommand{\Hf}{\mathbb{H}}
\newcommand{\oc}{\mathsf{Outcome}}
% \newcommand{\G}{\mathsf{Grundy}}
\newcommand{\G}[2]{\mathcal{G}_{#1}(#2)}
\newcommand{\Gfunc}[1]{\mathcal{G}_{#1}}
\newcommand{\BirthDay}{\mathsf{BirthDay}}
\newcommand{\mex}{\icol{\mathsf{mex}}}
\newcommand{\xem}{\mathsf{xem}}
\newcommand{\hylo}{\mathsf{hylo}}
\newcommand{\np}{\mathsf{np}}
\newcommand{\thetaf}{\theta}
\newcommand{\Fam}{\mathsf{Fam}}
% \newcommand{\dd}{\partial}
% \newcommand{\Int}{\intop}
\newcommand{\emptygame}{\mathsf{1}}
\newcommand{\nimsum}{\oplus}
\newcommand{\cmark}{\ding{51}}
\newcommand{\xmark}{\ding{55}}
\newcommand{\Alg}[1]{\mathrm{Alg}_{#1}}
\newcommand{\Coalg}[1]{\mathrm{Coalg}_{#1}}
\newcommand{\PfAlg}{\Alg{\Pf}}
\newcommand{\PfCoalg}{\Coalg{\Pf}}
\newcommand{\m}{\mathrm{mex}}
\renewcommand{\O}[2]{\mathcal{O}_{#1}(#2)}
\newcommand{\B}[2]{\mathcal{B}_{#1}(#2)}
\newcommand{\M}[2]{\mathcal{B}_{#1,#2}}
\renewcommand{\H}[3]{\mathcal{H}_{#1,#2,#3}}
\newcommand{\rel}{\mathrel{\dcol{\to}}}
\newcommand{\relob}{{\rel}}
\newcommand{\red}{\mathrm{red}}
\newcommand{\cp}{\ast}
\newcommand{\acc}{\rightsquigarrow}
\newcommand{\str}{\theta}
\newcommand{\Image}{\mathrm{Im}}
\newcommand{\HF}{\mathbb{HF}}
\newcommand{\Nim}[1]{\mathrm{Nim}_{#1}}
\newcommand{\Her}{\mathbb{H}}
\newcommand{\epi}{twoheadrightarrow}
\newcommand{\mono}{rightarrowtail}
\newcommand{\h}{\mathrm{h}}
\newcommand{\A}{\mathbb{A}}
\newcommand{\dop}{{\color{dcol}\partial}}
\newcommand{\iop}{{\color{icol}\int}}
\newcommand{\Int}{\iop}
\newcommand{\dd}{\dop}
\newcommand{\dcol}[1]{{\color{dcol}#1}}
\newcommand{\icol}[1]{{\color{icol}#1}}
\newcommand{\ConAdd}{\otimes}
\newcommand{\ADJ}[4]
{
\begin{tikzcd}[ampersand replacement = \&, column sep = small]
{#1}
\ar[rr, shift right=1.3ex, "{#2}"']
\&\perp\&
{#3}
\ar[ll, shift right=1.3ex,"{#4}"']
\end{tikzcd}
}
\newcommand{\grundypanel}[4]{
\begin{scope}[xshift=#1cm, yshift=#2cm]
\def\stage{#3}
% --- Nodes (same geometry as before) ---
% Bottom (terminals) — filled black if computed at this stage, else light
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $0$\fi}] (#4Z1) at (-2,-7.2) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $0$\fi}] (#4Z2) at ( 0,-7.2) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $0$\fi}] (#4Z3) at ( 2,-7.2) {};
% Level 1 — black if stage>1
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $1$\fi}] (#4Y1) at (-2,-5.8) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $1$\fi}] (#4Y2) at ( 0,-5.8) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $1$\fi}] (#4Y3) at ( 2,-5.8) {};
% Level 2 — black if stage>2
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $0$\fi}] (#4X1) at (-2,-4.4) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $2$\fi}] (#4X2) at ( 0,-4.4) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $0$\fi}] (#4X3) at ( 2,-4.4) {};
% Level 3 — W1 and W3 appear at stage>3; W2 appears already at stage>2 with g=1
\node[circle, inner sep=3pt,
fill={\ifnum\stage>3 black\else black!20\fi},
label=left:{\ifnum\stage>3 $1$\fi}] (#4W1) at (-2,-3.0) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $2$\fi}] (#4W3) at ( 0,-3.0) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>3 black\else black!20\fi},
label=right:{\ifnum\stage>3 $1$\fi}] (#4W2) at ( 2,-3.0) {};
% Level 4 (tops) — black if stage>4
\node[circle, inner sep=3pt,
fill={\ifnum\stage>4 black\else black!20\fi},
label=left:{\ifnum\stage>4 $0$\fi}] (#4V1) at (-1,-1.6) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>4 black\else black!20\fi},
label=left:{\ifnum\stage>4 $3$\fi}] (#4V2) at ( 1,-1.6) {};
% --- Edges (same for all stages), drawn in light gray ---
% Level 1 -> terminals
\draw[edge, {\ifnum\stage>1 black\else black!20\fi}] (#4Y1) -- (#4Z1);
\draw[edge, {\ifnum\stage>1 black\else black!20\fi}] (#4Y2) -- (#4Z2); \draw[edge, {\ifnum\stage>1 black\else black!20\fi}] (#4Y2) -- (#4Z3);
\draw[edge, {\ifnum\stage>1 black\else black!20\fi}] (#4Y3) -- (#4Z3);
% Level 2 -> Level 1 / terminals
\draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4X1) -- (#4Y1); \draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4X1) -- (#4Y2);
\draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4X2) -- (#4Y2); \draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4X2) -- (#4Z1);
\draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4X3) -- (#4Y3);
% Level 3 -> Level 2 / Level 1 / terminals
\draw[edge, {\ifnum\stage>3 black\else black!20\fi}] (#4W1) -- (#4X1); \draw[edge, {\ifnum\stage>3 black\else black!20\fi}] (#4W1) -- (#4X2);
\draw[edge, {\ifnum\stage>3 black\else black!20\fi}] (#4W2) -- (#4X2); \draw[edge, {\ifnum\stage>3 black\else black!20\fi}] (#4W2) -- (#4X3);
\draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4W3) -- (#4Y1); \draw[edge, {\ifnum\stage>2 black\else black!20\fi}] (#4W3) -- (#4Z3);
% Level 4 -> Level 3 / Level 2
\draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V1) -- (#4W1); \draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V1) -- (#4W2); \draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V1) -- (#4W3);
\draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V2) -- (#4W2); \draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V2) -- (#4X2); \draw[edge, {\ifnum\stage>4 black\else black!20\fi}] (#4V2) -- (#4X3);
% Stage label
% \node at (0,-8.6) {\small Step~#3};
\end{scope}%
}
\newcommand{\slantedgrid}[5]{%
\def\dx{0.8} % step in x for X-direction
\def\dy{-0.8} % step in y for X-direction
\def\ex{-0.8} % step in x for Y-direction
\def\ey{-0.8} % step in y for Y-direction
% nodes
\foreach \i in {0,...,#1}{%
\foreach \j in {0,...,#2}{%
\coordinate (#5-\i-\j) at (#3+\i*\dx+\j*\ex, #4+\i*\dy+\j*\ey);
\node[circle, fill=black, inner sep=1pt] at (#5-\i-\j) {};
}%
}%
% right-down arrows (only if cols>=1)
\ifnum#1>0
\pgfmathtruncatemacro{\imax}{#1-1}%
\foreach \i in {0,...,\imax}{%
\foreach \j in {0,...,#2}{%
\draw[->] (#5-\i-\j) -- (#5-\the\numexpr\i+1\relax-\j);
}%
}%
\fi
% left-down arrows (only if rows>=1)
\ifnum#2>0
\pgfmathtruncatemacro{\jmax}{#2-1}%
\foreach \i in {0,...,#1}{%
\foreach \j in {0,...,\jmax}{%
\draw[->] (#5-\i-\j) -- (#5-\i-\the\numexpr\j+1\relax);
}%
}%
\fi
}
\DeclarePairedDelimiter{\gen}{\langle}{\rangle}
% ---- beamer style from uploaded template ----
\usetheme{Darmstadt}
\usecolortheme{seahorse}
\setbeamertemplate{navigation symbols}{}
\setbeamertemplate{items}[default]
\setbeamertemplate{theorems}[default]
\setbeamertemplate{blocks}[rounded][shadow=false]
\setbeamertemplate{footline}[frame number]
\AtBeginSection[]
{
\begin{frame}
\frametitle{Table of Contents}
\tableofcontents[currentsection]
\end{frame}
}
% ---- colors ----
\definecolor{myblue}{RGB}{48,73,180}
\definecolor{mygreen}{RGB}{40,135,65}
\definecolor{myred}{RGB}{200,70,62}
\definecolor{myorange}{RGB}{224,146,40}
\definecolor{mypurple}{RGB}{134,88,190}
\definecolor{myteal}{RGB}{30,140,150}
\definecolor{mycream}{RGB}{250,247,238}
\definecolor{mylightblue}{RGB}{228,236,251}
\definecolor{mylightgreen}{RGB}{231,246,233}
\definecolor{mylightred}{RGB}{252,236,235}
% ---- tikz styles ----
\tikzset{
>={Latex[length=2.3mm]},
gameedge/.style={->, draw=black!70, line width=0.65pt},
heapedge/.style={->, draw=black!65, line width=0.85pt},
nimheap/.style={draw=black!70, line width=0.9pt, fill=white},
panel/.style={rounded corners=5pt, draw=black!10, fill=mycream, inner sep=5pt},
nstate/.style={circle, fill=myred, inner sep=2.2pt},
pstate/.style={circle, fill=myblue, inner sep=2.2pt},
neutralstate/.style={circle, fill=black, inner sep=2.0pt},
familybox/.style={rounded corners=4pt, draw=myblue!50!black, fill=mylightblue, line width=0.8pt},
formulaarrow/.style={->, draw=myblue!85!black, line width=1pt},
goodring/.style={draw=myblue, line width=1.5pt, rounded corners=3pt},
badring/.style={draw=myred, line width=1.5pt, rounded corners=3pt},
note/.style={rounded corners=4pt, fill=yellow!12, draw=yellow!30!black, inner sep=4pt}
}
% ---- title ----
\title[A \icol{Rota-Baxter equation} for winning \dcol{games}]{\texorpdfstring{A \icol{Rota-Baxter equation} for winning \dcol{games}}{A Rota-Baxter equation for winning games}}
\subtitle{\texorpdfstring{\dcol{Games} as recursive \dcol{coalgebras} and \icol{integrate} invariants}{Invariants}}
\author{Ryuya Hora}
\institute{Assistant professor at ZEN university}
\date{April 6, 2026}
\begin{document}
\begin{frame}
\centering
% \vspace{0.8em}
\begin{beamercolorbox}[
wd=\textwidth,
sep=0.75em,
center,
rounded=true,
shadow=true
]{title}
{\usebeamerfont{title}\inserttitle\par}
\vspace{0.45em}
{\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}
\end{beamercolorbox}
% \vspace{1.2em}
% \begin{minipage}{0.72\linewidth}
\begin{columns}
\column{0.7\textwidth}
\centering
{\usebeamerfont{author}\insertauthor}
\vspace{0.5em}
{\usebeamerfont{institute}\insertinstitute}
\vspace{0.5em}
{\usebeamerfont{date}\insertdate}
\begin{center}
\tiny \dcol{Differentiation} in category theory and program semantics
\end{center}
\begin{center}
\small Partially based on a joint work with Ryo Suzuki.
\end{center}
\column{0.3\textwidth}
\centering
\includegraphics[width=0.95\linewidth]{QrcodeForNotes.png}
{Slides}
\end{columns}
\end{frame}
\begin{frame}{The {\tiny (too simplified)} \dcol{dicho}\icol{tomy} in this talk}
\invmemo{relocate}
\begin{figure}
\centering
\begin{tikzpicture}[x=1cm,y=1cm,>=Latex,thick, scale=1]
% divider
% \draw[gray!35] (0,-2.4) -- (0,2.4);
% top labels
\node[text=dcol, font=\bfseries] at (-2,2.05) {Differentiation};
\node[text=gray, font=\bfseries] at ( 0,2.05) {vs};
\node[text=icol, font=\bfseries] at ( 2,2.05) {Integration};
% left side words
\node[text=dcol, font=\bfseries, align=center] (L1) at (-4.9, 1.20) {\dcol{Play forward}};
\node[text=dcol, font=\bfseries, align=center] (L2) at (-4.9, 0.00) {Coalgebra};
\node[text=dcol, font=\bfseries, align=center] (L3) at (-4.9, -1.20) {Leibniz rule};
\node[font=\bfseries, align=center] (L4) at (-4.9, -2.20) {$\dd(xy)=(\dd x)y + x(\dd y)$};
% right side words
\node[text=icol, font=\bfseries, align=center] (R1) at ( 4.9, 1.20) {\icol{Analyze backward}};
\node[text=icol, font=\bfseries, align=center] (R2) at ( 4.9, 0.00) {Algebra};
\node[text=icol, font=\bfseries, align=center] (R3) at ( 4.9, -1.20) {\icol{Rota-Baxter}\\equation};
\node[font=\bfseries, align=center] (R4) at ( 4.9, -2.2) {$\left(\Int f\right)\left(\Int g\right )= \Int\left(\left(\Int f\right )g + f\left(\Int g\right )\right )$};
% % horizontal comparison arrows
% \draw[<->, draw=gray!55, line width=0.8pt] (L1.east) -- (R1.west);
% \draw[<->, draw=gray!55, line width=0.8pt] (L2.east) -- (R2.west);
% \draw[<->, draw=gray!55, line width=0.8pt] (L3.east) -- (R3.west);
% horizontal comparison arrows
\draw[draw=gray!55, line width=0.8pt, dashed] (L1.east) -- (R1.west);
\draw[draw=gray!55, line width=0.8pt, dashed] (L2.east) -- (R2.west);
\draw[draw=gray!55, line width=0.8pt, dashed] (L3.east) -- (R3.west);
% % central vertical arrows
% \draw[->, line width=1.5pt, draw=dcol] (-2,1.55) -- (-2,-1.95);
% \draw[->, line width=1.5pt, draw=icol] ( 2,-1.95) -- ( 2,1.55);
\draw[-{Latex[length=4mm,width=7mm]}, line width=4pt, draw=dcol] (-2,1.6) -- (-2,-1.95);
\draw[-{Latex[length=4mm,width=7mm]}, line width=4pt, draw=icol] ( 2,-1.95) -- ( 2,1.6);
\end{tikzpicture}
\end{figure}
\end{frame}
% \section{Front matter}
\begin{frame}{Motivation (1/2): Game-theoretic context}
\Large
% {\Huge \textbf{Ryuya Hora}}\\
% I've been interested in toposes, \textbf{\dcol{games}, and \dcol{coalgebras}}.\\
We want to win games! {\small (c.f. cyclic nim)}\\
$\to$ study interactions between \textbf{algebras} and \textbf{recursions}\\
{\footnotesize cf. \cite{joyal1977remarques, honsell2009conway}}
% Sorry for my poor English!
\begin{figure}
\centering
\includegraphics[width=1.1 \textwidth]{images/Recursion.png}
% \caption{I tried to check the spelling}
\end{figure}
\end{frame}
\begin{frame}{Motivation (2/2): Today: Providing a phenomenon}
\small
I am a beginner in this field.
{\large This talk aims to provide a \dcol{game}-theoretic \textbf{phenomenon}}:
\begin{block}{Summary of this talk}
The winning strategy of Nim comes from a "\dcol{differential} structure" on a category of "\dcol{games}"( $\coloneqq$ recursive \dcol{coalgebras}) and an "\icol{integral} structure" on $\Pf(\N)$.
\end{block}
% , which lies between \dcol{differentiation}, categories, and \dcol{coalgebras}.
{
\setbeamercolor{block title}{bg=gray!25,fg=black}
\setbeamercolor{block body}{bg=gray!12,fg=black}
\begin{block}{I would appreciate any idea to make it categorical (and related works)!}
\begin{itemize}
\item \dcol{Differential} category theory and its variants
% \invmemo{cite Lemay}
\item \dcol{Differential} $2$-rig of species
\item Algebraic or categorical aspects of \icol{Rota-Baxter equation}
\item Game semantics of (linear or some other) logic.
\end{itemize}
\end{block}
}
\end{frame}
\begin{frame}{Table of Contents}
\tableofcontents
\end{frame}
% \section{Introduction: \icol{Integration} in \dcol{Game} theory: Generalized Bouton theorem}
\section[\dcol{Play forward} $\leftrightarrow$ \icol{Analyze backward}]{\texorpdfstring{\dcol{Play} vs \icol{Analysis}: \icol{Rota-Baxter equation} in \dcol{Game} theory}{Play vs Analysis}!}
\subsection{Preliminaries: Winning Nim!}
\begin{frame}{Nim (1/2): Rule of $n$-heap nim}
\begin{itemize}
% \item In the \dcol{game} \textbf{$n$-heap nim}, first,
\item $n$ heaps of stones are given.
\item Two players \dcol{take turns} choosing one heap and removing at least one stone from that heap.
\item The player who is unable to take a stone loses.
\end{itemize}
\begin{figure}
\centering
\begin{tikzpicture}[x=0.8cm,y=0.8cm, line cap=round, line join=round, >=Latex]
% dotted grid
\foreach \x in {0.2,0.7,...,16.0}{
\foreach \y in {0.2,0.7,...,4.8}{
\fill[gray!35] (\x,\y) circle (0.012);
}
}
% left state
\draw[line width=0.45mm] (1.0,3.9) circle (0.58);
\fill (1.0,3.9) circle (0.09);
\draw[line width=0.45mm] (1.0,2.45) circle (0.58);
\fill (1.0,2.60) circle (0.09);
\fill (0.72,2.25) circle (0.09);
\fill (1.28,2.15) circle (0.09);
\draw[line width=0.45mm] (1.0,0.95) circle (0.58);
\fill (1.04,1.23) circle (0.09);
\fill (0.66,0.95) circle (0.09);
\fill (1.32,0.84) circle (0.09);
\fill (1.02,0.57) circle (0.09);
% first arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (2.90,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (1.72,2.35) -- (3.38,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (3.38,2.35) -- (3.82,2.35);
% second state
\draw[line width=0.45mm] (4.45,3.9) circle (0.58);
\fill (4.45,3.88) circle (0.09);
\draw[line width=0.45mm] (4.45,2.45) circle (0.58);
\fill (4.48,2.58) circle (0.09);
\fill (4.20,2.24) circle (0.09);
\fill (4.74,2.14) circle (0.09);
\draw[line width=0.45mm] (4.45,0.95) circle (0.58);
\fill (4.52,1.20) circle (0.09);
\fill (4.16,0.92) circle (0.09);
% second arrow and label B
\node[text=blue!75!black, font=\fontsize{12}{12}\selectfont] at (6.20,2.84) {$B$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (5.17,2.35) -- (6.72,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (6.72,2.35) -- (7.16,2.35);
% third state
\draw[line width=0.45mm] (7.80,3.9) circle (0.58);
\fill (7.80,3.88) circle (0.09);
\draw[line width=0.45mm] (7.80,2.45) circle (0.58);
\fill (7.55,2.24) circle (0.09);
\draw[line width=0.45mm] (7.80,0.95) circle (0.58);
\fill (7.88,1.20) circle (0.09);
\fill (7.52,0.92) circle (0.09);
% third arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (9.45,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (8.52,2.35) -- (9.98,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (9.98,2.35) -- (10.42,2.35);
% ellipsis
\fill (11.14,2.40) circle (0.028);
\fill (11.40,2.40) circle (0.028);
\fill (11.66,2.40) circle (0.028);
% fourth arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (13.75,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (13.00,2.35) -- (14.52,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (14.52,2.35) -- (14.96,2.35);
% terminal state
\draw[line width=0.45mm] (15.55,3.9) circle (0.58);
\draw[line width=0.45mm] (15.55,2.45) circle (0.58);
\draw[line width=0.45mm] (15.55,0.95) circle (0.58);
\node[font=\bfseries\small, text=red!85!black] at (15.55,0.08) {A wins!};
\end{tikzpicture}
\end{figure}
% \begin{figure}
% \centering
% \includegraphics[width=1\linewidth]{images/NimSample.jpeg}
% \end{figure}
% \memo{write}
\end{frame}
\begin{frame}{Nim(2/2): Bouton's winning strategy}
\begin{columns}
\begin{column}{0.36\textwidth}
\begin{definition}[Nim-sum]
The \demph{Nim-sum} $\nimsum$ is a binary operation on $\N$ defined by the\dq{bit-wise xor.}
\end{definition}
\begin{figure}
\centering
\begin{tikzpicture}[thick,>=Latex,scale=1]
\node at (-1.0,0.65) {$3=$};
\node at (-0.2,0.65) {$0$};
\node at ( 0.4,0.65) {$1$};
\node at ( 1.0,0.65) {$1$};
\node at (-1.25,0.0) {$\nimsum$};
\node at (-1.0,-0.65) {$5=$};
\node at (-0.2,-0.65) {$1$};
\node at ( 0.4,-0.65) {$0$};
\node at ( 1.0,-0.65) {$1$};
\draw[very thick] (-1.2,-1.05) -- (1.3,-1.05);
\node at (-1.0,-1.7) {$6=$};
\node at (-0.2,-1.7) {$1$};
\node at ( 0.4,-1.7) {$1$};
\node at ( 1.0,-1.7) {$0$};
\end{tikzpicture}
\end{figure}
\end{column}
\begin{column}{0.65\textwidth}
\begin{figure}
\centering
\begin{tikzpicture}[x=0.8cm,y=0.8cm, line cap=round, line join=round, >=Latex, scale=0.7]
% dotted grid
\foreach \x in {0.2,0.7,...,16.0}{
\foreach \y in {0.2,0.7,...,4.8}{
\fill[gray!35] (\x,\y) circle (0.012);
}
}
% left state
\draw[line width=0.45mm] (1.0,3.9) circle (0.58);
\fill (1.0,3.9) circle (0.09);
\draw[line width=0.45mm] (1.0,2.45) circle (0.58);
\fill (1.0,2.60) circle (0.09);
\fill (0.72,2.25) circle (0.09);
\fill (1.28,2.15) circle (0.09);
\draw[line width=0.45mm] (1.0,0.95) circle (0.58);
\fill (1.04,1.23) circle (0.09);
\fill (0.66,0.95) circle (0.09);
\fill (1.32,0.84) circle (0.09);
\fill (1.02,0.57) circle (0.09);
% first arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (2.90,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (1.72,2.35) -- (3.38,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (3.38,2.35) -- (3.82,2.35);
% second state
\draw[line width=0.45mm] (4.45,3.9) circle (0.58);
\fill (4.45,3.88) circle (0.09);
\draw[line width=0.45mm] (4.45,2.45) circle (0.58);
\fill (4.48,2.58) circle (0.09);
\fill (4.20,2.24) circle (0.09);
\fill (4.74,2.14) circle (0.09);
\draw[line width=0.45mm] (4.45,0.95) circle (0.58);
\fill (4.52,1.20) circle (0.09);
\fill (4.16,0.92) circle (0.09);
% second arrow and label B
\node[text=blue!75!black, font=\fontsize{12}{12}\selectfont] at (6.20,2.84) {$B$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (5.17,2.35) -- (6.72,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (6.72,2.35) -- (7.16,2.35);
% third state
\draw[line width=0.45mm] (7.80,3.9) circle (0.58);
\fill (7.80,3.88) circle (0.09);
\draw[line width=0.45mm] (7.80,2.45) circle (0.58);
\fill (7.55,2.24) circle (0.09);
\draw[line width=0.45mm] (7.80,0.95) circle (0.58);
\fill (7.88,1.20) circle (0.09);
\fill (7.52,0.92) circle (0.09);
% third arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (9.45,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (8.52,2.35) -- (9.98,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (9.98,2.35) -- (10.42,2.35);
% ellipsis
\fill (11.14,2.40) circle (0.028);
\fill (11.40,2.40) circle (0.028);
\fill (11.66,2.40) circle (0.028);
% fourth arrow and label A
\node[text=red!85!black, font=\fontsize{12}{12}\selectfont] at (13.75,2.82) {$A$};
\draw[line width=0.10mm, decorate, decoration={snake, amplitude=0.3mm, segment length=4mm}] (13.00,2.35) -- (14.52,2.35);
\draw[line width=0.55mm, -{Latex[length=4.0mm,width=1.5mm]}] (14.52,2.35) -- (14.96,2.35);
% terminal state
\draw[line width=0.45mm] (15.55,3.9) circle (0.58);
\draw[line width=0.45mm] (15.55,2.45) circle (0.58);
\draw[line width=0.45mm] (15.55,0.95) circle (0.58);
\node[font=\bfseries\small, text=blue!75!black] at (1.00,0.08) {losing};
\node[font=\bfseries\small, text=red!85!black] at (4.45,0.08) {winning};
\node[font=\bfseries\small, text=blue!75!black] at (7.80,0.08) {losing};
\node[font=\bfseries\small, text=red!85!black] at (15.55,0.08) {winning};
\end{tikzpicture}
\end{figure}
\begin{theorem}[{[Bouton, 1901]}]
A state of $n$-heap nim $(a_1, \dots ,a_n)$ is a winning state {\footnotesize($=$ "P-state")}
% \footnote{It is usually called a P-state.}
if and only if $a_1 \nimsum \dots \nimsum a_n =0$.
\end{theorem}
\hspace{100pt}... where is \dcol{differentiation}?
\begin{figure}
\end{figure}
\end{column}
\end{columns}
\end{frame}
% \section{Category of \dcol{games}}
\subsection{\texorpdfstring{Impartial \dcol{Games}}{Impartial Games}}
\begin{frame}{Definitions (1/3): (Today's) \dcol{Games}}
\begin{columns}
\begin{column}{0.8 \textwidth}
\begin{definition}[(Impartial) Game]
A \demph{\dcol{game}} $\X=(X,\relob)$ is a pair of a (possibly infinite) set $X$ and a binary relation $\relob \subset X \times X$ that satisfies the following two finiteness conditions
\begin{enumerate}
\item (finite options) $\# \{x' \in X \mid x\rel x'\}$ is finite, for any $x \in X$.
\item (finite time) There is no infinite path. $x_0 \rel x_1 \rel x_2 \rel \dots$
\end{enumerate}
\end{definition}
{
\setbeamercolor{block title}{bg=gray!25,fg=black}
\setbeamercolor{block body}{bg=gray!12,fg=black}
\begin{block}{Example (Nim)}
The $n$-heap nim $\Nim{n} = (\N^{n},\relob)$ is
defined by
\[
(a_i)_{1\leq i \leq n} \rel (b_i)_{1\leq i \leq n} \iff
\exists i (a_i> b_i \land a_j = b_j (j\neq i))
\]
\end{block}}
\end{column}
\begin{column}{0.2 \textwidth}
\begin{figure}
\centering
\begin{tikzpicture}[>=Latex, thick, scale=0.75]
\tikzset{edge/.style={->, draw=dcol}}
\node[circle, inner sep=3pt, fill=black] (A1Z1) at (-2,-7.2) {};
\node[circle, inner sep=3pt, fill=black] (A1Z2) at ( 0,-7.2) {};
\node[circle, inner sep=3pt, fill=black] (A1Z3) at ( 2,-7.2) {};
\node[circle, inner sep=3pt, fill=black] (A1Y1) at (-2,-5.8) {};
\node[circle, inner sep=3pt, fill=black] (A1Y2) at ( 0,-5.8) {};
\node[circle, inner sep=3pt, fill=black] (A1Y3) at ( 2,-5.8) {};
\node[circle, inner sep=3pt, fill=black] (A1X1) at (-2,-4.4) {};
\node[circle, inner sep=3pt, fill=black] (A1X2) at ( 0,-4.4) {};
\node[circle, inner sep=3pt, fill=black] (A1X3) at ( 2,-4.4) {};
\node[circle, inner sep=3pt, fill=black] (A1W1) at (-2,-3.0) {};
\node[circle, inner sep=3pt, fill=black] (A1W3) at ( 0,-3.0) {};
\node[circle, inner sep=3pt, fill=black] (A1W2) at ( 2,-3.0) {};
\node[circle, inner sep=3pt, fill=black] (A1V1) at (-1,-1.6) {};
\node[circle, inner sep=3pt, fill=black] (A1V2) at ( 1,-1.6) {};
\draw[edge] (A1Y1) -- (A1Z1);
\draw[edge] (A1Y2) -- (A1Z2);
\draw[edge] (A1Y2) -- (A1Z3);
\draw[edge] (A1Y3) -- (A1Z3);
\draw[edge] (A1X1) -- (A1Y1);
\draw[edge] (A1X1) -- (A1Y2);
\draw[edge] (A1X2) -- (A1Y2);
\draw[edge] (A1X2) -- (A1Z1);
\draw[edge] (A1X3) -- (A1Y3);
\draw[edge] (A1W1) -- (A1X1);
\draw[edge] (A1W1) -- (A1X2);
\draw[edge] (A1W2) -- (A1X2);
\draw[edge] (A1W2) -- (A1X3);
\draw[edge] (A1W3) -- (A1Y1);
\draw[edge] (A1W3) -- (A1Z3);
\draw[edge] (A1V1) -- (A1W1);
\draw[edge] (A1V1) -- (A1W2);
\draw[edge] (A1V1) -- (A1W3);
\draw[edge] (A1V2) -- (A1W2);
\draw[edge] (A1V2) -- (A1X2);
\draw[edge] (A1V2) -- (A1X3);
\end{tikzpicture}
\end{figure}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Definitions (2/3):Box product of \dcol{games} (+ \dcol{Leibniz rule})}
% \memo{Maybe we'd better call it "box product"}
\begin{definition}[Box product {\tiny a.k.a. Conway "addition"}]
The \demph{box product} of two \dcol{games}, $\X= (X,\relob_X)$ and $ \Y =(Y,\relob_Y)$, is the \dcol{game} $\X\ConAdd\Y = (X\times Y, \relob_{\ConAdd})$, where
\begin{itemize}
\item the underlying set is the cartesian product $X\times Y$, and
\item the relation $\rel_{\ConAdd}$ is defined by
$
(x,y)\rel_{\ConAdd} (x', y') \iff (x\rel_{X} x' \land y= y') \lor (x= x' \land y\rel_{Y} y')
$
\end{itemize}
\end{definition}
\begin{columns}
\begin{column}{0.65\textwidth}
\begin{figure}[ht]
\centering
\begin{tikzpicture}[>=Latex, scale=0.4]
% ===== Left: 3×1 as a 2×0 slanted grid =====
\slantedgrid{3}{0}{-8}{0}{X}
\node at (-7,-4) {$\X$};
% Tensor symbol
\node at (-4.3,-1) {$\ConAdd$};
% ===== Middle: 1×4 as a 0×3 slanted grid =====
\slantedgrid{0}{4}{0}{0.5}{Y}
\node at (-1.5,-4) {$\Y$};
% Equality sign
\node at (2.3,-1) {$=$};
% ===== Right: 3×4 as a 2×3 slanted grid (shifted right to avoid overlap) =====
\slantedgrid{3}{4}{7}{2}{Z}
\node at (6.5,-4) {$\X \ConAdd \Y$};
\end{tikzpicture}
\caption{An example of box product.}
\label{fig:ConwayAddition}
\end{figure}
\end{column}
\begin{column}{0.4\textwidth}
{}
\vspace{-30pt}
% $\uparrow$
$\dd(xy) = \dd(x) y + x\dd(y)$ ...?
% \vspace{-20pt}
{
\setbeamercolor{block title}{bg=gray!25,fg=black}
\setbeamercolor{block body}{bg=gray!12,fg=black}
\begin{block}{Example (Nim)}
$\Nim{n} \cong \underbrace{\Nim{1} \otimes \dots \otimes \Nim{1}}_{n}$
\end{block}
}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Definitions (3/3):\icol{Mex}, Grundy number and \icol{Rota-Baxter eq.}}
% \begin{frame}{\texorpdfstring{$\iop$}{int}: \icol{Mex} and Grundy number}
\begin{columns}
\begin{column}{0.8 \textwidth}
\begin{definition}[mex]
The \icol{\demph{mex}} of a finite subset $S \subset \N$ is $\min{(\N\setminus S)}$.
\end{definition}
% \begin{example}
% $\mex{\{0,1,2,4,6}\} = 3$, \hspace{10pt}
% $\mex{\emptyset}
% % =\min{\N \setminus \emptyset}
% =0$
% \end{example}
\begin{definition}[Grundy number]
For a \dcol{game} $\X=(X,\relob)$, the \demph{Grundy number} $\Gfunc{\X}\colon X \to \N$ is recursively defined by
\[
\G{\X}{x}\coloneqq \mex{\{\G{\X}{x'}\mid x\rel x'\}}
\]
\end{definition}
\begin{proposition}[Grundy number is enough to win!]
For a \dcol{game} $\X=(X,\relob)$, a state $x$ is a winning state if and only if $\G{\X}{x}=0$.
\end{proposition}
\end{column}
\begin{column}{0.25 \textwidth}
\tikzset{
edge/.style={line width=0.8pt}
}
\begin{figure}
\centering
\tikzset{
edge/.style={->, draw=dcol, line width=1pt}
}
\begin{tikzpicture}[>=Latex, thick, scale=0.7]
\def\stage{5}
% --- Nodes (same geometry as before) ---
% Bottom (terminals) — filled black if computed at this stage, else light
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $\icol{0}$\fi}] (AZ1) at (-2,-7.2) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $\icol{0}$\fi}] (AZ2) at ( 0,-7.2) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>0 black\else black!20\fi},
label=left:{\ifnum\stage>0 $\icol{0}$\fi}] (AZ3) at ( 2,-7.2) {};
% Level 1 — black if stage>1
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $\icol{1}$\fi}] (AY1) at (-2,-5.8) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $\icol{1}$\fi}] (AY2) at ( 0,-5.8) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>1 black\else black!20\fi},
label=left:{\ifnum\stage>1 $\icol{1}$\fi}] (AY3) at ( 2,-5.8) {};
% Level 2 — black if stage>2
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $\icol{0}$\fi}] (AX1) at (-2,-4.4) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $\icol{2}$\fi}] (AX2) at ( 0,-4.4) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $\icol{0}$\fi}] (AX3) at ( 2,-4.4) {};
% Level 3 — W1 and W3 appear at stage>3; W2 appears already at stage>2 with g=1
\node[circle, inner sep=3pt,
fill={\ifnum\stage>3 black\else black!20\fi},
label=left:{\ifnum\stage>3 $\icol{1}$\fi}] (AW1) at (-2,-3.0) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>2 black\else black!20\fi},
label=left:{\ifnum\stage>2 $\icol{2}$\fi}] (AW3) at ( 0,-3.0) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>3 black\else black!20\fi},
label=right:{\ifnum\stage>3 $\icol{1}$\fi}] (AW2) at ( 2,-3.0) {};
% Level 4 (tops) — black if stage>4
\node[circle, inner sep=3pt,
fill={\ifnum\stage>4 black\else black!20\fi},
label=left:{\ifnum\stage>4 $\icol{0}$\fi}] (AV1) at (-1,-1.6) {};
\node[circle, inner sep=3pt,
fill={\ifnum\stage>4 black\else black!20\fi},
label=left:{\ifnum\stage>4 $\icol{3}$\fi}] (AV2) at ( 1,-1.6) {};
% --- Edges (same for all stages), drawn in light gray ---
% Level 1 -> terminals
\draw[edge, {\ifnum\stage>1 dcol\else black!20\fi}] (AY1) -- (AZ1);
\draw[edge, {\ifnum\stage>1 dcol\else black!20\fi}] (AY2) -- (AZ2); \draw[edge, {\ifnum\stage>1 dcol\else black!20\fi}] (AY2) -- (AZ3);
\draw[edge, {\ifnum\stage>1 dcol\else black!20\fi}] (AY3) -- (AZ3);
% Level 2 -> Level 1 / terminals
\draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AX1) -- (AY1); \draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AX1) -- (AY2);
\draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AX2) -- (AY2); \draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AX2) -- (AZ1);
\draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AX3) -- (AY3);
% Level 3 -> Level 2 / Level 1 / terminals
\draw[edge, {\ifnum\stage>3 dcol\else black!20\fi}] (AW1) -- (AX1); \draw[edge, {\ifnum\stage>3 dcol\else black!20\fi}] (AW1) -- (AX2);
\draw[edge, {\ifnum\stage>3 dcol\else black!20\fi}] (AW2) -- (AX2); \draw[edge, {\ifnum\stage>3 dcol\else black!20\fi}] (AW2) -- (AX3);
\draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AW3) -- (AY1); \draw[edge, {\ifnum\stage>2 dcol\else black!20\fi}] (AW3) -- (AZ3);
% Level 4 -> Level 3 / Level 2
\draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV1) -- (AW1); \draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV1) -- (AW2); \draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV1) -- (AW3);
\draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV2) -- (AW2); \draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV2) -- (AX2); \draw[edge, {\ifnum\stage>4 dcol\else black!20\fi}] (AV2) -- (AX3);
\end{tikzpicture}
\end{figure}
\begin{center}
\icol{Analyze backwards!}
\end{center}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{\icol{Rota-Baxter equation} in Bouton's theorem!}
\begin{theorem}[{Generalized Bouton's theorem [see CGT, Siegel]}]
For two \dcol{games} $\X =(X, \relob_X)$ and $\Y=(Y, \relob_Y)$,
we have
\[
\G{\X\ConAdd\Y}{x,y} = \G{\X}{x} \nimsum \G{\Y}{y}.
\]
\end{theorem}
\begin{proof}[Sketch of the proof]
The only non-trivial part is that, for any $S,T \in \Pf(\N)$,
$
\mex(S)\nimsum \mex(T)
= \mex\bigl((\mex(S)\nimsum T)\cup (S\nimsum \mex(T))\bigr)
$
\end{proof}
This is a \icol{\textbf{Rota-Baxter equation}}!
\[
% \color{icol}
\left(\Int f\right)\left(\Int g\right )= \Int\left(\left(\Int f\right )g + f\left(\Int g\right )\right ).
\]
% \begin{example}[Original Bouton's theorem]
% \begin{enumerate}
% \item $\G{\Nim{1}}{a}=a$
% \item $\G{\Nim{n}}{(a_i)_{1\leq i \leq n}} = \G{\Nim{1}}{a_1}\nimsum \dots \nimsum \G{\Nim{1}}{a_n} = a_1 \nimsum \dots \nimsum a_n$
% \item $(a_i)_{1\leq i \leq n}$ is a winning state $\iff$ $ a_1 \nimsum \dots \nimsum a_n=0$
% \end{enumerate}
% \end{example}
\end{frame}
\section[\dcol{Coalgebras} $\leftrightarrow$ \icol{Algebras}]{\texorpdfstring{\dcol{Coalgebra} vs \icol{Algebra}}{Coalgebra vs Algebra}: \texorpdfstring{Category of \dcol{games} as recursive \dcol{coalgebras}}{category of games}}
\subsection{Preliminaries: \texorpdfstring{\dcol{Coalgebra}-\icol{Algebra}}{Coalgebra-Algebra} morphisms}
\begin{frame}{Coalgebras (1/2): \dcol{Coalgebras} and \icol{Algebras} of an endofunctor}
\begin{definition}[$T$-Algebras and $T$-Coalgebras]
For a category $\C$ and an endofunctor $T\colon \C \to \C$,
\begin{itemize}
\item A \demph{$T$-\dcol{coalgebra}} is a pair $(X,\theta)$ of an object $X$ of $\C$ and a morphism $\dcol{\theta\colon X \rel TX}$.
\item A \demph{$T$-\icol{algebra}} is a pair $(A,\alpha)$ of an object $A$ of $\C$ and a morphism $\icol{\alpha\colon TA \mathrel{\icol{\to}} A}$.
\end{itemize}
\end{definition}
Today, we consider
\begin{itemize}
\item $\C=\Set$ and
\item $T= \Pf\colon \Set \to \Set$: The covariant finite powerset functor.
% ($\Pf(X)\coloneqq \{S\subset X\mid \# S <\infty\}$)
\end{itemize}
\end{frame}
\begin{frame}{Coalgebras (2/2): Recursive \dcol{coalgebra}}
\begin{definition}[{Coalgebra}-{algebra} morphism]
% For a category $\C$ and an endofunctor $T$,
A \demph{\dcol{coalgebra}-\icol{algebra} morphism} from a $T$-\dcol{coalgebra $(X,\theta)$} to a $T$-\icol{algebra $(A, \alpha)$} is a morphism $f\colon \dcol{X} \to \icol{A}$ in $\C$ such that the following diagram commutes.
\[
\begin{tikzcd}[ampersand replacement=\&]
\dcol{X} \ar[r,"f"]\ar[d,"\dcol{\theta}", dcol]\&\icol{A}\\
\dcol{TX} \ar[r,"Tf"]\&\icol{TA}\ar[u,"\alpha"', icol]
\end{tikzcd}
\]
\end{definition}
\begin{definition}[Recursive coalgebra]
A $T$-\dcol{coalgebra} $(X,\theta)$ is \demph{recursive} if for any $T$-\icol{algebra} $(A,\alpha)$, there uniquely exists a \dcol{coalgebra}-\icol{algebra} morphism $\dcol{(X,\theta)}\to \icol{(A, \alpha)}$.
\end{definition}
\end{frame}
\subsection{\texorpdfstring{\dcol{Games} as recursive \dcol{coalgebras}}{Games as recursive coalgebras}}
\begin{frame}{\dcol{Games} = Recursive $\Pf$-\dcol{coalgebras}}
\begin{definition}[{Games} as Recursive coalgebras]
(Today,) we definie a category of \dcol{games} $\Gs$ to be the category of recursive $\Pf$-\dcol{coalgebras}.
\end{definition}
\begin{description}
\item[Obs 1.] Defining $\dcol{\theta}(x)\coloneqq\{x'\mid x\rel x'\}$, recursive $\Pf$-coalgebras are exactly the "games" defined in Section 1.
\item[Obs 2.] $
\begin{tikzcd}[ampersand replacement = \&]
% [column sep=50pt, row sep=30pt]
\dcol{X} \ar[r,"\Gfunc{\X}"] \ar[d,"\str"', color=dcol]
\& \icol{\N}\\
\dcol{\Pf(X)} \ar[r,"\Pf(\Gfunc{\X})"'] \& \icol{\Pf(\N)} \ar[u,"\icol{\mex}"', color=icol]
\end{tikzcd}
\iff \G{\X}{x}\coloneqq \mex{\{\G{\X}{x'}\mid x'\in \dcol{\theta}(x)\}}$
\item[Obs 3.] Many other "game values" are induced by $\Pf$-\icol{algebras}. (cf. \cite{bavsic2024categories})
\end{description}
\end{frame}
\begin{frame}{Digression: Categorical structure of \dcol{games}}
The category of \dcol{games} $\Gs$ has good categorical properties, including:
\begin{proposition}[$\Gs$ is a l.f.p. s.m.c.c. w/ a subobject classifier]
\begin{itemize}
\item The category of \dcol{games} $\Gs$ is \textbf{locally finitely presentable}.
\begin{itemize}
\item In particular, it is complete and cocomplete.
\end{itemize}
\item The box product $\ConAdd$ is a symmetric monoidal closed structure on $\Gs$.
\item $\Gs$ has a subobject classifier.
\end{itemize}
\end{proposition}
{
\setbeamercolor{block title}{bg=gray!25,fg=black}
\setbeamercolor{block body}{bg=gray!12,fg=black}
\begin{block}{My context: [\cite{hora2025games}]}
I have given a way to calculate "\dcol{game} \icol{value}" induced by any $\Pf$-\icol{algebra} and any monoidal structure on $\Gs$ (which makes the forgetful functor lax monoidal). \\
{\small This talk is about "question 5.1" on the preprint.}
\end{block}
}
\end{frame}
\section[\dcol{Differentiation} $\leftrightarrow$ \icol{Integration}]{\texorpdfstring{\dcol{Differentiation} vs \icol{Integration}: \dcol{Differential} 2-rig of pointed \dcol{game} families}{Differentiation vs Integration}}
\subsection{\texorpdfstring{\dcol{Differential} $2$-rig of \dcol{games}}{Differential 2rig of games}}
\begin{frame}{\dcol{Diff.} of \dcol{games} (1/2): \dcol{Differential operator} on $\Fam(\Gsp)$}
\begin{definition}[Pointed games]
A \demph{pointed \dcol{game}} is a pair $(\X,x)$ of a game $\X=(X, \rel)$ and a state $x\in X$.
\end{definition}
We write
\begin{itemize}
\item $\Gsp$ for the category of pointed \dcol{games}, and
\item $\Fam(\Gsp)$ for the category of finite family of pointed games\footnote{That is the free finite-coproduct cocompletion of $\Gsp$.}.
\end{itemize}
\begin{definition}[Differential operator]
We define \dcol{\demph{differential operator}} $\dd \colon \Fam(\Gsp) \to \Fam(\Gsp)$ by (linearly extending)
\[
\dd(\X,x)\coloneqq \{(\X,x')\}_{x\rel x'}.
\]
\end{definition}
\end{frame}
\begin{frame}{\dcol{Diff.} of \dcol{games} (2/2): \dcol{Leibniz rule} for Box product}
\begin{columns}
\begin{column}{0.55\textwidth}
$\Fam(\Gsp)$ has
\begin{description}
\item[addition] $+$ = \text{formal sum of families}
\item[multiplication] $\otimes$ = \text{(indexwise) box product}.
\end{description}
\end{column}
\begin{column}{0.5\textwidth}
\begin{center}
\begin{tikzpicture}[>=Latex, thick, scale=0.7]
\node[draw, rounded corners, minimum width=2.6cm, minimum height=0.9cm] (xy) at (0,0) {$\X\otimes \Y$};
\node[draw, rounded corners, minimum width=2.6cm, minimum height=0.9cm] (dx) at (-3,-2.5) {$(\dd \X)\otimes \Y$};
\node[draw, rounded corners, minimum width=2.6cm, minimum height=0.9cm] (dy) at (3,-2.5) {$\X\otimes(\dd \Y)$};
\node (aa) at (0,-2.5) {$+$};
\draw[->, color=dcol] (xy) -- (dx) node[midway, left] {move in $\X$};
\draw[->, color=dcol] (xy) -- (dy) node[midway,right] {move in $\Y$};
\end{tikzpicture}
\end{center}
\end{column}
\end{columns}
\begin{proposition}[$\Fam(\Gsp)$ forms a {differential} $2$-rig!]
The \dcol{differential operator} $\dop\colon \Fam(\Gsp)\to \Fam(\Gsp)$ satisfying the categorified \dcol{Leibniz rule}:
\[
\dd(\mathcal{X}\otimes \mathcal{Y})\cong (\dd \mathcal{X})\otimes \mathcal{Y}+\mathcal{X}\otimes (\dd \mathcal{Y}).
\]
\end{proposition}
(c.f. \cite{joyal1981theorie}, \cite{loregian2021differential})
% This is the \dcol{differential} structure \parencite{loregian2021differential} that I want to emphasize today. (c.f. \parencite{joyal1981theorie})
\end{frame}
\subsection{Invariants in \texorpdfstring{\icol{Rota-Baxter}}{Rota-Baxter} rig}
\begin{frame}{\icol{Integral} rigs (1/2): Definition and "Generating function"}
\begin{definition}[Integral rig]
An \demph{\icol{integral} rig} is a rig equipped with a unary operator $\Int$ with (or \icol{Rota--Baxter} rig of weight $0$).
\[
1 = \Int 0,
\qquad
\left(\Int f\right)\left(\Int g\right)= \Int\left(\left(\Int f\right)g + f\left(\Int g\right)\right).
\]
\end{definition}
\begin{definition}["Generating function"]
Let \icol{$A$} be an \icol{integral} rig. For a pointed \dcol{game} $(X,x)$, we recursively define $F_{(X,x)} \in \icol{A}$ by
\[
F_{(X,x)}\coloneqq \Int\!\left(\sum_{x\dcol{\rel_{\theta}}{x'}} F_{(X,x')}\right) \in \icol{A}
\]
% For a finite family, define $F$ by finite sums.
\end{definition}
\end{frame}
% \begin{frame}{\icol{Integral} rigs}
% A \demph{\dcol{differential} rig} is a rig $(A,0,1,+,\times,\dd)$ satisfying
% \[
% \dd(a+b)=\dd a+\dd b,
% \qquad
% \dd(ab)= (\dd a)b + a(\dd b).
% \]
% \vspace{0.5em}
% An \demph{\icol{integral} rig} {\tiny (or \icol{Rota--Baxter} rig of weight $0$)} has an operator $\Int$ with
% \[
% 1 = \Int 0,
% \qquad
% \left(\Int f\right)\left(\Int g\right)= \Int\left(\left(\Int f\right)g + f\left(\Int g\right)\right).
% \]
% \vspace{0.5em}
% A \demph{\dcol{calc}\icol{ulus} rig} has both $\dd$ and $\Int$ above, satisfying the fundamental theorem
% \[
% \dd\Int f = f.
% \]
% \end{frame}
\begin{frame}{\icol{Integral} rigs (2/2): $F$ respects the rig structure.}
The following "theorems" are easily proven.
\begin{theorem}[$F$ is a rig homomorphism]
This assignment preserves the rig operations:
\[
F_{\mathcal{X}\sqcup\mathcal{Y}} = F_{\mathcal{X}} + F_{\mathcal{Y}},
\qquad
F_{\mathcal{X}\otimes\mathcal{Y}} = F_{\mathcal{X}}\times F_{\mathcal{Y}}.
\]
\end{theorem}
\begin{theorem}
In addition, if an integral rig $A$ is equipped with an unary operator $\dd\colon A \to A$ satisfying $\dd \Int x=x$, we also have
\[
\dd F_{\mathcal{X}}=F_{\dd \mathcal{X}}
\]
\end{theorem}
\end{frame}
\subsection{Examples \texorpdfstring{$\ni$}{ni} Winning nim!}
\begin{frame}{Examples(1/3): $C^\infty$-functions $\R \to \R$}
\begin{columns}
\begin{column}{0.4\textwidth}
\begin{example}[$C^\infty(\R)$]
\begin{center}
\renewcommand{\arraystretch}{1.4}
\begin{tabular}{c|c}
$0$ & const. at $0$ \\
\hline
$1$ & const. at $1$ \\
\hline
$+$ & $+$ \\
\hline
$\times$ & $\times$ \\
\hline
$\dd$ & $\dd f = \frac{df}{dx}$\\
\hline
$\Int$ & $\left(\Int f\right)(x) \coloneqq\int_{0}^x f(t) dt$
\end{tabular}
\end{center}
\end{example}
\end{column}
\begin{column}{0.6\textwidth}
% \memo{font of game X or mathbb X check}
The "generating function" is the actual \\
\textbf{generating function of the $n$-turn plays}.
\[
F_{(\X,x)}(z) = \sum_{n=0}^{\infty} \#\{x\to x_1 \to \dots \to x_n\}\frac{z^n}{n!}
\]
(This reminds me of Joyal's species...)
{
\setbeamercolor{block title}{bg=gray!25,fg=black}
\setbeamercolor{block body}{bg=gray!12,fg=black}
\begin{block}{Naive question}
Is there a nice (possibly operadic) way to \textbf{compose games}? {\tiny (told in a personal comversation with Jeremie.)}
\end{block}
}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Examples(2/3): Nim-sum and $\mex$ form an \icol{integral} rig}
The \icol{Rota-Baxter} equation
\[
\mex(S)\nimsum\mex(T)
=\mex\bigl((\mex(S)\nimsum T)\cup (S\nimsum \mex(T))\bigr)
\]
is a part of the following structure.
\begin{columns}
\begin{column}{0.5\textwidth}
\begin{center}
\renewcommand{\arraystretch}{1.1}
\begin{example}[$\Pf(\N)$]
\begin{tabular}{c|c}
$0$ & $\emptyset$ \\
\hline
$1$ & $\{0\}$ \\
\hline
$+$ & $\cup$ \\
\hline
$\times$ & {$S\times T \coloneqq \{s\nimsum t\mid s\in S,\ t\in T\}$}\\
\hline
$\dd$ & {\color{gray}does not exist}\\
\hline
$\Int$ & $\Int(S)\coloneqq \{\mex(S)\}$
\end{tabular}
\end{example}
\end{center}
\end{column}
\begin{column}{0.5\textwidth}
\begin{theorem}[$\mathrm{mex}$ as {integration}]
This makes $\Pf(\N)$ into an \icol{integral} rig.
\end{theorem}
{\small
(By post-composing $\Pf(\N) \to \mathbb{B}\coloneqq\{\bot, \top\}$)} we have
\begin{block}{Corollary}
Bouton's winning strategy of Nim!
\end{block}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Examples(3/3): Hereditarily finite sets}
Let $V_\omega$ be the set of all \demph{hereditarily finite sets}.
\begin{columns}
\begin{column}{0.3\textwidth}
\begin{example}[$\Pf(V_\omega)$]
\begin{center}
\renewcommand{\arraystretch}{1.4}
\begin{tabular}{c|c}
$0$ & $\emptyset$ \\
\hline
$1$ & $\{\emptyset\}$ \\
\hline
$+$ & $\cup$ \\
\hline
$\times$ & {\color{gray} complicated} \\
\hline
$\dd$ & $\dd A = \bigcup_{B\in A} B$\\
\hline
$\Int$ & $\Int A = \{A\}$
\end{tabular}
\end{center}
\end{example}
\end{column}
\begin{column}{0.7\textwidth}
\begin{block}{Remark(Why $\Pf(V_\omega)$? 1)}
\vspace{-13pt}
\begin{align*}
V_\omega &= \text{the initial $\Pf$-\icol{algebra}} \\
&= \text{the terminal recursive $\Pf$-\dcol{coalgebra}}
\end{align*}
% $V_\omega$ is
% \[
% \text{the initial $\Pf$-\icol{algebra}} =
% \text{the terminal recursive $\Pf$-\dcol{coalgebra}}
% \]
\end{block}
\begin{block}{Remark(Why $\Pf(V_\omega)$? 2)}
For any monoid $M$, there is a bij. corresp. between
\begin{itemize}
\item \dcol{differential operator} $\dd$ on the rig $\Pf(M)$, and
\item $\Gs$-enrichment(*) of $M$
\end{itemize}
\end{block}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{This talk in One slide}
% \begin{enumerate}
% \item {\dcol{Games} are recursive \dcol{coalgebras}.}
% Grundy numbers are the unique \dcol{colagebra}-\icol{algebra} morphism.
% \item \textbf{Box product satisfies the \dcol{Leibniz rule}.}
% % On pointed \dcol{games} / families, the option operator satisfies a Leibniz rule.
% \item \textbf{Nim-sum satisfies the \icol{Rota--Baxter} equation.}
% The classical identity for $\mex$ is a \icol{twis}\dcol{ted} reflection image of that \dcol{Leibniz rule}.
% \item The classical winning strategy of Nim follows from those \dcol{calc}\icol{ulus} structures.
% \end{enumerate}
\begin{enumerate}
\item {Box product satisfies the \dcol{Leibniz rule}, and}
% On pointed \dcol{games} / families, the option operator satisfies a Leibniz rule.
Nim-sum satisfies the \icol{Rota--Baxter equation}.
% The classical identity for $\mex$ is a \icol{twis}\dcol{ted} reflection image of that \dcol{Leibniz rule}.
\item \dcol{Games} as recursive \dcol{coalgebras}, and Grundy numbers\footnote{or any other "recursively defined" value.} as the unique \dcol{colagebra}-\icol{algebra} morphism.
% Grundy numbers are the unique \dcol{colagebra}-\icol{algebra} morphism.
\item \textbf{The classical winning strategy of Nim follows from those \dcol{calc}\icol{ulus} structures.}
\end{enumerate}
\vspace{0.8em}
\begin{alertblock}{Questions}
Connections with \dcol{differential} categories or species?
\end{alertblock}
\end{frame}
\begin{frame}[shrink]{References}
\renewcommand*{\bibfont}{\small}
\printbibliography[heading=none]
\end{frame}
\end{document}
\section{Appendix}
\begin{frame}{Internal monoid \dcol{games}}
\end{frame}
\begin{frame}{Free Rota-Baxter ring consists of trees!}
\end{frame}
\begin{frame}{Rota-Baxteer property on \dcol{game} values}
\end{frame}
\begin{frame}{SMCC open problem of classification}
\end{frame}
\begin{frame}{Universality of games}
\end{frame}
\begin{frame}{Outcome: Winning/Losing state}
\begin{columns}
\begin{column}{0.75 \textwidth}
\begin{definition}[Outcome]
For a \dcol{game} $\X=(X,\to)$ and a state $x\in X$, its \demph{outcome} $\O{\X}{x}\in \{W,L\}$ is recursively defined by
\[
\O{\X}{x}\coloneqq
\begin{cases}
W & (x\rel \forall x' , \O{\X}{x'}=L)\\
L & (x\rel \exists x' , \O{\X}{x'}=W)
\end{cases}
\]
\end{definition}
% \begin{proposition}
% For a \dcol{game} $\X=(X,\to)$, a state $x$ is a winning state if and only if $\G{\X}{x}=0$.
% \end{proposition}
\end{column}
\begin{column}{0.25 \textwidth}
\begin{figure}
\centering
\includegraphics[width=1\linewidth]{images/W_L_sample.jpeg}
\end{figure}
\end{column}
\end{columns}
\end{frame}
\begin{frame}{Operadic compositionality}
\end{frame}
\end{document}