Plans regarding input and output of graphs in Maxima/Lisp.
More...
Go to the source code of this file.
Detailed Description
Plans regarding input and output of graphs in Maxima/Lisp.
 Todo:
 Documentation

Extend our documentation.

Link to Combinatorics/Graphs regarding the dotformat.
 Todo:
 Dotformat

Update the functionnames:

"print_graph_dot" > "print_dot_g"

Handle ordered graphversions:

Perhaps for all versions, the functions handling the unordered versions can also handle the ordered versions.

Does the Maxima graphspackage handle this format?

Should we give the graphs in the dotoutput a dedicated name?

At least we should have an optional parameter.

Generalise the graph output, so that arbitrary graphs can be output.

Make function "string_vertex" a parameter.

A question is, what kind of vertexnames are directly accepted by the dotformat, and which need to be additional labels?

Output multigraphs.

Output general graphs.

Output directed graphs.

Output multidigraphs.

Output general digraphs.
 Todo:
 Reading graphs in dotformat

First of all, we need a better understanding of the dotformat.

The "official" specification should be available in the OKlibrary.
 Todo:
 Maxima graphspackage

What is the "DIMACS" format?

Like the DIMACS cnfformat, we have first comment lines ("c"), and then a parameter line (number of vertices, number of edges). This for undirected graphs, while for directed graphs "arcs" is used instead of "edges".

Each edge is specified by a line like so apparently vertices are always numbered from 1 to n.

For undirected graphs, likely "e 1 2" as well as "e 2 1" is possible?

What is the "graph6" format?

None of these functions seem to work!

What is the "sparse6" format?

None of these functions seem to work!
 Todo:
 Other graphformats

The dotformat seems to be the main format used in the OKlibrary.

Perhaps we should not provide other format at the Maxima/Lisp level, but we provide a series of conversion *programs* (in C++).
Definition in file InputOutput.hpp.