From 064a3c7c3796f931954f8ece0b6e9912163efc1b Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Fri, 2 Nov 2018 00:43:24 -0400 Subject: [PATCH] cone/faces.py: test that dual-face-of-dual-face is a no-op. --- mjo/cone/faces.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/mjo/cone/faces.py b/mjo/cone/faces.py index ee16890..81b8421 100644 --- a/mjo/cone/faces.py +++ b/mjo/cone/faces.py @@ -202,6 +202,16 @@ def dual_face(K,F): sage: points_cone.dual().is_equivalent(dual_face(K, phi_y)) True + Since all faces of a polyhedral cone are exposed, the dual face of a + dual face should be the original face [HilgertHofmannLawson]_:: + + sage: set_random_seed() + sage: def check_prop(K,F): + ....: return dual_face(K.dual(), dual_face(K,F)).is_equivalent(F) + sage: K = random_cone(max_ambient_dim=8, max_rays=10) + sage: all([check_prop(K,F) for F in K.face_lattice()]) + True + """ # Ensure that F is actually a face of K before continuing. if not F.is_face_of(K): -- 2.43.2