\newcommand\HOLw{HOL$_\omega$}

\newcommand\oarrow{\textit{o\_arrow}}
\newcommand\comp{\textit{comp}}
\newcommand\dualcomp{\textit{dual\_comp}}
\newcommand\gfunctor{\textit{g\_functor}}

\newcommand\kl{\textit{kl}}
\newcommand\id{\textit{id}}
\newcommand\pext{\textit{pext}}
\newcommand\ext{\textit{ext}}
\newcommand\bind{\textit{bind}}
\newcommand\unit{\textit{unit}}
\newcommand\map{\textit{map}}
\newcommand\kmap{\textit{kmap}}
\newcommand\dmap{\textit{dmap}}
\newcommand\join{\textit{join}}
\newcommand\kjoin{\textit{kjoin}}
\newcommand\djoin{\textit{djoin}}
\newcommand\dunit{\textit{dunit}}
\newcommand\kjoinuj{\textit{kjoin-uj}}
\newcommand\extkmap{\textit{ext-kmap}}
\newcommand\kmappext{\textit{kmap-pext}}
\newcommand\oo{\ensuremath{\,\circ\,}}
\newcommand\om{\ensuremath{\,\odot\,}}
\newcommand\T{$\mathcal{T}$}
\newcommand\KM{$\mathcal{C}_M$}
\newcommand\NKM{$N_{\mathcal{}M}$}
\newcommand\Kleisli{\textit{Kleisli}} 
\newcommand\NM{$_{MN}$} % MN was NM
\newcommand\N{$_{N}$}
\newcommand\M{$_{M}$}
\newcommand\K{$_{K}$}

\newcommand\extM{\ensuremath{\ext_M}}
\newcommand\unitM{\ensuremath{\unit_M}}
\newcommand\mapM{\ensuremath{\map_M}}
\newcommand\joinM{\ensuremath{\join_M}}
\newcommand\oM{\ensuremath{\,\odot_M\,}}

\newcommand\extN{\ensuremath{\ext_N}}
\newcommand\unitN{\ensuremath{\unit_N}}
\newcommand\mapN{\ensuremath{\map_N}}
\newcommand\joinN{\ensuremath{\join_N}}
\newcommand\oN{\ensuremath{\,\odot_N\,}}

\newcommand\extK{$\ext_K$}
\newcommand\unitK{$\unit_K$}
\newcommand\oK{\ensuremath{\,\odot_K\,}}

\newcommand\extNM{\ensuremath{\ext_{MN}}} % MN was NM
\newcommand\pextNM{\ensuremath{\pext_{MN}}} % MN was NM
\newcommand\unitNM{\ensuremath{\unit_{MN}}} % MN was NM
\newcommand\mapNM{\ensuremath{\map_{MN}}} % MN was NM
\newcommand\joinNM{\ensuremath{\join_{MN}}} % MN was NM
\newcommand\oNM{\ensuremath{\,\odot_{MN}\,}} % MN was NM

% note J1, J2, don't work in commands 
\newcommand\Jo{\textit{J1}} 
\newcommand\Jos{\textit{J1S}}
\newcommand\Jt{\textit{J2}}
\newcommand\Jte{\textit{J2e}}
\newcommand\Jts{\textit{J2S}}
\newcommand\Pof{\textit{P1-4}}
\newcommand\Soe{\textit{S1e}}
\newcommand\prd{\textit{prod}}
\newcommand\dorp{\textit{dorp}}
\newcommand\swap{\textit{swap}}
\newcommand\acc{\textit{acc}}
\newcommand\swapkmap{\textit{swap-kmap}}
\newcommand\kmapo{\textit{kmap-o}}
\newcommand\kmapsm{\textit{kmap-sm}}
\newcommand\prdpext{\textit{prod-pext}}
\newcommand\pexto{\textit{pext-o}}
\newcommand\pextpm{\textit{pext-pm}}
