X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=mjo%2Fcone%2Ffaces.py;h=81b8421e94b28e0b9b9a68387a6b67f92c903a78;hb=064a3c7c3796f931954f8ece0b6e9912163efc1b;hp=ee16890dd6234cd0003cc0e8e9448674668386f5;hpb=d3561bfcfea6f26e5942e6e49992bf34efc24b5c;p=sage.d.git 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):