Q      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Safe9;T)Each vertex maps to a ' value so it can poit to other vertices4Labeled Edge attributes | Useful for graph plottingJWeighted Edge attributes | Useful for computing some algorithms on graphs2Convert an edge to a pair discargind its attribute-Tell if an edge is a loop | An edge forms a loop- if both of its ends point to the same vertex$Directed Arc with attribute of type e between to Vertices of type v 'Undirected Edge with attribute of type e between to Vertices of type v :The Empty (order-zero) graph with no vertices and no edges%Retrieve the order of a graph | The order% of a graph is its number of vertices$Retrieve the size of a graph | The size" of a graph is its number of edges Retrieve the vertices of a graphRetrieve the edges of a graph$Tell if a vertex exists in the graph*Retrieve the adjacent vertices of a vertex*Total number of incident edges of a vertex(Degrees of a all the vertices in a graphMaximum degree of a graphMinimum degree of a graphAverage degree of a graphnDensity of a graph | The ratio of the number of existing edges in the graph to the number of | posible edgesbInsert a vertex into a graph | If the graph already contains the vertex leave the graph untoucheduInsert a many vertices into a graph | New vertices are inserted and already contained vertices are left | untouched#Tell if an edge exists in the graph'Retrieve the incident edges of a vertexInsert an edge into a graph | The involved vertices are inserted if don't exist. If the graph already | contains the edge, its attribute is updatedPRemove the edge from a graph present | The involved vertices are left untouched QRemove the edge from a graph if present | The involved vertices are also removed!(Tell if a graph is simple | A graph is simple& if it has no multiple edges nor loops")Tell if a graph is regular | A graph is regularF when all of its vertices have the same | number of adjacent vertices#CGenerate a graph of Int vertices from an adjacency | square matrix$1Get the adjacency matrix representation of a grah%Construct an undirected   between two vertices&Construct a directed  between two vertices'Edges generator(pInsert a link directed to *v* with attribute *a* | If the connnection already exists, the attribute is replaced) Get the links for a given vertex*Get 6s from an association list of vertices and their links+Get  6s from an association list of vertices and their links,O(log n) Associate the specified value with the specified key in this map. | If this map previously contained a mapping for the key, leave the map | intact.-To Qs are equal if they point to the same vertices, and the directions | is the same.To  Ns are equal if they point to the same vertices, regardless of the | direction9  !"#$%&'()*+,-./012345678- ! "#$%&'()*+,9  !"#$  %&876543210/.-'()*+,    !"#$%&'()*+,-./012345678Safe9;T? The Degree Sequence of a simple B is a list of degreesB Undirected Graph of Vertices in v and Edges with attributes in eEO(n) Remove a vertex from a B if present | Every  ( incident to this vertex is also removedFO(log n) Insert an undirected   into a Bz | The involved vertices are inserted if don't exist. If the graph already | contains the Edge, its attribute is updatedG O(m*log n) Insert many directed   s into a B | Same rules as F are appliedHO(log n) Remove the undirected   from a B7 if present | The involved vertices are left untouchedISame as H" but the edge is an unordered pairJO(log n) Remove the undirected   from a B5 if present | The involved vertices are also removedKSame as J" but the edge is an unordered pairLO(n*m) Retrieve the  s of a BMO(log n) Tell if an undirected   exists in the graphNSame as M" but the edge is an unordered pairORetrieve the incident   s of a VertexP Tell if two B are isomorphicR Construct a ?? from a list of degrees | Negative degree values are discardedSGet the ? of a simple B | If the graph is not simple (see !) the result is NothingT Tell if a ?3 is a Graphical Sequence | A Degree Sequence is a Graphical Sequence if a corresponding B for | it existsUGet the corresponding B of a ? | If the ? is not graphical (see T) the | result is Nothing?@ABCDEFGHIJKLMNOPQRSTUVW?@ABCDEFGHIJKLMNOPQRSTUBCDWVEFGHIJKLMNOPQ?@ARSTU?@ABCDEFGHIJKLMNOPQRSTUVWNone]Plot an undirected UGraph to a PNG image file^Same as ]# but open the resulting image with xdg-open]^]^]^]^SafeT_!Probability value between 0 and 1a Construct a _ valueb1Generate a random ErdQs Rnyi G(n, p) model graphc>Generate a random square binary matrix | Useful for use with #_`abc_`abc_`abc_`abcSafeTgThe Degree Sequence of a h) is a list of pairs (Indegree, Outdegree)hDirected Graph of Vertices in v and Arcs with attributes in ekO(n) Remove a vertex from a h if present | Every ( incident to this vertex is also removedlO(log n) Insert a directed  into a hy | The involved vertices are inserted if don't exist. If the graph already | contains the Arc, its attribute is updatedm O(m*log n) Insert many directed  s into a h | Same rules as l are appliednO(log n) Remove the directed  from a h7 if present | The involved vertices are left untouchedoSame as n but the arc is an ordered pairpO(log n) Remove the directed  from a h5 if present | The involved vertices are also removedqSame as p but the arc is an ordered pairrO(n*m) Retrieve the s of a hsSame as rF but the arcs are ordered pairs, and their attributes are | discardedtO(log n) Tell if a directed  exists in the graphuSame as t but the arc is an ordered pairvRetrieve the inbounding  s of a VertexwRetrieve the outbounding  s of a VertexxRetrieve the incident 5s of a Vertex | Both inbounding and outbounding arcsy Tell if a h is symmetric | All of its s are bidirectedz Tell if a h* is oriented | There are none bidirected s | Note: This is not the opposite of y{ Tell if a h is isolated | A graph is isolatedR if it has no edges, that is, it has a degree of 0 | TODO: What if it has a loop?|1Indegree of a vertex | The number of inbounding  s to a vertex}3Outdegree of a vertex | The number of outbounding s from a vertex~#Indegrees of all the vertices in a h#Outdegree of all the vertices in a h Tell if a h$ is balanced | A Directed Graph is balanced when its indegree = outdegree Tell if a h# is regular | A Directed Graph is regularT when all of its vertices have the same number | of adjacent vertices AND when the indegree and  outdegree+ of each vertex | are equal to each toher..Tell if a vertex is a source | A vertex is a source when its  indegree = 0,Tell if a vertex is a sink | A vertex is a sink when its  outdegree = 0.Tell if a vertex is internal | A vertex is a internal when its neither a source nor a sink Tell if a g is a Directed Graphic | A Directed Graphic! is a Degree Sequence for wich a hG exists TODO: Kleitman Wang | Fulkerson Chen Anstee theorem algorithms!ghijklmnopqrstuvwxyz{|}~ghijklmnopqrstuvwxyz{|}~!hijgklmnopqrstuvwxyz{|}~ghijklmnopqrstuvwxyz{|}~Safe Tell if a B( is connected | An Undirected Graph is  connected7 when there is a path between every pair | of vertices Tell if a B+ is disconnected | An Undirected Graph is  disconnected when its not  connected . See | B TODO: An edgeles graph with two or more vertices is disconnectedTell if two vertices of a B# are connected | Two vertices are  connected! if it exists a path between themTell if two vertices of a B& are disconnected | Two vertices are  disconnected( if it doesn't exist a path between them+Retrieve all the unreachable vertices of a B | The unreachable vertices are those with no adjacent Edges Tell if a h, is weakly connected | A Directed Graph is weakly connected* if the equivalent undirected graph | is  connected      !"#$%&'()*+,-./0123456789:;<=>?@ABCDDEFFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghiDjjkHlmnopqrstuvwxyz{|}~''graphite-0.2.1.0-BMhoVTq5JICHMuwOqfiEduData.Graph.TypesData.Graph.UGraphData.Graph.VisualizeData.Graph.GenerationData.Graph.DGraphData.Graph.ConnectivityLinksLabeledlabelWeightedweightIsEdgetoPairisLoopArcEdgeGraphemptyordersizevertices edgePairscontainsVertexadjacentVertices vertexDegreedegrees maxDegree minDegree avgDegreedensity insertVertexinsertVerticescontainsEdgePairincidentEdgePairsinsertEdgePairremoveEdgePairremoveEdgePairAndVerticesisSimple isRegularfromAdjacencyMatrixtoAdjacencyMatrix<->--> arbitraryEdge insertLinkgetLinks linksToArcs linksToEdges hashMapInsert$fEqArc$fEqEdge$fArbitraryArc$fArbitraryEdge $fLabeled(,) $fWeighted(,) $fLabeled[]$fWeightedDouble$fWeightedFloat $fWeightedInt $fIsEdgeArc $fIsEdgeEdge $fShowEdge $fReadEdge $fOrdEdge $fShowArc $fReadArc$fOrdArcDegreeSequenceunDegreeSequenceUGraphunUGraph removeVertex insertEdge insertEdges removeEdge removeEdge'removeEdgeAndVerticesremoveEdgeAndVertices'edges containsEdge containsEdge' incidentEdges areIsomorphic isomorphismdegreeSequencegetDegreeSequenceisGraphicalSequencefromGraphicalSequence $fGraphUGraph$fArbitraryUGraph $fEqUGraph $fShowUGraph$fEqDegreeSequence$fOrdDegreeSequence$fShowDegreeSequenceplotIO plotXdgIO ProbabilityP probability erdosRenyiIO randomMatIO$fEqProbability$fOrdProbability$fShowProbabilityDGraphunDGraph insertArc insertArcs removeArc removeArc'removeArcAndVerticesremoveArcAndVertices'arcsarcs' containsArc containsArc'inboundingArcsoutboundingArcs incidentArcs isSymmetric isOriented isIsolatedvertexIndegreevertexOutdegree indegrees outdegrees isBalancedisSourceisSink isInternalisDirectedGraphic$fArbitraryDGraph $fGraphDGraph $fEqDGraph $fShowDGraph isConnectedisDisconnected areConnectedareDisconnectedunreachableVerticesisWeaklyConnected labeledNodes labeledEdgestoDot'