Skip to content

Commit b844f90

Browse files
committed
src/sage/geometry/cone.py: add another example for is_reducible()
Combine two results from the literature to make a reducibility example out of cones.rearrangement().
1 parent 6929c37 commit b844f90

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/sage/geometry/cone.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6566,6 +6566,20 @@ def is_reducible(self):
65666566
sage: cones.nonnegative_orthant(3).is_reducible()
65676567
True
65686568
6569+
Theorem 4.1 in [JG2018]_ says that the Lyapunov rank of a
6570+
permutation-invariant cone is either ``n`` or ``1``, depending
6571+
on whether or not it is reducible. Corollary 5.2.4 of
6572+
[Jeong2017]_ then implies that the ``(p,n)`` rearrangement
6573+
cone is reducible if and only if ``p`` is either ``1`` or
6574+
``n-1``. We exclude the possibility of ``p == n`` since that
6575+
returns a (not pointed) half-space::
6576+
6577+
sage: n = ZZ.random_element(10) + 2
6578+
sage: p = ZZ.random_element(1, n)
6579+
sage: K = cones.rearrangement(p, n)
6580+
sage: K.is_reducible() == (p in [1, n-1])
6581+
True
6582+
65696583
TESTS:
65706584
65716585
Reducibility is preserved under linear isomorphisms::

0 commit comments

Comments
 (0)