From e530761db985855396c153b768fc459f69567c7f Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Thu, 31 Oct 2024 18:00:07 -0400 Subject: [PATCH] mjo/cone/faces.py: add another reducibility test --- mjo/cone/faces.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/mjo/cone/faces.py b/mjo/cone/faces.py index 0d9986d..5669a0e 100644 --- a/mjo/cone/faces.py +++ b/mjo/cone/faces.py @@ -206,6 +206,21 @@ def dual_face(K,F): sage: all(check_prop(K,F) for F in K.face_lattice()) True + This is a sufficient condition for the ``K``-reducibility of ``L`` + with respect to ``K`` (in the sense of Elsner and Gowda) to imply + the ``K.dual()``-reducibility of ``L.transpose()``. It should hold + for polyhedral cones because ``K - F`` is closed for each face + ``F`` of ``K`` -- this is Proposition 6 in one of my open + questions:: + + sage: def check_prop(K,F): + ....: L1 = F.span() + ....: L2 = dual_face(K,F).orthogonal_sublattice() + ....: return L1.vector_space() == L2.vector_space() + sage: K = random_cone() + sage: all(check_prop(K,F) for F in K.face_lattice()) + True + """ if not F.is_face_of(K): raise ValueError("%s is not a face of %s" % (F,K)) -- 2.44.2