def lyapunov_rank(K):
r"""
- Compute the Lyapunov (or bilinearity) rank of this cone.
+ Compute the Lyapunov rank (or bilinearity rank) of this cone.
The Lyapunov rank of a cone can be thought of in (mainly) two ways:
An integer representing the Lyapunov rank of the cone. If the
dimension of the ambient vector space is `n`, then the Lyapunov rank
will be between `1` and `n` inclusive; however a rank of `n-1` is
- not possible (see the first reference).
-
- .. note::
-
- In the references, the cones are always assumed to be proper. We
- do not impose this restriction.
-
- .. seealso::
-
- :meth:`is_proper`
+ not possible (see [Orlitzky/Gowda]_).
ALGORITHM:
sage: lyapunov_rank(K) == len(LL(K))
True
- Test Theorem 3 in [Orlitzky/Gowda]_::
+ We can make an imperfect cone perfect by adding a slack variable
+ (a Theorem in [Orlitzky/Gowda]_)::
sage: set_random_seed()
sage: K = random_cone(max_ambient_dim=8,