Digraphs
Digraphs copied to clipboard
The GAP package Digraphs
This would return `true` if the input digraph `D` satisfies `D = DigraphTransitiveReduction(D)`, but should be implemented in a similar way to `IsTransitiveDigraph`.
For example, ~~~ gap> DigraphHomomorphism(NullDigraph(2), NullDigraph(64)); IdentityTransformation gap> time; 1565 ~~~ This seems to be because the homomorphism finding code finds a stabiliser chain for the symmetric group on 64...
This adds algorithms for finding shortest paths in edge-weighted digraphs, where "shortest" means "lowest total weight". Three different "shortest path" problems are solved: - All pairs: `DigraphShortestPaths(digraph)` - Single source:...
I have the graph ~~~ d:=Digraph([ [ 2, 3, 4, 5 ], [ 1, 3, 4 ], [ 1, 2, 4, 5 ], [ 1, 2, 3, 5 ], [...
I have already an implementation of a method that computes for a digraph and a rotation system the facial cycles (no matter whether the graph is planar or not) and...
I open this draft PR so that it is visible that I am working on an implementation of Yen's algorithm (https://en.wikipedia.org/wiki/Yen's_algorithm https://ia800704.us.archive.org/view_archive.php?archive=/24/items/wikipedia-scholarly-sources-corpus/10.1287.zip&file=10.1287%252Fmnsc.17.11.712.pdf) to iterate through paths in an edge weighted...
I am not sure this is intended. Creating a digraph with edge weights and removing vertices, edges, or taking a mutable copy makes the resulting grpah not have weights. ```...
Sometimes it is helpful to work with graphs that allow a non-dense vertex list. For instance, if I remove a vertex I would like to have still the old names....
_Is2EdgeTransitive_ is currently very slow and space inefficient. The current implementation computes the cartesian product of the edges, then filters them to only include 2 edges, and computes a 2-edge...