#18972: twographs and Seidel switching
-------------------------------------+-------------------------------------
Reporter: dimpase | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-6.9
Component: graph theory | Resolution:
Keywords: | Merged in:
Authors: | Reviewers: Nathann Cohen
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/dimpase/seidelsw | 6bc5cbd678d6d9db6e99ff23489e0e1a720e8569
Dependencies: #18960, #18948, | Stopgaps:
#18988, #18991, #18986, #19018, |
#19019 |
-------------------------------------+-------------------------------------
Comment (by dimpase):
Replying to [comment:85 ncohen]:
> > Well, the rationale behind the current code is that someone who wants
to take the complement of a two-graph should just call `.complement()`
rather than something more complicated. And indeed, the complement of a
two-graph has a well-established meaning. It's more an implementation
artefact that the base class already has `complement()` defined, and it's
not quite the same. The user should not care about this IMHO.
>
> I agree with everything you just said, but there is this other
definition above that is inherited, and we can't really change that
definition either for it would only apply to uniform hypergraphs...
>
Why? I see no harm in this, as this is merely an implementation detail,
provided this is documented, and this I can certainly do.
> I see only one way out: what would you think of making the *default* of
`.complement()` to only work for uniform hypergraphs? If we do that, then
the problem is solved in a more elegant way. Though `complement` would not
work for all instances but then, perhaps *that* is less surprising. And we
can make the exception "smart" to indicate that a keyword can change this
behaviour.
>
> > Same was with `is_regular()`, but you didn't like this as it clashed
with the default, and I made it `is_regular_twograph()`.
>
> I take this a bit differently: surely there is such a thing as a
"regular two-graph", but you can't work on hypergraphs and not know the
other definition, i.e. of 'regular hypergraph'. So to me, this is less
surprising and indeed something like `is_twograph_regular` can make sense.
Well, I don't recall what `regular hypergraph` is.
(I know where to look it up, but I don't remember its meaning)
>
> A `twograph_complement` looks very odd, as the definition of complement
you need has nothing to do with twographs specifically.
At least this would be unambigous.
--
Ticket URL: <http://trac.sagemath.org/ticket/18972#comment:87>
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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.