\newcommand{\mutual}{\ensuremath{{I}}} \newcommand{\entropy}{\ensuremath{{H}}} %\newtheorem{lemma}{Lemma} %\newtheorem{proposition}{Proposition} %\newtheorem{fact}{Fact} %\newtheorem{example}{Example} %\newtheorem{prop}{Proposition} %\newtheorem{theorem}{Theorem} %\newtheorem{corollary}{Corollary} %\theoremstyle{definition} %\newtheorem{definition}{Definition} %\newcommand{\citeN}{\citet} %\newcommand*{\defeq}{\stackrel{\text{def}}{=}} \newcommand*{\defeq}{\equiv} \newcommand{\var}{\mathop{\mathrm{Var}}} \newcommand{\condexp}[2]{{\mathbb{E}}[#1|#2]} \newcommand{\expt}[1]{{\mathbb{E}}[#1]} \newcommand{\norm}[1]{\lVert#1\rVert} \newcommand{\tr}[1]{#1^*} \newcommand{\ip}[2]{\langle #1, #2 \rangle} \newcommand{\mse}{\mathop{\mathrm{MSE}}} \renewcommand{\epsilon}{\varepsilon} \DeclareMathOperator{\trace}{tr} \DeclareMathOperator*{\argmax}{arg\,max} \DeclareMathOperator*{\argmin}{arg\,min} \newcommand{\reals}{\ensuremath{\mathbb{R}}} \newcommand{\naturals}{\ensuremath{\mathbb{N}}} \newcommand{\prob}{\ensuremath{\mathrm{Pr}}} \newcommand{\stratis}[1]{\textcolor{green}{Stratis: #1}} \newcommand{\thibaut}[1]{\textcolor{blue}{Thibaut: #1}} \newcommand{\T}[1]{#1^T} \newcommand{\EDP}{EDP} \newcommand{\SEDP}{EDP} \newcommand{\E}{{\tt E}} \newcommand{\id}{\mathbbm{1}} \newcommand{\junk}[1]{} \newcommand{\edp}{{\tt EDP}} \newcommand{\dom}{\mathcal{D}} \newcommand{\qedhere}{\qed} %\newcommand{\note}[1]{\textcolor{red}{#1}} \algrenewcommand\algorithmicrequire{\textbf{Input:}} \algrenewcommand\algorithmicensure{\textbf{Output:}}