#14980: graph_generators, some more clean up
----------------------------------+-------------------------------
       Reporter:  eisermbi        |        Owner:
           Type:  enhancement     |       Status:  positive_review
       Priority:  major           |    Milestone:  sage-5.12
      Component:  graph theory    |   Resolution:
       Keywords:                  |    Merged in:
        Authors:  Birk Eisermann  |    Reviewers:  Nathann Cohen
Report Upstream:  N/A             |  Work issues:
         Branch:                  |       Commit:
   Dependencies:                  |     Stopgaps:
----------------------------------+-------------------------------
Changes (by ncohen):

 * status:  needs_review => positive_review
 * reviewer:   => Nathann Cohen


Old description:

> While adding some graph generators I found some confusing things which I
> like
> to improve with this patch first.
>
> * Why are Butterfly, Krackhardt Kite, Barbell graph listed under
>   "Basic Structures" while Peterson Graph and CompleteGraph are not?
>   Maybe the term "basic structures" is subjective and everyone has a
>   different opinion about basic...
>
> * What is a "small graph"? A graph with a small number of vertices,
> alright?
>   E.g. 13 vertices on http://www.graphclasses.org/smallgraphs.html
>   In general not much more than 15 or 20 vertices. Can "Balaban11Cage()"
>   with 112 vertices, "CameronGraph()" with 231 vertices, "Tutte12Cage()"
>   with 126 vertices be called "small graphs"??
>

> Overview of modifications on the files 'sage/graphs/graph_generators.py'
> and 'sage/graphs/generators/*'.
>
> Part 1
> * "Small Graphs" (also called "named graphs" previously): Added
> documentation: "A small graph is just a single graph and has no parameter
> influencing the number of edges or vertices."
>
> * Families of Graphs: Added documentation: "A family of graph is an
> infinite set of graphs which can be indexed by fixed number of
> parameters, e.g. two parameters."
>
> * Pseudofractal graphs: The graph "DorogovtsevGoltsevMendesGraph" seems
> to be a quite special graph family. Does it need its own section? I
> completely moved it to Families now.
>
> * HararyGraph is a family of graphs.
>
> Part 2
> * "Platonic Solids" is a subsection of "Small graphs". This section is
> ordered by number of vertices now.
>
> * "Chessboard graphs" is a subsection of "Families".
>
> * RandomGNP returns graph, hence, "n" -- number of nodes of the graph
> (not: ''digraph'')
>
> * NEW: {{{benzenoids}}} is replaced by {{{fusenes}}} in
> {{{__append_to_doc}}}.
>
> Part 3 (not applied anymore)
>
> Part 4
> * "Basic structures": Actually these graphs could be listed in the other
> classes. Three not so basic graphs are moved: "BarbellGraph",
> "WheelGraph" to families and "BuckyGraph" to small graphs. The example at
> the beginning of the module is expanded.
>

> ----
>

> '''Apply:'''
> - [attachment:trac_14980-part1_docu.patch]
> - [attachment:trac_14980-part2_docu.patch]
> - [attachment:trac_14980-part4_basic.patch]

New description:

 While adding some graph generators I found some confusing things which I
 like
 to improve with this patch first.

 * Why are Butterfly, Krackhardt Kite, Barbell graph listed under
   "Basic Structures" while Peterson Graph and CompleteGraph are not?
   Maybe the term "basic structures" is subjective and everyone has a
   different opinion about basic...

 * What is a "small graph"? A graph with a small number of vertices,
 alright?
   E.g. 13 vertices on http://www.graphclasses.org/smallgraphs.html
   In general not much more than 15 or 20 vertices. Can "Balaban11Cage()"
   with 112 vertices, "CameronGraph()" with 231 vertices, "Tutte12Cage()"
   with 126 vertices be called "small graphs"??


 Overview of modifications on the files 'sage/graphs/graph_generators.py'
 and 'sage/graphs/generators/*'.

 Part 1
 * "Small Graphs" (also called "named graphs" previously): Added
 documentation: "A small graph is just a single graph and has no parameter
 influencing the number of edges or vertices."

 * Families of Graphs: Added documentation: "A family of graph is an
 infinite set of graphs which can be indexed by fixed number of parameters,
 e.g. two parameters."

 * Pseudofractal graphs: The graph "DorogovtsevGoltsevMendesGraph" seems to
 be a quite special graph family. Does it need its own section? I
 completely moved it to Families now.

 * HararyGraph is a family of graphs.

 Part 2
 * "Platonic Solids" is a subsection of "Small graphs". This section is
 ordered by number of vertices now.

 * "Chessboard graphs" is a subsection of "Families".

 * RandomGNP returns graph, hence, "n" -- number of nodes of the graph
 (not: ''digraph'')

 * NEW: {{{benzenoids}}} is replaced by {{{fusenes}}} in
 {{{__append_to_doc}}}.

 Part 3 (not applied anymore)

 Part 4
 * "Basic structures": Actually these graphs could be listed in the other
 classes. Three not so basic graphs are moved: "BarbellGraph", "WheelGraph"
 to families and "BuckyGraph" to small graphs. The example at the beginning
 of the module is expanded.


 ----


 '''Apply:'''
 - [attachment:trac_14980-part1_docu.patch]
 - [attachment:trac_14980-part2_docu.patch]
 - [attachment:trac_14980-part4_basic.patch]

 (The 'part3' patch is *NOT* to be applied)

--

Comment:

 Hellooooooo !!

 > In other words, I added some text (short explaination) to the docstring
 > of the file {{{graph_generators.py}}} (after the headings "Small Graphs"
 > and "Families"). That is all - no change of name.

 Oh. Okayyyyy !

 > Previously, the file {{{graph_generators.py}}} contained all definitions
 > and a big index. After the splitting of this file most definitions are
 put into
 > several other files. The big index is still kept there. I thought to
 remove
 > {{{
 > - :meth:`BishopGraph <GraphGenerators.BishopGraph>`
 > - :meth:`KingGraph <GraphGenerators.KingGraph>`
 >    ...
 > }}}
 > from the file {{{chessboard.py}}} because
 > - I think it is a left over from the split and replaced by
 {{{__append_to_doc}}};
 > - No other file under {{{sage.graphs.generators}}}, e.g.
 {{{random.py}}}, contains such an index;
 > - I do not know how to display this index other than by opening the file
 in a text editor;

 Hmmmmm.. Well, those methods were never in the big `graph_generators`
 file, but I thought that it appeared in the doc index independently...
 Well, no big deal `:-)`

 > Looking at the docstring of {{{graph_generators.py}}} there is the
 heading
 > "* * Families of Graphs * *" and I formatted the other heading as "*
 Chessboard Graphs *" (note the number of stars). Hence, it looks like a
 subsection of "Families of Graphs".

 Okayokay !

 > Okay, I moved "Barbell-", "Bucky-", "WheelGraph" to other sections.

 Cool.

 > That is the point. Given a (mathematical) definition of some sort of
 graph it seems easier to tell whether it is just a single graph or whether
 a parameter or two are involved (i.e., a family of graphs) or whether a
 graph is derived from a complex data structure (i.e., from a geometric
 representation). In contrast it is more subjective to judge whether a
 graph is basic.

 Aahahah. Well, I think that it is easier to look for the graph's name
 inside of this page than reading the formal definition of each category,
 by just looking at it or with a CTRL+F but well. Can't hurt. When you're
 going to this page you just look for one thing in particular, and I guess
 that nobody would use more than ten entries in this list very often `;-)`

 Thank you for this patch ! I just applied it, passes the `graph/` tests
 and compiled the doc and everything seems nice.

 Nathann

 Apply trac_14980-part1_docu.patch, trac_14980-part2_docu.patch,
 trac_14980-part4_basic.patch

--
Ticket URL: <http://trac.sagemath.org/ticket/14980#comment:6>
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/groups/opt_out.

Reply via email to