\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{K}_M$}
\newcommand\NKM{$N_{\mathcal{K}M}$}

\newcommand\RM{$_{RM}$}
\newcommand\SM{$_{SM}$}
\newcommand\NM{$_{NM}$}
\newcommand\EM{$_{EM}$}
\newcommand\W{$_{W}$}
\newcommand\E{$_{E}$}
\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_{NM}}}
\newcommand\pextNM{\ensuremath{\pext_{NM}}}
\newcommand\unitNM{\ensuremath{\unit_{NM}}}
\newcommand\mapNM{\ensuremath{\map_{NM}}}
\newcommand\joinNM{\ensuremath{\join_{NM}}}
\newcommand\oNM{\ensuremath{\,\odot_{NM}\,}}

\newcommand\extRM{$\ext_{RM}$}
\newcommand\unitRM{$\unit_{RM}$}
\newcommand\oRM{$\odot_{RM}$}

\newcommand\extSM{\ensuremath{\ext_{SM}}}
\newcommand\unitSM{\ensuremath{\unit_{SM}}}
\newcommand\oSM{\ensuremath{\,\odot_{SM}\,}}

\newcommand\oEM{$\odot_{EM}$}

\comment{
\newcommand\mapext{\textit{map-ext}}
\newcommand\joinext{\textit{join-ext}}
\newcommand\bindext{\textit{bind-ext}}
\newcommand\pextext{\textit{pext-ext}}
\newcommand\extjm{\textit{ext-jm}}
\newcommand\extass{\textit{ext-assoc}}
\newcommand\extfun{\textit{ext-funct}}
\newcommand\extcong{\textit{ext-inj}}
\newcommand\extlu{\textit{ext-L-unit}}
\newcommand\extru{\textit{ext-R-unit}}
\newcommand\pextfun{\textit{pext-funct}}
\newcommand\pextcong{\textit{pext-inj}}
\newcommand\pextlu{\textit{pext-L-unit}}
\newcommand\pextru{\textit{pext-R-unit}}
\newcommand\kass{\textit{Kl-assoc}}
\newcommand\klid{\textit{Kl-L-id}}
\newcommand\krid{\textit{Kl-R-id}}
\newcommand\omext{\textit{\om -ext}}
\newcommand\ompext{\textit{\om -pext}}
\newcommand\extom{\textit{ext-\om}}
\newcommand\pextom{\textit{pext-\om}}
\newcommand\hext{\textit{-ext}}
\newcommand\exth{\textit{ext-}}
\newcommand\omoass{\textit{\om -\oo -assoc}}
\newcommand\omoIass{\textit{\om -\oo -id-assoc}}
\newcommand\oNMoMouass{\textit{\oNM -\oM -u-assoc}}
\newcommand\exto{\textit{ext-o}}
\newcommand\extojoin{\textit{ext-o-join}}
\newcommand\unitcomp{\textit{unit-comp}}
\newcommand\extdmap{\textit{ext-dmap}}
\newcommand\extcomp{\textit{ext-comp}}
\newcommand\mapcomp{\textit{map-comp}}
}
% 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}}
\newcommand\pextOk{\textit{pext-Ok}}
\newcommand\pextErr{\textit{pext-Err}}

\newcommand\lhs{\textit{lhs}}
\newcommand\rhs{\textit{rhs}}

\newcommand\C{\textit{C}}
\newcommand\curry{\textit{curry}}
\newcommand\unc{\textit{unc}}
\newcommand\ap{\textit{ap2}}
\newcommand\ape{$\textit{ap}_e$}
\newcommand\State{\textsf{State}}
\newcommand\Ans{\textsf{Ans}}
\newcommand\Env{\textsf{Env}}
\newcommand\Monoid{\textsf{Monoid}}

