
\newtheorem{lemma}{Lemma}
\newtheorem{theorem}{Theorem}
\newtheorem{proof}{Proof}
\newtheorem{defn}{Definition}
\newtheorem{algo}{Algorithm}
\newtheorem{proc}{Procedure}
\newtheorem{rem}{Remark}
\newtheorem{observation}{Observation}


% general symbols
\newcommand{\RF}{\mathbb{R}}
\newcommand{\FF}{\mathbb{F}}
\newcommand{\NN}{\mathbb{N}}
\newcommand{\ZZ}{\mathbb{Z}}
\newcommand{\nn}{\nonumber} 
\newcommand{\paren}[1]{\left( #1 \right)}
\newcommand{\sqprn}[1]{\left[ #1 \right]}
\newcommand{\tlprn}[1]{\left\{ #1 \right\}}
\newcommand{\abs}[1]{\left| #1 \right|}
\newcommand{\tr}[2]{\left<\left< #1 , #2 \right>\right>}
\newcommand{\trs}[2]{\left< #1 , #2 \right>}
\newcommand{\iprod}[2]{\left\langle #1 , #2 \right\rangle}
\newcommand{\del}{\partial}
\newcommand{\dd}[2]{\frac{d#1}{d#2}}
\newcommand{\ddel}[2]{\frac{\del#1}{\del#2}}
\newcommand{\ddell}[2]{\frac{\del^2#1}{{\del#2}^2}}
\newcommand{\ddelll}[3]{\frac{\del^2#1}{{\del#2}{\del#3}}}
\newcommand{\beq}{\begin{eqnarray*}}
\newcommand{\eeq}{\end{eqnarray*}}
\newcommand{\beqn}{\begin{eqnarray}}
\newcommand{\eeqn}{\end{eqnarray}}
\newcommand{\ben}{\begin{enumerate}}
\newcommand{\een}{\end{enumerate}}
\newcommand{\bit}{\begin{itemize}}
\newcommand{\eit}{\end{itemize}}
\newcommand{\hide}[1]{}
\newcommand{\oo}[1]{\frac{1}{#1}}
\newcommand{\eps}{\epsilon}
\newcommand{\evalat}[2]{\left.#1\right|_{#2}}
\newcommand{\ceil}[1]{\ensuremath{\left\lceil#1\right\rceil}}
\newcommand{\floor}[1]{\ensuremath{\left\lfloor#1\right\rfloor}}
\newcommand{\ontop}[2]{\overset{{\scriptsize #1}}{#2}}
\newcommand{\Perp}{\perp\!\!\!\perp}
\newcommand{\limsu}{\mathop{\overline{\mathrm{lim}}}}
\newcommand{\limin}{\mathop{\underline{\mathrm{lim}}}}
\newcommand{\argmin}{\mathop{\mathrm{argmin}}}
\newcommand{\argmax}{\mathop{\mathrm{argmax}}}
\newcommand{\map}{\mathop{\mathrm{map}}}
\newcommand{\powrs}[1]{\langle\!\langle #1 \rangle\!\rangle}
\newcommand{\polys}[1]{\langle #1 \rangle}
\newcommand{\contf}{\mathscr{C}}
%\newcommand{\trn}{^{{}^\intercal}} %operator transpose
\newcommand{\trn}{^\intercal} %operator transpose
%\newcommand{\trn}{^{{}^{\!\intercal}}} %operator transpose
\newcommand{\inv}{^{-1}} %inverse
\newcommand{\unit}{\boldsymbol{1}}
\newcommand{\zero}{\boldsymbol{0}}
\newcommand{\defeq}{\stackrel{\mathrm{def}}{=}}
\newcommand{\pleq}{~+\!=}
\newcommand{\chr}{\mathrm{\bs{1}\hspace{-3pt}I}} % characteristic function

% function names
\newcommand{\zeros}{\mathrm{zeros}}
\newcommand{\rank}{\mathrm{rank}}
\newcommand{\TR}{\mathrm{tr}}
\newcommand{\vol}{\mathrm{vol}}
\newcommand{\sgn}{\mathrm{sgn}}
\newcommand{\acos}{\mathrm{acos}}
\newcommand{\intr}{\mathrm{int}\,}
\newcommand{\extr}{\mathrm{ext}\,}
\newcommand{\dom}{\mathrm{dom}\,}
\newcommand{\conv}{\mathrm{conv}\hspace{1pt}}
\newcommand{\cone}{\mathrm{cone}\hspace{1pt}}


%probability & statistics symbols
\newcommand{\convd}{\overset{{\scriptsize d}}{\to}}
\newcommand{\convp}{\overset{{\scriptsize p}}{\to}}
\newcommand{\unif}{\mathrm{Uniform}}
\newcommand{\bern}{\mathrm{Bernoulli}}
\newcommand{\negbin}{\mathrm{NegBinom}}
\newcommand{\Binom}{\mathrm{Bin}}
\newcommand{\pois}{\mathrm{Poisson}}
%\newcommand{\ndistr}{\mathrm{Normal}}
\newcommand{\ndistr}{\mathrm{n}}
\newcommand{\Bdistr}{\mathrm{Beta}}
\newcommand{\Gdistr}{\mathrm{Gamma}}
% f(x) = \frac{1}{\beta^\alpha\Gamma(\alpha)}x^{\alpha-1}e^{-x/\beta}
\newcommand{\iGdistr}{\mathrm{InvGamma}} 
% f(x) = \frac{1}{\beta^\alpha\Gamma(\alpha)}x^{-\alpha-1}e^{-1/(\beta x)}
\newcommand{\MSE}{\mathrm{MSE}} 
\newcommand{\MAE}{\mathrm{MAE}} 
\newcommand{\ARE}{\mathrm{ARE}} 
\newcommand{\se}{\mathrm{se}} 
\newcommand{\eg}{\mathrm{e.g.}} 
\newcommand{\st}{\mathrm{s.t.}} 
\newcommand{\ie}{\mathrm{i.e.}} 
\newcommand{\calA}{\mathcal{A}}
\newcommand{\calC}{\mathcal{C}}
\newcommand{\calD}{\mathcal{D}}
\newcommand{\calE}{\mathcal{E}}
\newcommand{\calF}{\mathcal{F}}
\newcommand{\calH}{\mathcal{H}}
\newcommand{\calI}{\mathcal{I}}
\newcommand{\calK}{\mathcal{K}}
\newcommand{\calL}{\mathcal{L}}
\newcommand{\calM}{\mathcal{M}}
\newcommand{\calN}{\mathcal{N}}
\newcommand{\calP}{\mathcal{P}}
\newcommand{\calS}{\mathcal{S}}
\newcommand{\calT}{\mathcal{T}}
\newcommand{\calV}{\mathcal{V}}
\newcommand{\calX}{\mathcal{X}}
\newcommand{\calY}{\mathcal{Y}}
\newcommand{\calZ}{\mathcal{Z}}
\newcommand{\tha}{\theta}
%\newcommand{\mexp}{\mathbb{E}}
%\newcommand{\mexp}[1]{\ensuremath{\text{{\bf E}$\left[#1\right]$}}}
\newcommand{\mexp}{\text{{\bf E}}}
\newcommand{\var}{\mathrm{Var}}
\newcommand{\cov}{\mathrm{Cov}}
\newcommand{\corr}{\mathrm{Cor}}
\newcommand{\bX}{\bs{X}}
\newcommand{\bx}{\bs{x}}
\newcommand{\bY}{\bs{Y}}
\newcommand{\by}{\bs{y}}
\newcommand{\bZ}{\bs{Z}}
\newcommand{\bz}{\bs{z}}
\newcommand{\Xbar}{\overline{X}}
\newcommand{\ev}{\mathrm{Ev}} %evidence
\newcommand{\pr}{\boldsymbol{\mathrm{P}}}
%\newcommand{\prob}{\mathrm{Pr}}


% embeddings
\newcommand{\embeds}[1]{\;\lhook\joinrel\xrightarrow{#1}\;}

%misc commands
\newcommand{\ds}{\displaystyle}
\newcommand{\ts}{\textstyle}
\newcommand{\bs}{\boldsymbol}
\renewcommand{\th}{\ensuremath{^{\mathrm{th}}}~}
