本文整理汇总了Python中sage.graphs.graph.Graph.set_latex_options方法的典型用法代码示例。如果您正苦于以下问题:Python Graph.set_latex_options方法的具体用法?Python Graph.set_latex_options怎么用?Python Graph.set_latex_options使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sage.graphs.graph.Graph
的用法示例。
在下文中一共展示了Graph.set_latex_options方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: dual_equivalence_class
# 需要导入模块: from sage.graphs.graph import Graph [as 别名]
# 或者: from sage.graphs.graph.Graph import set_latex_options [as 别名]
def dual_equivalence_class(self, index_set=None):
r"""
Return the dual equivalence class indexed by ``index_set``
of ``self``.
The dual equivalence class of an element `b \in B`
is the set of all elements of `B` reachable from
`b` via sequences of `i`-elementary dual equivalence
relations (i.e., `i`-elementary dual equivalence
transformations and their inverses) for `i` in the index
set of `B`.
For this to be well-defined, the element `b` has to be
of weight `0` with respect to `I`; that is, we need to have
`\varepsilon_j(b) = \varphi_j(b)` for all `j \in I`.
See [Assaf08]_. See also :meth:`dual_equivalence_graph` for
a definition of `i`-elementary dual equivalence
transformations.
INPUT:
- ``index_set`` -- (optional) the index set `I`
(default: the whole index set of the crystal); this has
to be a subset of the index set of the crystal (as a list
or tuple)
OUTPUT:
The dual equivalence class of ``self`` indexed by the
subset ``index_set``. This class is returned as an
undirected edge-colored multigraph. The color of an edge
is the index `i` of the dual equivalence relation it
encodes.
.. SEEALSO::
- :meth:`~sage.categories.regular_crystals.RegularCrystals.ParentMethods.dual_equivalence_graph`
- :meth:`sage.combinat.partition.Partition.dual_equivalence_graph`
EXAMPLES::
sage: T = crystals.Tableaux(['A',3], shape=[2,2])
sage: G = T(2,1,4,3).dual_equivalence_class()
sage: sorted(G.edges())
[([[1, 3], [2, 4]], [[1, 2], [3, 4]], 2),
([[1, 3], [2, 4]], [[1, 2], [3, 4]], 3)]
sage: T = crystals.Tableaux(['A',4], shape=[3,2])
sage: G = T(2,1,4,3,5).dual_equivalence_class()
sage: sorted(G.edges())
[([[1, 3, 5], [2, 4]], [[1, 3, 4], [2, 5]], 4),
([[1, 3, 5], [2, 4]], [[1, 2, 5], [3, 4]], 2),
([[1, 3, 5], [2, 4]], [[1, 2, 5], [3, 4]], 3),
([[1, 3, 4], [2, 5]], [[1, 2, 4], [3, 5]], 2),
([[1, 2, 4], [3, 5]], [[1, 2, 3], [4, 5]], 3),
([[1, 2, 4], [3, 5]], [[1, 2, 3], [4, 5]], 4)]
"""
if index_set is None:
index_set = self.index_set()
for i in index_set:
if self.epsilon(i) != self.phi(i):
raise ValueError("the element is not weight 0")
visited = set([])
todo = set([self])
edges = []
while todo:
x = todo.pop()
visited.add(x)
for k, i in enumerate(index_set[1:]):
im = index_set[k]
if x.epsilon(i) == 1 and x.epsilon(im) == 0:
y = x.e(i).e(im).f(i).f(im)
if [y, x, i] not in edges:
edges.append([x, y, i])
if y not in visited:
todo.add(y)
if x.epsilon(i) == 0 and x.epsilon(im) == 1:
y = x.e(im).e(i).f(im).f(i)
if [y, x, i] not in edges:
edges.append([x, y, i])
if y not in visited:
todo.add(y)
from sage.graphs.graph import Graph
G = Graph([visited, edges], format="vertices_and_edges",
immutable=True, multiedges=True)
if have_dot2tex():
G.set_latex_options(format="dot2tex", edge_labels=True,
color_by_label=self.cartan_type()._index_set_coloring)
return G