\newcommand{\nop}[1]{}
\newtheorem{definition}{Definition}
\newtheorem{theorem}{Theorem}
\newtheorem{observation}{Observation}
\newtheorem{lemma}{Lemma}
\newtheorem{remark}{Remark}[section]
\newtheorem{corollary}{Corollary}[section]
\newtheorem{example}{Example}
\newtheorem{claim}{Claim}

\newtheorem*{definitionIRS}{Definition 16}

\DeclareMathOperator{\op}{op}
\DeclareMathOperator{\args}{arg}
\DeclareMathOperator{\cost}{cost}
\DeclareMathOperator{\lleft}{left}
\DeclareMathOperator{\rright}{right}
\DeclareMathOperator{\argmax}{argmax}
\DeclareMathOperator{\argmin}{argmin}

\newcommand{\Paragraph}[1]{~\vspace*{-0.8\baselineskip}\\{\bf #1}}
\newcommand\mathbftt[1]{\textnormal{\ttfamily\bfseries #1}}

\newcommand\note[1]{\marginpar{\color{red}\tiny #1}}

\def\mergeop{\square}
\def\bigmergeop{\mathop{\scalebox{1}[1]{\scalerel*{\Box}{\strut}}}}


\SetAlgoSkip{}
\SetKwProg{Def}{def}{}{}
\SetKw{Break}{break}
\SetKw{Lambda}{lambda\,}
\SetKwComment{Comment}{//}{}
\SetKwRepeat{Do}{do}{while}


\newfloat{lstfloat}{htbp}{lop}
\floatname{lstfloat}{Listing}
