\newcommand{\fns}{\footnotesize}

\newcommand{\ul} [1]{\underline{#1}}
\newcommand{\ol} [1]{\overline{#1}}
\newcommand{\Exp}[1]{ {\rm e}^{#1}}

%
% use one of the following notation conventions for
% matrices and vectors:
%
\newcommand{\Mat}[1]{{\bf {#1}}}
\renewcommand{\Vec}[1]{{\bf {#1}}}

% \def\mathlette#1#2{{\mathchoice{\mbox{#1$\displaystyle #2$}}%
%                                {\mbox{#1$\textstyle #2$}}%
%                                {\mbox{#1$\scriptstyle #2$}}%
%                                {\mbox{#1$\scriptscriptstyle #2$}}}}
% \newcommand{\Mat}[1]{\mathlette{\boldmath}{#1}}
% \newcommand{\Vec}[1]{\mathlette{\boldmath}{#1}}

\def\argmax{\mathop{\rm argmax}}

% \newcommand{\Mat}[1]{\mbox{\boldmath ${#1}$}}
% \newcommand{\Vec}[1]{\mbox{\boldmath ${#1}$}}

\newcommand{\Real}[1]{{\rm Re}\left\{ #1 \right\}}
\newcommand{\Imag}[1]{{\rm Im}\left\{ #1 \right\}}

\newcommand{\Bit}[1]{\!\!\mbox{\boldmath ${#1}$}}

\newcommand{\Cov}[1]{\Mat{C}_{\!_{\Vec{#1}\,}}}
\newcommand{\Covf}[1]{C_{\!_{\rm #1\!}}}
\newcommand{\covf}[1]{c_{\!_{\rm #1\!}}}
\newcommand{\hCov}[1]{\hat{\Mat{C}}_{\!_{\underline{\rm #1\!}}}}
\newcommand{\Vth}{\Vec{\vartheta}}

\newcommand{\dd}{ {\rm d}}
\newcommand{\E}[1]{ {\sf E}\left[ {#1} \right]}
\newcommand{\C}[1]{ \mbox{\sf Cov}\left[{#1} \right]}
\newcommand{\Var}[1]{ {\sf Var}\left[ {#1} \right]}
\newcommand{\trace}{\mathop{\rm tr}}
\renewcommand{\vec}[1]{\mathop{\rm vec}(#1)}

% \newcommand{\definition}{:=}

\newcommand{\delete}[1]{~}

\unitlength1mm

%
%  \abbreviation{VE}{Viterbi Equalizer}
%
\newcommand{\abbreviation}[2]{{#2} ({#1}\index{#2}\index{#1|see{#2}})}

%% from Thomas:

\def\mathlette#1#2{{\mathchoice{\mbox{#1$\displaystyle #2$}}%
                               {\mbox{#1$\textstyle #2$}}%
                               {\mbox{#1$\scriptstyle #2$}}%
                               {\mbox{#1$\scriptscriptstyle #2$}}}}

\newcommand{\be}{\begin{equation}}
\newcommand{\ee}{\end{equation}}
\newcommand{\ba}{\begin{array}}
\newcommand{\ea}{\end{array}}
\newcommand{\bdm}{\begin{displaymath}}
\newcommand{\edm}{\end{displaymath}}
\newcommand{\bea}{\begin{eqnarray}}
\newcommand{\eea}{\end{eqnarray}}
\newcommand{\bean}{\begin{eqnarray*}}
\newcommand{\eean}{\end{eqnarray*}}
\newcommand{\me}{\mathrm{e}}
\newcommand{\mi}{\mathrm{i}}
\newcommand{\mj}{\mathrm{j}}
\newcommand{\mJ}{\mathrm{J}}

\def\argmax{\mathop{\mathrm{argmax}}}
\def\argmin{\mathop{\mathrm{argmin}}}
\def\trace{\mathrm{tr}}
\def\diag{\mathrm{diag}}
\def\var{\mathrm{var}}
\def\prob{\mathrm{Pr}}
\def\APP{\mathrm{APP}}
\def\EXT{\mathrm{EXT}}
\def\quant{\mathop{\mathrm{quant}}}
\def\dif{\mathrm{d}\,}
\def\E{\mathop{\mathcal{E}}}

% special notation is defined here
\def\nTD{\ensuremath{T_\mathrm{D}}} %delay spread
\def\nLD{\ensuremath{L_\mathrm{D}}} %delay spread normalized to sampling rate
\def\nTC{\ensuremath{T_\mathrm{C}}} %chip length
\def\nTS{\ensuremath{T_\mathrm{S}}} %symbol length
\def\nTX{\ensuremath{N_\mathrm{Tx}}} %symbol length
\def\nRX{\ensuremath{N_\mathrm{Rx}}} %symbol length


\def\nRC{\ensuremath{R_\mathrm{C}}} %code rate
\def\nRS{\ensuremath{R_\mathrm{S}}} %symbol mapper rate

\def\oH{\ensuremath{^H}} % Hermitean operator
\def\oT{\ensuremath{^T}} % transpose operator
\def\oF{\ensuremath{^{(\mathrm{F})}}} % Fourier basis expansion
\def\oS{\ensuremath{^{(\mathrm{S})}}} % Slepian basis expansion
\def\oFS{\ensuremath{^{(\mathrm{FS})}}} % finite Slepian basis expansion

\def\mTCP{\ensuremath{\Vec{T}_\mathrm{CP}}} %cyclic prefix insertion matrix
\def\mICP{\ensuremath{\Vec{I}_\mathrm{CP}}} %cyclic prefix insertion matrix
\def\mRCP{\ensuremath{\Vec{R}_\mathrm{CP}}} %cyclic prefix removal matrix

\def\nfC{\ensuremath{f_\mathrm{C}}}        %carrier frequency
\def\nvmax{\ensuremath{v_\mathrm{max}}}    %maximum speed

\def\nBD{\ensuremath{B_\mathrm{D}}}        %Doppler bandwidth (one-sided)
\def\nBDmax{\ensuremath{B_\mathrm{Dmax}}}  %maximum Doppler bandwidth, respectively frequency
\def\nnuD{\ensuremath{\nu_\mathrm{D}}}     %normalized Doppler bandwidth
\def\nnuDmax{\ensuremath{\nu_\mathrm{Dmax}}}     %maximum normalized Doppler bandwidth
\def\nfDmax{\ensuremath{\omega_\mathrm{Dmax}}}     %maximum normalized Doppler bandwidth

\def\nEb{\ensuremath{E_\mathrm{b}}}        %energy per information bit
\def\nES{\ensuremath{E_\mathrm{S}}}        %energy per symbol

\def\nVD{\ensuremath{V_\mathrm{D}}}        %Doppler diversity
\def\nPsiD{\ensuremath{\Psi_\mathrm{D}}}     %Doppler diverstiy measure
\def\nVM{\ensuremath{V_\mathrm{M}}}        %Multipath diversity


\def\bias{\ensuremath{\mathrm{bias}}}        %bias
\def\var{\ensuremath{\mathrm{var}}}          %variance
\def\MSE{\ensuremath{\mathrm{MSE}}}          %MSE

\def\SNR{\ensuremath{\mathrm{SNR}}}        %SNR

\def\nCcoh{\ensuremath{C_\mathrm{coh}}}    %coherent capacity

\def\rank{\ensuremath{\mathrm{rank}}}      %rank

\def\nSigmaU{\ensuremath{\Vec{\Sigma}_\mathrm{U}}}        %useable channel subspace

\def\nSigmaN{\ensuremath{\Vec{\Sigma}_\mathrm{N}}}        %noise subspace

\newcommand\inSet[2]{\ensuremath{\in\mathbbm{#1}^{\,#2}}} %inSet

\def\cfirst{\ensuremath{\Vec{c}_{\mathrm{first}}}}    %c first
\def\clast{\ensuremath{\Vec{c}_{\mathrm{last}}}}    %c last

\def\mus{\ensuremath{\mu{}\mathrm{s}}}


%\IEEEoverridecommandlockouts

% theorems, ...
%
\newtheorem{theo}{Theorem}[section]
\newtheorem{df}{Definition}[section]
\newtheorem{property}{Property}[section]
\newtheorem{lem}[theo]{Lemma}
\newtheorem{cor}[theo]{Corollary}
\newenvironment{pr}[1][]{\noindent \textit{Proof: #1~~}}{\hspace*\fill$\square$\medskip}
\newenvironment{ex}{\noindent \footnotesize {\bf Example:~~}}{}
%{ \theorembodyfont{\rmfamily \footnotesize}
%\newtheorem{ex}{Example}[section]
%}
%{ \theorembodyfont{\rmfamily} \theoremstyle{break}
\newtheorem{alg}{Algorithm}[section]
%}
