Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Cycle space
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|All even-degree subgraphs of a graph}} {{about|a concept in [[graph theory]]|space allocated to bicycles|cycling infrastructure}} In [[graph theory]], a branch of [[mathematics]], the (binary) '''cycle space''' of an [[undirected graph]] is the set of its [[Eulerian graph|even-degree subgraphs]]. This set of subgraphs can be described [[algebra]]ically as a [[vector space]] over the two-element [[finite field]]. The [[dimension (vector space)|dimension]] of this space is the [[circuit rank]] of the graph. The same space can also be described in terms from [[algebraic topology]] as the first [[Homology (mathematics)|homology group]] of the graph. Using homology theory, the binary cycle space may be generalized to cycle spaces over arbitrary [[ring (mathematics)|ring]]s. ==Definitions== The cycle space of a graph can be described with increasing levels of mathematical sophistication as a set of subgraphs, as a binary [[vector space]], or as a [[homology group]]. ===Graph theory=== A [[Glossary of graph theory#Subgraphs|spanning subgraph]] of a given graph ''G'' may be defined from any subset ''S'' of the edges of ''G''. The subgraph has the same set of [[Vertex (graph theory)|vertices]] as ''G'' itself (this is the meaning of the word "spanning") but has the elements of ''S'' as its edges. Thus, a graph ''G'' with ''m'' edges has 2<sup>''m''</sup> spanning subgraphs, including ''G'' itself as well as the [[empty graph]] on the same set of vertices as ''G''. The collection of all spanning subgraphs of a graph ''G'' forms the [[edge space]] of ''G''.<ref name="gy">{{citation|title=Graph Theory and Its Applications|edition=2nd|first1=Jonathan L.|last1=Gross|first2=Jay|last2=Yellen|publisher=CRC Press|year=2005|isbn=9781584885054|chapter=4.6 Graphs and Vector Spaces|pages=197–207|url=https://books.google.com/books?id=-7Q_POGh-2cC&pg=PA197}}.</ref><ref name="diestel">{{citation|title=Graph Theory|volume=173|series=Graduate Texts in Mathematics|first=Reinhard|last=Diestel|publisher=Springer|year=2012|chapter=1.9 Some linear algebra|pages=23–28|url=https://books.google.com/books?id=eZi8AAAAQBAJ&pg=PA23}}.</ref> A graph ''G'', or one of its subgraphs, is said to be [[Eulerian graph|Eulerian]] if each of its vertices has an [[even number]] of incident edges (this number is called the [[degree (graph theory)|degree]] of the vertex). This property is named after [[Leonhard Euler]] who proved in 1736, in his work on the [[Seven Bridges of Königsberg]], that a [[connected graph]] has a tour that visits each edge exactly once if and only if it is Eulerian. However, for the purposes of defining cycle spaces, an Eulerian subgraph does not need to be connected; for instance, the empty graph, in which all vertices are disconnected from each other, is Eulerian in this sense. The cycle space of a graph is the collection of its Eulerian spanning subgraphs.<ref name="gy"/><ref name="diestel"/> ===Algebra=== If one applies any [[Set (mathematics)#Basic operations|set operation]] such as union or intersection of sets to two spanning subgraphs of a given graph, the result will again be a subgraph. In this way, the edge space of an arbitrary graph can be interpreted as a [[Boolean algebra (structure)|Boolean algebra]].<ref>{{citation|title=Applied Discrete Structures|first=K. D.|last=Joshi|publisher=New Age International|year=1997|isbn=9788122408263|page=172|url=https://books.google.com/books?id=lxIgGGJXacoC&pg=PA172}}.</ref> [[File:Cycle space addition.svg|thumb|360px|The symmetric difference of two Eulerian subgraphs (red and green) is a Eulerian subgraph (blue).]] The cycle space, also, has an algebraic structure, but a more restrictive one. The union or intersection of two Eulerian subgraphs may fail to be Eulerian. However, the [[symmetric difference]] of two Eulerian subgraphs (the graph consisting of the edges that belong to exactly one of the two given graphs) is again Eulerian.<ref name="gy"/> This follows from the fact that the symmetric difference of two sets with an even number of elements is also even. Applying this fact separately to the [[neighbourhood (graph theory)|neighbourhood]]s of each vertex shows that the symmetric difference operator preserves the property of being Eulerian. A family of sets closed under the symmetric difference operation can be described algebraically as a [[vector space]] over the two-element [[finite field]] [[GF(2)|<math>\Z_2</math>]].<ref>{{citation|title=A Beginner's Guide to Graph Theory|first=W. D.|last=Wallis|publisher=Springer|year=2010|isbn=9780817645809|page=66|url=https://books.google.com/books?id=240QO32GJOcC&pg=PA66}}.</ref> This field has two elements, 0 and 1, and its addition and multiplication operations can be described as the familiar addition and multiplication of [[integer]]s, taken [[Modular arithmetic|modulo 2]]. A vector space consists of a set of elements together with an addition and scalar multiplication operation satisfying certain properties generalizing the properties of the familiar [[real vector space]]s. For the cycle space, the elements of the vector space are the Eulerian subgraphs, the addition operation is symmetric differencing, multiplication by the scalar 1 is the [[identity operation]], and multiplication by the scalar 0 takes every element to the empty graph, which forms the [[additive identity]] element for the cycle space. The edge space is also a vector space over <math>\Z_2</math> with the symmetric difference as addition. As vector spaces, the cycle space and the [[cut space]] of the graph (the family of edge sets that span the [[Cut (graph theory)|cuts]] of the graph) are the [[orthogonal complement]]s of each other within the edge space. This means that a set <math>S</math> of edges in a graph forms a cut if and only if every Eulerian subgraph has an even number of edges in common with <math>S</math>, and <math>S</math> forms an Eulerian subgraph if and only if every cut has an even number of edges in common with <math>S</math>.<ref name="diestel"/> Although these two spaces are orthogonal complements, some graphs have nonempty subgraphs that belong to both of them. Such a subgraph (an Eulerian cut) exists as part of a graph <math>G</math> if and only if <math>G</math> has an even number of [[spanning forest]]s.<ref>{{citation|first=David|last=Eppstein|authorlink=David Eppstein|title=On the Parity of Graph Spanning Tree Numbers|year=1996|url=http://www.ics.uci.edu/~eppstein/pubs/Epp-TR-96-14.pdf|series=Technical Report 96-14|publisher=Department of Information and Computer Science, University of California, Irvine}}.</ref> ===Topology=== An undirected graph may be viewed as a [[simplicial complex]] with its vertices as zero-dimensional simplices and the edges as one-dimensional simplices.<ref name="serre">{{citation|title=Trees|first=Jean-Pierre|last=Serre|authorlink=Jean-Pierre Serre|page=23|publisher=Springer|series=Springer Monographs in Mathematics|year=2003|url=https://books.google.com/books?id=MOAqeoYlBMQC&pg=PA23|isbn=9783540442370}}.</ref> The [[chain complex]] of this topological space consists of its edge space and [[vertex space]] (the Boolean algebra of sets of vertices), connected by a boundary operator that maps any spanning subgraph (an element of the edge space) to its set of odd-degree vertices (an element of the vertex space). The [[homology group]] :<math>H_1(G,\Z_2)</math> consists of the elements of the edge space that map to the zero element of the vertex space; these are exactly the Eulerian subgraphs. Its group operation is the symmetric difference operation on Eulerian subgraphs. Replacing <math>\Z_2</math> in this construction by an arbitrary [[ring (mathematics)|ring]] allows the definition of cycle spaces to be extended to cycle spaces with coefficients in the given ring, that form [[module (mathematics)|module]]s over the ring.<ref>{{citation|title=Algebraic Graph Theory|series=Cambridge Mathematical Library|first=Norman|last=Biggs|publisher=Cambridge University Press|year=1993|isbn=9780521458979|page=154|url=https://books.google.com/books?id=6TasRmIFOxQC&pg=PA154}}.</ref> In particular, the '''integral cycle space''' is the space :<math>H_1(G,\Z).</math> It can be defined in graph-theoretic terms by choosing an arbitrary [[orientation (graph theory)|orientation]] of the graph, and defining an '''integral cycle''' of a graph <math>G</math> to be an assignment of integers to the edges of <math>G</math> (an element of the [[free abelian group]] over the edges) with the property that, at each vertex, the sum of the numbers assigned to incoming edges equals the sum of the numbers assigned to outgoing edges.<ref name="mcba">{{citation|title=Algorithmics of Large and Complex Networks|series=Lecture Notes in Computer Science|volume=5515|year=2009|pages=34–49|contribution=Minimum cycle bases and their applications|first1=Franziska|last1=Berger|first2=Peter|last2=Gritzmann|first3=Sven|last3=de Vries|doi=10.1007/978-3-642-02094-0_2|isbn=978-3-642-02093-3}}.</ref> A member of <math>H_1(G,\Z)</math> or of <math>H_1(G,\Z_k)</math> (the cycle space modulo <math>k</math>) with the additional property that all of the numbers assigned to the edges are nonzero is called a [[nowhere-zero flow]] or a nowhere-zero <math>k</math>-flow respectively.<ref>{{citation | last = Seymour | first = P. D. | authorlink = Paul Seymour (mathematician) | contribution = Nowhere-zero flows | location = Amsterdam | mr = 1373660 | pages = 289–299 | publisher = Elsevier | title = Handbook of combinatorics, Vol. 1, 2 | year = 1995}}.</ref> ==Circuit rank== {{main|Circuit rank}} As a vector space, the dimension of the cycle space of a graph with <math>n</math> vertices, <math>m</math> edges, and <math>c</math> [[Connected component (graph theory)|connected components]] is <math>m-n+c</math>.<ref name="gy"/><ref name="diestel"/><ref name="berge">{{citation|title=The Theory of Graphs|first=Claude|last=Berge|authorlink=Claude Berge|publisher=Courier Dover Publications|year=2001|isbn=9780486419756|pages=27–30|contribution=Cyclomatic number|url=https://books.google.com/books?id=h5BjnaoKyOwC&pg=PA27}}.</ref> This number can be interpreted topologically as the first [[Betti number]] of the graph.<ref name="serre"/> In graph theory, it is known as the [[circuit rank]], cyclomatic number, or nullity of the graph. Combining this formula for the rank with the fact that the cycle space is a vector space over the two-element field shows that the total number of elements in the cycle space is exactly <math>2^{m-n+c}</math>. ==Cycle bases== {{main|Cycle basis}} A [[Basis (linear algebra)|basis]] of a vector space is a minimal subset of the elements with the property that all other elements can be written as a linear combination of basis elements. Every basis of a finite-dimensional space has the same number of elements, which equals the dimension of the space. In the case of the cycle space, a basis is a family of exactly <math>m-n+c</math> Eulerian subgraphs, with the property that every Eulerian subgraph can be written as the symmetric difference of a family of basis elements. ===Existence=== By [[Veblen's theorem]],<ref>{{Citation | last1=Veblen | first1=Oswald | author1-link=Oswald Veblen | title=An application of modular equations in analysis situs | jstor=1967604 | series=Second Series | year=1912 | journal=[[Annals of Mathematics]] | volume=14 | issue=1 | pages=86–94 | doi = 10.2307/1967604 }}.</ref> every Eulerian subgraph of a given graph can be decomposed into [[Cycle (graph theory)|simple cycles]], subgraphs in which all vertices have degree zero or two and in which the degree-two vertices form a connected set. Therefore, it is always possible to find a basis in which the basis elements are themselves all simple cycles. Such a basis is called a [[cycle basis]] of the given graph. More strongly, it is always possible to find a basis in which the basis elements are [[Induced path|induced cycles]] or even (in a [[k-vertex-connected graph|3-vertex-connected graph]]) [[vertex separator|non-separating]] induced cycles.<ref>{{harvtxt|Diestel|2012}}, pp. 32, 65.</ref> ===Fundamental and weakly fundamental bases=== One way of constructing a cycle basis is to form a [[spanning forest|maximal forest]] of the graph, and then for each edge <math>e</math> that does not belong to the forest, form a cycle <math>C_e</math> consisting of <math>e</math> together with the path in the forest connecting the endpoints of <math>e</math>. The cycles <math>C_e</math> formed in this way are linearly independent (each one contains an edge <math>e</math> that does not belong to any of the other cycles) and has the correct size <math>m-n+c</math> to be a basis, so it necessarily is a basis. A basis formed in this way is called a '''fundamental cycle basis''' (with respect to the chosen forest).<ref name="gy"/> If there exists a linear ordering of the cycles in a cycle basis such that each cycle includes at least one edge that is not part of any previous cycle, then the cycle basis is called '''weakly fundamental'''. Every fundamental cycle basis is weakly fundamental (for all linear orderings) but not necessarily vice versa. There exist graphs, and cycle bases for those graphs, that are not weakly fundamental.<ref name="rizzi">{{citation | last = Rizzi | first = Romeo | doi = 10.1007/s00453-007-9112-8 | issue = 3 | journal = Algorithmica | mr = 2482112 | pages = 402–424 | title = Minimum weakly fundamental cycle bases are hard to find | volume = 53 | year = 2009}}.</ref> ===Minimum weight bases=== If the edges of a graph are given real number weights, the weight of a subgraph may be computed as the sum of the weights of its edges. The minimum weight basis of the cycle space is necessarily a cycle basis, and can be constructed in polynomial time.<ref name="mcba"/> The minimum weight basis is not always weakly fundamental, and when it is not it is [[NP-hard]] to find the weakly fundamental basis with the minimum possible weight.<ref name="rizzi"/> ==Planar graphs== ===Homology=== If a [[planar graph]] is embedded into the plane, its chain complex of edges and vertices may be embedded into a higher dimensional chain complex that also includes the sets of faces of the graph. The boundary map of this chain complex takes any 2-chain (a set of faces) to the set of edges that belong to an odd number of faces in the 2-chain. The boundary of a 2-chain is necessarily an Eulerian subgraph, and every Eulerian subgraph can be generated in this way from exactly two different 2-chains (each of which is the [[Complement (set theory)|complement]] of the other).<ref name="d106">{{harvtxt|Diestel|2012}}, pp. 105–106.</ref> It follows from this that the set of bounded faces of the embedding forms a cycle basis for the planar graph: removing the unbounded face from this set of cycles reduces the number of ways each Eulerian subgraph can be generated from two to exactly one. ===Mac Lane's planarity criterion=== {{main|Mac Lane's planarity criterion}} [[Mac Lane's planarity criterion]], named after [[Saunders Mac Lane]], characterizes planar graphs in terms of their cycle spaces and cycle bases. It states that a finite undirected graph is planar if and only if the graph has a cycle basis in which each edge of the graph participates in at most two basis cycles. In a planar graph, a cycle basis formed by the set of bounded faces of an embedding necessarily has this property: each edge participates only in the basis cycles for the two faces it separates. Conversely, if a cycle basis has at most two cycles per edge, then its cycles can be used as the set of bounded faces of a planar embedding of its graph.<ref name="d106"/><ref>{{citation | last = Mac Lane | first = S. | author-link = Saunders Mac Lane | journal = Fundamenta Mathematicae | pages = 22–32 | title = A combinatorial condition for planar graphs | url = http://matwbn.icm.edu.pl/ksiazki/fm/fm28/fm2814.pdf | volume = 28 | year = 1937}}.</ref> ===Duality=== The cycle space of a planar graph is the [[cut space]] of its [[dual graph]], and vice versa. The minimum weight cycle basis for a planar graph is not necessarily the same as the basis formed by its bounded faces: it can include cycles that are not faces, and some faces may not be included as cycles in the minimum weight cycle basis. There exists a minimum weight cycle basis in which no two cycles cross each other: for every two cycles in the basis, either the cycles enclose disjoint subsets of the bounded faces, or one of the two cycles encloses the other one. Following the duality between cycle spaces and cut spaces, this basis for a planar graph corresponds to a [[Gomory–Hu tree]] of the dual graph, a minimum weight basis for its cut space.<ref>{{citation | last1 = Hartvigsen | first1 = David | last2 = Mardon | first2 = Russell | doi = 10.1137/S0895480190177042 | issue = 3 | journal = SIAM Journal on Discrete Mathematics | mr = 1285579 | pages = 403–418 | title = The all-pairs min cut problem and the minimum cycle basis problem on planar graphs | volume = 7 | year = 1994}}.</ref> === Nowhere-zero flows === In planar graphs, [[graph coloring|colorings]] with <math>k</math> distinct colors are dual to nowhere-zero flows over the ring <math>\Z_k</math> of integers modulo <math>k</math>. In this duality, the difference between the colors of two adjacent regions is represented by a flow value across the edge separating the regions. In particular, the existence of nowhere-zero 4-flows is equivalent to the [[four color theorem]]. The [[snark theorem]] generalizes this result to nonplanar graphs.<ref> {{citation |chapter=Recent Excluded Minor Theorems for Graphs |first=Robin |last=Thomas |authorlink=Robin Thomas (mathematician) |pages=201–222 |year=1999 |title=Surveys in Combinatorics, 1999 |publisher=Cambridge University Press |url=http://people.math.gatech.edu/~thomas/PAP/bcc.pdf }}</ref> ==References== {{reflist|30em}} [[Category:Algebraic graph theory]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:About
(
edit
)
Template:Citation
(
edit
)
Template:Harvtxt
(
edit
)
Template:Main
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)