% The operator families Z(K), LL(K), etc. can technically be defined on
% sets other than cones, but nobody cares.
%
+\ifx\havemjocone\undefined
+\def\havemjocone{1}
-\usepackage{amssymb} % \succcurlyeq and friends
+
+\ifx\succcurlyeq\undefined
+ \usepackage{amssymb} % \succcurlyeq, \preccurlyeq
+\fi
\input{mjo-common}
\newcommand*{\Lnplus}[1][n]{ \mathcal{L}^{{#1}}_{+} }
% The PSD cone in a space of symmetric matrices.
-\newcommand*{\Snplus}[1][n]{ \mathcal{S}^{{#1}}_{+} }
+\newcommand*{\Snplus}[1][n]{ \Sn[#1]_{+} }
% The PSD cone in a space of Hermitian matrices.
-\newcommand*{\Hnplus}[1][n]{ \mathcal{H}^{{#1}}_{+} }
+\newcommand*{\Hnplus}[1][n]{ \Hn[#1]_{+} }
%
% The space of Lyapunov-like operators on its argument.
\newcommand*{\LL}[1]{ \mathbf{LL}\of{ {#1} } }
+% The Lyapunov rank of the given cone.
+\newcommand*{\lyapunovrank}[1]{ \beta\of{ {#1} } }
-%
% Cone inequality operators.
-%
-
-% Standard cone inequalities.
-\newcommand*{\gek}{\succcurlyeq}
-\newcommand*{\gtk}{\succ}
-\newcommand*{\lek}{\preccurlyeq}
-\newcommand*{\ltk}{\prec}
-
+\newcommand*{\gecone}{\succcurlyeq}
+\newcommand*{\gtcone}{\succ}
+\newcommand*{\lecone}{\preccurlyeq}
+\newcommand*{\ltcone}{\prec}
-% Starred versions of the cone inequality operators.
-\newcommand*{\ineqkstar}[1]{ \mathrel{ \overset{ _{\ast} }{ #1 } } }
-\newcommand*{\gekstar}{ \ineqkstar{\gek} }
-\newcommand*{\gtkstar}{ \ineqkstar{\gtk} }
-\newcommand*{\lekstar}{ \ineqkstar{\lek} }
-\newcommand*{\ltkstar}{ \ineqkstar{\ltk} }
-% And negated versions of some of those...
-\newcommand*{\ngeqkstar}{ \ineqkstar{\nsucceq} }
-\newcommand*{\ngtrkstar}{ \ineqkstar{\nsucc} }
+\fi