#19586: Add is_cayley_graph
-------------------------------------+-------------------------------------
Reporter: jaanos | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-6.10
Component: graph theory | Resolution:
Keywords: Cayley graphs | Merged in:
groups | Reviewers:
Authors: Janoš Vidali | Work issues:
Report Upstream: N/A | Commit:
Branch: | baba4a8d4919be000984d40f56db542557c55e51
u/jaanos/add_is_cayley_graph | Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Changes (by jaanos):
* status: needs_review => needs_work
Comment:
Hi!
Replying to [comment:54 ncohen]:
> Sorry, I was rather angry. Longer answer:
Sorry about that, I thought you wouldn't like it. Anyway:
> I am still against the presence of both 'is_cayley' and
'cayley_graph_group', especially if you say that the first does the job of
the second already. Let us not have 300 ways to do the same thing.
>
> I'm beginning to think that a `is_cayley_graph` that would return the
group if possible and False otherwise would do the job, though that's only
me.
I actually agree - I was just trying to implement what Dima had suggested.
But anyway, I think it would not be wrong to let the user also have the
generating set and a labelled copy of the graph if requested.
> Keywords like 'data' caused me endless troubles in this library. It is
far too unspecific, and I do not even think that you need it. From what
you said it seems that you only need to perform a copy then call
`to_simple`. Tell me if it isn't what you want.
I agree that having `data` as a parameter to `copy` is ugly and counter-
intuitive. However, lacking a way to label the edges of a multigraph, I
thought it would be easiest to just rebuild a graph with the labels, and
`copy` already provides all copying-related stuff (an alternative would be
to replicate its code).
`to_simple` would not work here, since I want to keep all loops and
multiedges. What would be needed is a method like `set_edge_labels` which
allows setting all labels simultaneously (including multiedges). For the
purpose of this function, it would also suffice to have a parameter to
`set_edge_label` that makes it set the same label to all parallel
multiedges.
Janoš
--
Ticket URL: <http://trac.sagemath.org/ticket/19586#comment:55>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.