Construction of Networks
Network<n | edges > : RngIntElt, List -> GrphNet, GrphVertSet, GrphEdgeSet
Example Network_ConstrNetwork1 (H103E1)
Magma Output: Printing of a Network
Example Network_ConstrNetwork2 (H103E2)
The Vertex--Set and Edge--Set of Networks
EdgeIndices(u, v) : GrphVert, GrphVert -> SeqEnum
EdgeMultiplicity(u, v) : GrphVert, GrphVert -> RngIntElt
Edges(u, v) : GrphVert, GrphVert -> SeqEnum
IncidentEdges(u) : GrphVert -> SetEnum
E ! < [u, v], i > : GrphEdgeSet, < . > -> GrphEdge
E . i : GrphEdgeSet, RngIntElt -> GrphEdge
EndVertices(e) : GrphEdge -> [ GrphVert, GrphVert ]
InitialVertex(e) : GrphEdge -> GrphVert
TerminalVertex(e) : GrphEdge -> GrphVert
Index(e) : GrphEdge -> RngIntElt
s eq t : GrphEdge, GrphEdge -> BoolElt
Capacity(e) : GrphEdge -> RngIntElt
Capacity(u, v) : GrphVert, GrphVert -> RngIntElt
AssignCapacity(e, c) : GrphEdge, RngIntElt ->
AssignCapacity(u, v, c) : GrphVert, GrphVert, RngIntElt ->
Flow(e) : GrphEdge -> RngIntElt
Flow(u, v) : GrphVert, GrphVert -> RngIntElt
Example Network_IndicesNetw (H103E3)
Standard Construction for Networks
Subgraphs
sub< G | list > : GrphNet, List -> GrphNet, GrphVertSet, GrphEdgeSet
Example Network_ConstrSubNetwork (H103E4)
Incremental Construction of Networks
Adding Vertices
N + n : GrphNet, RngIntElt -> GrphNet
N +:= n : GrphNet, RngIntElt ->
Removing Vertices
N - v : GrphNet, GrphVert -> GrphNet
N -:= v : GrphNet, GrphVert ->
Adding Edges
N + < [ u, v ], c > : GrphNet, < [ GrphVert, GrphVert ], RngIntElt > -> GrphNet, GrphEdge
N + { < [ u, v ], c > } : GrphNet, { < [ GrphVert, GrphVert ], RngIntElt > } -> GrphNet
N +:= < [ u, v ], c > : GrphNet, < [ GrphVert, GrphVert ], RngIntElt > ->
AddEdge(N, u, v, c) : GrphNet, GrphVert, GrphVert, RngIntElt -> GrphNet, GrphEdge
AddEdge(~N, u, v, c) : GrphNet, GrphVert, GrphVert, RngIntElt ->
Removing Edges
N - e : GrphNet, GrphEdge -> GrphNet
N - { [u, v] } : GrphNet, { [ GrphVert, GrphVert ] } -> GrphNet
N -:= e : GrphNet, GrphEdge ->
Example Network_AddRemVE (H103E5)
Vertex Insertion, Contraction
InsertVertex(e) : GrphEdge -> GrphNet
InsertVertex(T) : { GrphEdge } -> GrphNet
Contract(u, v) : GrphVert, GrphVert -> GrphNet
Contract(S) : { GrphVert } -> GrphNet
Example Network_InsertContract (H103E6)
Unions of Networks
Union(N, H) : GrphNet, GrphNet -> GrphNet
& join S : [ GrphNet ] -> GrphNet
EdgeUnion(N, H) : GrphNet, GrphNet -> GrphNet
Converting between Networks and Simple Graphs
UnderlyingGraph(N) : GrphNet -> GrphUnd, GrphVertSet, GrphEdgeSet
UnderlyingDigraph(N) : GrphNet -> GrphDir, GrphVertSet, GrphEdgeSet
UnderlyingNetwork(G) : Grph -> GrphDir, GrphVertSet, GrphEdgeSet
Elementary Invariants and Predicates for Networks
Order(N) : GrphNet -> RngIntElt
Size(N) : GrphNet -> RngIntElt
u adj v : GrphVert, GrphVert -> BoolElt
e adj f : GrphEdge, GrphEdge -> BoolElt
u notadj v : GrphVert, GrphVert -> BoolElt
e notadj f : GrphEdge, GrphEdge -> BoolElt
u in e : GrphVert, GrphEdge -> BoolElt
u notin e : GrphVert, GrphEdge -> BoolElt
N eq H : GrphNet, GrphNet -> BoolElt
IsSubgraph(N, H) : GrphNet, GrphNet -> BoolElt
IsSimple(G) : Graph -> BoolElt
IsUndirected(G) : Graph -> BoolElt
IsDirected(G) : Graph -> BoolElt
Degree Functions for a Network
InDegree(u) : GrphVert -> RngIntElt
InNeighbours(u) : GrphVert -> { GrphVert }
MaximumInDegree(N) : GrphNet -> RngIntElt, GrphVert
MinimumInDegree(N) : GrphNet -> RngIntElt, GrphVert
OutDegree(u) : GrphVert -> RngIntElt
OutNeighbours(u) : GrphVert -> { GrphVert }
MaximumOutDegree(N) : GrphNet -> RngIntElt, GrphVert
MinimumOutDegree(N) : GrphNet -> RngIntElt, GrphVert
Degree(u) : GrphVert -> RngIntElt
DegreeSequence(u) : GrphNet -> [ GrphVert ]
MaximumDegree(N) : GrphNet -> RngIntElt, GrphVert
MinimumDegree(N) : GrphNet -> RngIntElt, GrphVert
Alldeg(N, n) : GrphNet, RngIntElt -> { GrphVert }
Maximum Flow and Minimum Cut
MinimumCut(s, t) : GrphVert, GrphVert -> SeqEnum, RngIntElt
MinimumCut(Ss, Ts) : [ GrphVert ], [ GrphVert ] -> SeqEnum, RngIntElt
MaximumFlow(s, t) : GrphVert, GrphVert -> RngIntElt, SeqEnum
MaximumFlow(Ss, Ts) : [ GrphVert ], [ GrphVert ] -> RngIntElt, SeqEnum