[Next][Prev] [Right] [Left] [Up] [Index] [Root]

NETWORKS

 
Acknowledgements
 
Introduction
 
Construction of Networks
      Magma Output: Printing of a Network
 
The Vertex--Set and Edge--Set of Networks
 
Standard Construction for Networks
      Subgraphs
      Incremental Construction of Networks
            Adding Vertices
            Removing Vertices
            Adding Edges
            Removing Edges
      Vertex Insertion, Contraction
      Unions of Networks
      Converting between Networks and Simple Graphs
 
Elementary Invariants and Predicates for Networks
 
Degree Functions for a Network
 
Maximum Flow and Minimum Cut
 
Bibliography







DETAILS

 
Introduction

 
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

 
Bibliography