+ If the base ring of ``L`` is exact, then ``True`` will be returned if
+ and only if ``L`` is cross-positive on ``K``.
+
+ If the base ring of ``L`` is ``SR``, then the situation is more
+ complicated:
+
+ - ``True`` will be returned if it can be proven that ``L``
+ is cross-positive on ``K``.
+ - ``False`` will be returned if it can be proven that ``L``
+ is not cross-positive on ``K``.
+ - ``False`` will also be returned if we can't decide; specifically
+ if we arrive at a symbolic inequality that cannot be resolved.
+
+ EXAMPLES:
+
+ The identity operator is always cross-positive::
+
+ sage: set_random_seed()
+ sage: K = random_cone(max_ambient_dim=8)
+ sage: L = identity_matrix(K.lattice_dim())
+ sage: is_cross_positive_on(L,K)
+ True
+
+ The "zero" operator is always cross-positive::
+
+ sage: K = random_cone(max_ambient_dim=8)
+ sage: R = K.lattice().vector_space().base_ring()
+ sage: L = zero_matrix(R, K.lattice_dim())
+ sage: is_cross_positive_on(L,K)
+ True
+
+ TESTS:
+
+ Everything in ``K.cross_positive_operators_gens()`` should be
+ cross-positive on ``K``::
+
+ sage: K = random_cone(max_ambient_dim=5)
+ sage: all([ is_cross_positive_on(L,K) # long time
+ ....: for L in K.cross_positive_operators_gens() ]) # long time
+ True
+ sage: all([ is_cross_positive_on(L.change_ring(SR),K) # long time
+ ....: for L in K.cross_positive_operators_gens() ]) # long time
+ True