]> gitweb.michael.orlitzky.com - sage.d.git/commitdiff
cone/faces.py: test that dual-face-of-dual-face is a no-op.
authorMichael Orlitzky <michael@orlitzky.com>
Fri, 2 Nov 2018 04:43:24 +0000 (00:43 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Fri, 2 Nov 2018 04:43:24 +0000 (00:43 -0400)
mjo/cone/faces.py

index ee16890dd6234cd0003cc0e8e9448674668386f5..81b8421e94b28e0b9b9a68387a6b67f92c903a78 100644 (file)
@@ -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):