Hello.
I have to work with a simplicial complex whose vertices are frozenset.
and found that is_connected() is wrong.

Version and OS:
SageMath version 9.5
WSL (Ubuntu) on Windows 10

To Reproduce (inside sage command):
sage: V = SimplicialComplex([[1, 2, 3]])
sage: V.is_connected()
True
sage: W = SimplicialComplex([[frozenset({1}), frozenset({2}), 
frozenset({3})]])
sage: W.is_connected()
False

I think this is because SimplicialComplex.is_graph() is wrong:
sage: V.graph()
Graph on 3 vertices
sage: W.graph()
Looped multi-graph on 2 vertices
This is probably because in topology/simplicial_complex.py, the dictionary 
of edges in SimplicialComplex.graph() 
is constructed by using min and max of the endpoints:
for e in edges:
    try:
        v = min(e)
        max_e = max(e)
and in python, min([frozenset({1}), frozenset({2})]) and 
max([frozenset({1}), frozenset({2})]) are both frozenset({1}), so graph() 
yields (wrong) loops.

Best,
Haruhisa

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/d0343c35-e723-4259-816e-b8abdb7117ean%40googlegroups.com.

Reply via email to