% ece729 macros
% ===============================================================
\newtheorem{thm}{Theorem}[chapter]
\newtheorem{prop}[thm]{Proposition}
\newtheorem{lemma}[thm]{Lemma}
\newtheorem{cor}[thm]{Corollary}
\newtheorem{define}[thm]{\itshape Definition}
\newtheorem{rmk}[thm]{\itshape Remark}
% ===============================================================
\newtheorem{exmpl}[thm]{\itshape Example}
\def\@xmpln{% Print a horizontal line at the end of each example
\\
\centerline{\vbox{\hrule height.075ex width.75\hsize\vskip.3ex
\hrule height.075ex width.75\hsize}}
}
\global\@namedef{endexmpl}{\@xmpln\@endtheorem}
\newtheorem{sexmpl}[thm]{\istar\bfseries\textit{Example}}
\let\endsexmpl=\endexmpl

\def\negvsp{\vspace*{-3ex}} % to put at end of examples that end in displays
% ===============================================================

\def\bdx#1{{\bf #1}\index{#1}} % Print term in \bf and add to idx file.
\def\mdx#1{{#1}\index{#1}} % Print term and add to idx file.

% \oplist is defined in mymacros2.sty
\def\optlist{\topsep=1ex\itemsep=\z@\parsep=\z@} % reduce spacing in list items

% ===============================================================
\newlength{\pri@}\setlength{\pri@}{\parindent}

\newenvironment{gthm}%
{\begin{shaded}\parindent\pri@\begin{thm}}%
{\end{thm}\end{shaded}}

\newenvironment{gcor}%
{\begin{shaded}\parindent\pri@\begin{cor}}%
{\end{cor}\end{shaded}}

\newenvironment{gprop}%
{\begin{shaded}\parindent\pri@\begin{prop}}%
{\end{prop}\end{shaded}}

\newenvironment{gdefine}%
{\begin{shaded}\parindent\pri@\begin{define}}%
{\end{define}\end{shaded}}

\newenvironment{gtext}%
{\begin{shaded}\parindent\pri@\vphantom{}}%
{\vphantom{\large q}\end{shaded}}
% ===============================================================
\newcounter{rmnum}
\newenvironment{romannum}{
\begin{list}{$(\roman{rmnum})$}
{\usecounter{rmnum}\leftmargin=2.4em\labelwidth=2em
\topsep=1ex\itemsep=\z@\parsep=\z@}
}{\end{list}}
% ===============================================================
\newcounter{notes}[chapter]
% mark note
   \def\mnote{\refstepcounter{notes}$^{\bf\arabic{notes}}$}

\newenvironment{notes}{
  \section*{\upshape Notes}\addcontentsline{toc}{section}{Notes}\markright{Notes}
  \begin{list}{\indent{\bfseries\itshape Note~\thenotes.} }{\usecounter{notes}\leftmargin=\z@\labelwidth=\z@\labelsep=\z@\listparindent=1.75em}
}{\end{list}}
% ===============================================================
\def\mincap#1{#1}
\def\ti#1{\par{\bfseries\sffamily\itshape\small \mincap{#1}.}}
% ===============================================================
\let\de=\cde
\let\phi=\varphi
\let\Lall=\forall
\def\Limp{\mathrel{\Rightarrow}} % L stands for "logical"
\def\Limpr{\mathrel{\Leftarrow}}
\def\iff{\mathrel{\Leftrightarrow}}
\let\imp=\Limp
\def\dbox#1{\fbox{\quad$\ds \vphantom{\bigg|}#1$\quad}}
\def\thefootnote{{\it\alph{footnote}}} % Use symbols instead of numbers.

\def\sY{{\sf Y}}
\def\sX{{\sf X}}
\def\sZ{{\sf Z}}
\def\sD{{\sf D}}
\def\bd{{\bf d}}
\def\sV{{\sf V}}
\def\bv{{\bf v}}
\def\sR{{\cal R}}

\def\by{{\bf y}}
\def\bY{{\bf Y}}
\def\bx{{\bf x}}
\def\bX{{\bf X}}
\def\bz{{\bf z}}
\def\bZ{{\bf Z}}
\def\bF{{\bf F}}
\def\bc{{\bf c}}
\def\T{{\sf T}}

\def\sla{\mbox{\tt a}}  % sl stands for "source lecmtter"
\def\slb{\mbox{\tt b}}
\def\slc{\mbox{\tt c}}
\def\sld{\mbox{\tt d}}
\def\sle{\mbox{\tt e}}
\def\slf{\mbox{\tt f}}
\def\slg{\mbox{\tt g}}

\def\lmax{{\ell_\mx}}

\def\Wo{W^{1/(1+\rho)}}
\def\gammapp{\gamma_p\kern-.2em'}

\def\se{{\sf C}}
\def\snr{{\scriptstyle\sf SNR}}
\def\Abmin{{A_{b,{\rm min}}}}
\def\Ab{{\cal A}_{b,{\rm min}}}
\def\Abstar{{\cal A}_{b,{\rm min}}^\ast}
\def\Abdb{{\cal A}_{b,{\rm min}}^{\rm dB}}
\def\sedb{\se^{\rm dB}}

\def\sC{{\cal C}}
\def\Crm{\sC_{\mbox{\scriptsize R-M}}}
\def\Cra{\sC_{\mbox{\scriptsize R-A}}}
\def\Cdm{\sC_{\mbox{\scriptsize D-M}}}
\def\Cda{\sC_{\mbox{\scriptsize D-A}}}

\def\terma{T_1}
\def\termb{T_2}

\def\DR{{\Delta R}}
\def\awgn{\mbox{\small\sffamily\itshape N}}
\def\awgnh{\widehat\awgn}
% \def\dH{d_H} % Hamming distance

\def\distr{{\cal D}}
\def\sR{{\cal R}}
\def\Cavg{\sC_{\rm a}}
\def\Cmax{\sC_{\rm m}}
\def\Calam{\sC_{{\rm a},\lambda}}
\def\Calamx#1{\sC_{{\rm a},#1}}
\def\Vh{{\widehat V}}
\def\Xh{{\widehat X}}
\def\Yh{{\widehat Y}}
\def\Hd{H_{\rm d}}
\def\cnp{\frac{\mathscr{N}_0}{2}} % channel noise power
\def\tcnp{{\ts \cnp}} % \textstyle \cnp
\def\sN{\mathscr{N}}
\def\ilcnp{\sN_0/2} % in-line \cnp
\def\pc{\mathscr{P}} % power constraint

\def\sS{\mathscr{S}}
\def\Xih{\widehat{\Xi}}

\def\bs{{\bf s}}
\def\bXi{\bm{\Xi}}

\def\DD{{\Delta D}}
\def\Rt{{\widetilde R}}
\def\Dmin{D_\mn}
\def\Dmax{D_\mx}
\def\dlbar{\underline{\kern.15em d}}
\def\dubar{\overline{d}}
\def\dmax{d_\mx}

\def\Ahn{{\widehat A}_n}

\def\Dstar{D_\ast}
\def\sH{{\cal H}}