Graph theory Flashcards

1
Q

Define augmenting path

A

An alternating path between matched and unmatched edges starting and ending at a unmatched edge/exposed vertex.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is a spanning tree

A

Spanning tree is a subgraph of G with all vertices remained and with no cycles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

A graph contains an augmenting path if and only if..

A

The matching is not maximal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

A graph has an augmenting path if and only if (think of Blossoms)

A

the contracted graph has an augmenting path.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Define spanning subgraph

A

A subset of edges from G. All vertices are a part of the subgraph.
A perfect matching is a spanning subgraph.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Define symmetric difference

A

Set of edges that appears in one of the sets but not both: AΔB≔(A∪B)\(A∩B)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is a matching number?

A

a’(G) is the maximal number of edges in a matching in a graph.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a covering?

A

A subset of vertices K⊆V such that every edge is covered by a vertex of K

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the covering number?

A

β(G) is the minimum number of vertices to cover G.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the relationship between matching number and covering number?

A

For a matching M and a covering K: |M|≤|K|, α’(G)≤β(G).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

State Berg’s theorem.

A

Non-existence of augmenting path implies optimality. (maximum matching)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

State König-Egervárys theorem

A

For every bipartite graph, α’(G)=β(G)
Proof: Is intuitively correct since a vertex can at most cover 1 edges of M (else M wouldn’t be a matching), so you simply just choose for every matched edge the endpoint with most neighbors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe the APS alg.

A

An algorithm for finding M augmenting path. Or a maximal M-covered u tree.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe Dijkstra’s algorithm (learn how to run it)

A

Algorithm for shortest distance between two given vertices in af graph of positives lengths. Do not work on graph with negative weight

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is Warshall’s algorithm?

A

Discuss how shortest distance can be found in digraphs even with negative weight. If there is not directed path between two vertices we say their distance is ∞.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the transitive closure of G?

A

The graph G with all edges between vertices if there exists a directed path between these two vertices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is Bellman-Ford algorithm?

A

Shortest distance algorithm even when weights are negative. But require no cycles of negative length. We find all smallest distances from some vertex s to every other vertex.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is Floyd’s algorithm?

A

In digraph with no cycle of negative length, we can find the distance matrix of G. We keep track of found distance and update when we find a shorter distance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

State handshaking lemma

A

A graph always have an even number of odd vertices.

(each edge contributes 2 to the degree count)
The total degree count is always even
- Vertices of even degree contributes with an even degree count to the sum
- Vertices of odd degree contributes with an odd number to the sum
Since the sum is even, we must have an even number of odd vertices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Define a walk

A

A sequence of edge in G, where vertices and edges are allowed to repeat.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Define a path

A

A open walk where edges and vertices do not repeat

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Define a tour and Euler tour

A

Tour: A closed walk where each edge is walked at least once.

Euler tour: A closed walk where each edge is walk exactly once. An Eulerian tour will always be optimal CPT.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is the idea behind Perfect Matching Polytope

A

PMP helps us find a perfect/maximal matching by solving a ILP problem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is the characteristic vector?

A

χ_M∈R^E with coordinates (χ_M )_e= 1 if e in M and 0 if e notin M

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
For a odd number of vertices. What do we know abou the PMP?
PMP = Ø. There exists no perfect matching in a graph with odd number of vertices.
26
What is the edge cut?
∂(U), for edges between the set U⊆V and V\U.
27
For a loop-free graph G the perfect matching polytope is also described by the inequalities (state the 3 conditions)
x_e ≥0, x(∂({v}))=1 ∀v∈V x(∂(W))≥1∀ W⊆V with |W| odd
28
What is a matroid? (with words)
A matroid is a mathematical structure that generalizes the idea of independence, like linearly independent vectors, and applies it to different areas, including graphs. In graph theory, a matroid focuses on edges, where a set of edges is "independent" if it doesn’t form a cycle. This ties to concepts like forests and spanning trees. Matroids are useful because they unify and simplify problems. In graphs, they help with things like efficiently finding spanning trees, and they connect graph theory to other fields like optimization and combinatorics.
29
What is an independent subgraph?
A subgraph that does not contain a cycle.
30
What is the minimum non-independent subgraph
An independent subgraph is a tree and can at most have n-1 edges for n vertices. Meaning if we add one more edge to the spanning tree, we create a cycle, and it is not independent anymore.
31
What is a planar graph?
A graph is planar if we can draw it in R^2 with edges only overlapping at vertices. K_4 is planar but K_5 is not. (can easily bee proofed)
32
What is an embedding of a graph?
A way of drawing a graph in the 2-dimensional plane such that it is planar. K_4 has two embeddings in the plane.
33
What is the dual of a planar graph?
The dual graph G^* have a vertex for each face in G and an edge for each edge in G that separate faces.
34
What is deletion and contraction in a graph? What is their relation with duality of planar graphs?
Deletion is deleting an edge but not changing the number of vertices. The number of edges decreases by one and the number of faces decreases (unless the same face is on both side of the edge) Contraction is removing an edge and identify the two vertices connected to that edge into one (big) vertex. Both the number of vertices and edges decreases by one. (unless the edge is a loop) G->deletion -> dual = G-> Dual -> contraction Deletion on a graph corresponds to doing a contraction on the dual.
35
What does it mean for graphs to be isomorphic?
Two graphs are isomorphic if their structure are identical. They have the same vertices and edges but are represented differently.
36
Define a matroid and the 3 axioms
Matroid as a pair, M=(E,I) with ground set E and I a set of independence subsets of E. A subset I of E is independent if: Ø∈I If A∈I and B⊆A, then B∈I If A,B∈ I and |B|<|A|, then ∃a∈A\B s.t. B∪{a}∈I
37
Define the independents sets (\scriptI)
A set I of subsets of the ground set E, where elements of I are linear independent. For a graphic matroid it means the elements doesn’t form a cycle in the graph.
38
What is a basis of a matroid? (in general)
A basis of a matroid M=(E,I) is a subset B⊆E s.t B∈ \scriptI and B is not a subset of any other set of \scriptI.
39
All basis have the same number of elements. (proof by contradiction)
Assume |B|=|B'| +1. Use axiom I3
40
What is the rank of a matroid?
the size of any basis
41
What is a cycle matroid?
Matroids arising from graphs. Subsets of E corresponds to spanning subgraphs of G. I is the set of subgraphs that does not contain a cycle. The pair (E,I) is called the cycle matroid of G.
42
What is a circuit?
The edge set of a cycle in the graph. It is the minimal dependence set. The set of all circuits is denoted C(M)
43
What is the transversal matroid. Given an example and what is the independents sets?
For a bipartite graph G[X,Y] the transversal matroid of G is the pair (X,I) where I≔{I⊆X:∃a matching M:I is the set of vertices of X covered by M}
44
State the basis axioms. What is the basis of a graphic matroid?
For a matroid M=(S,I). The set B of bases of M satisfies: 1. B≠Ø and no element from B is a subset of another element of B (they all have the same size to be a basis) 2. If B_1,B_2∈B and x∈B_1, then there exists y∈B_2 s.t. (B_1\{x})∪{y}∈B The bases of a graphic matroid are the spanning tree in the graph.
45
What is a loop and a coloop in matroids?
For e∈S, e is a loop if it’s not contained in any basis of M e is a coloop if it’s contained in every basis of M
46
Define a branching
In a directed graph with weight function. A subset B⊆E is called a branching if B contains no cycles Each vertex has at most on in-going arc from B An optimum branching is a branching of maximal weight. (this is not the max-weight spanning tree of the undirected graph since we might not be able to add an edge in the branching because of its direction. In a tree, there is no directions.)
47
What is a critical arc?
An arc e∈ E is called critical if w(e)>0 and for every other arc e^'∈E with the same head as e we have w(e)≥w(e'). So, for each v∈V, choose the arc with highest weight. (Critical arcs are priories in finding optimal branching. By focusing on critical arcs we avoid unnecessary computations with arcs that are not essential.) We might still need non-critical arc to form an optimal branching.
48
What is a critical subgraph?
A subgraph H⊆E is called critical if Each arc of H is critical No two arcs in H have the same head OBS: H is allowed to have cycles. Branchings are not allowed to have cycles.
49
If a maximal critical subgraph H has no cycles, then...
then it is an optimum branching. It is a branching because it has no cycles by assumption and it is a critical subgraph (definition). It is optimal since it chooses the largest weight in-going arc for each vertex.
50
For 2 cycles in a critical subgraph, they share no vertices. Why?
This is because every cycle only has one direction. Since no arc can share one head. So these to cycles must be equal/the same
51
For a maximal critical subgraph H, there exists an optimum branching B such that for every cycle C_i we have |E(C_i )\E(B)|=1
It simply says that in a maximal critical subgraph H, we can achieve the optimal branching 𝐵 by removing on edge from 𝐶𝑖. There is only 1 arc in different between the subgraph 𝐻 and the branching 𝐵 (for each cycle) Intuition: Just show that no arcs in 𝐻\𝐵 is eligible, meaning there is no arc from the max critical subgraph that is not a part of the branching, we can add and still have a valid branching. By contradiction assume 𝑒 is eligible. Then we get one more arc from 𝐻. (And the arc we replace was not a part of H since they share head and H is critical and contains 𝑒.) Adding this arc did not lower the total weight since the arc is critical. So, we have added an arc from H and increased our branching which contradict that B was optimal from the beginning. So, there is no eligible edge.
52
Optimal branching: If G has a cycle, consider the graph G' with C contracted. How is the new weight function defined?
Assign new weight to all edges in G\C that has its head in one u_i: w^' (e)=w(e)-w(e ̃ )+w(e_i^0 ) where e ̃ is the edge in C_i that shares head with e. and e_i^0 is the edge in C_i with the smallest weight.
53
What is the relation between G with B optimal and G' with B' optimal?
w(B)-w'(B') = ∑_(i=1)^k w(C_i ) - ∑_(i=1)^k w(e_i^0 )
54
What is an eligible edge?
For a branching B in G=(V,E), and edge/arc e=(x,y)∈E\B that is not in the branching and for an arc e^'∈B with head(e^' )=y, then B\{e'}∪{e} is a valid branching, then e is called eligible.
55
e=(x,y)∈E\B is eligible if and only if there doesn’t exists a directed (y,x)-path in B. Why?
Intuition: B\\{e'}∪{e} cant be a valid branching if there exists a (y,x)-path since it will create a cycle and then e is not eligible
56
What is a coloring of G?
By k-vertex coloring of G we mean a function c:V→C where C being a set of “colours” and |C|=k. A graph is k-vertex colourable if there exists a proper k-vertex colouring of G.
57
What is a proper coloring? For vertices and edge? What are the restriction for edge-colouring?
For vertices: If ∀e=(u,v)∈E we have c(u)≠c(v) For edges: ∀v∈V the edges incident to v have different colours. (Require G to have no loops)
58
What is the chromatic number for vetices and edges? What is Δ in colourings?
(Vertex) chromatic number: χ(G), smallet number k such that G is colourable. (there exists a proper colouring) (Edge) chromatic number: χ'(G), smallet number k such that G is k-edge colourable. Δ: Defines maximal degree of any vertex, Δ=max(v∈V)⁡〖deg⁡(v)〗
59
Every simple graph is Δ+1 colouable. Why?
Since every vertex has at most Δ neighbors.
60
States Brooks theorem and why it is true.
Every graph that is not cycle or a complete graph is Δ-colourable. (is trivial)
61
What is the Chromatic polynomial?
Is a polynomial function P(G,λ) that tells us the number of proper colourings of a graph G using λ colours.
62
What is the chromatic polynomial for G: Set of n vertices with E=Ø.
λ^n (because for each vertex we can choose it colour freely)
63
What is the chromatic polynomial for the complete graph K_n?
K_n: λ!/(λ-n)!, P(K_n,λ)=λ(λ-1)(λ-2)·…·(λ-(n-1))
64
What is the chromatic polynomial for a path of length n?
λ·(λ-1)^(n-1)
65
using an example show the relation of chromatic polynomials
P(G,λ)=P(G+e,λ) + P(G*e,λ)
66
What is the failing approach to the 4-coloruing theorem?
Tait proof the 4-colouring theorem by proving that “Every 3-connected planar cubic graph G has a Hamiltonian cycle. “ This was disproved by Tutte by a counterexample of a graph that is 3-connected planar cubic, but does not contain a Hamiltonian cycle.
67
What does it mean when a graph is cubic? Come with an example.
It is a graph where every vertex has degree three. The complete bipartite graph with |X|=|Y|=3 is cubic.
68
What does it mean for a graph to be 3-connected?
It is a graph with more than 3 vertices and remains connected whenever fewer that 3 vertices are removed.
69
What is a Hamiltonian cycle?
Hamiltonian cycle is a path/cycle in a graph that visits each vertex exactly once.
70
Find a planar cubic graph G that is not 3-connected and does not contain a Hamiltonian cycle.
71
What is Egerváry's algorithm? Use the algorithm on a graph.
72
What is the APS algorithm? Use it on a graph
73
What is Edmonds Blossom algorithm? Use it on a graph
74
What is the Hungaring algorithm? Use it on a graph
75
What is the Chinese Postman problem? Solve an example.
76
What is the Greedy algorithm for matroids? Solve an example with a graph.
77
That is the 5-colouring theorem.
We are able to make a proper colouring of every graph with only 5 colours.
78
Why do we not risk getting an APS-tree with two adjacent red vertices in a bipartite graph
Since the graph is bipartite, there is not edges between vertices in the same set. Re always have that only vertices in X are red while vertices of Y is blue. It is never possible to have different color vertices in the same set.
79
What is the relationship between ranks of M, M\i (deletion), M/i (contraction)?
Deletion doesn't change the rank of M Contraction decreases the rank by 1.
80
State Hall's theorem. Why is in intuitive?
In a bipartite graph G has a matching, matching all vertices of X if and only if: For all subsets S of X, |N(S)|≥|S| S need to have at least a many neighbors has its size such that for ever x in S you have at least one neighbor you can match it to.
81
What is a transversal matroid?
A matroid from a bipartite graph, M=(X, \scriptI ). The independents sets is a set of subsets I of X, where there exists a matching M: I is the set of vertices covered by M
82
Show that the transversal matroid is a matroid.
Check 3 axioms.
83
What is the independent sets of the three cycle of the cycle matroid and its dual
M: B, M*: S\B
84
Define Edmond's perfect matching polytope. What is it? What graphs does it work for? What is the characteristic vector?
PMP describes all perfect matchings in a loop-free graph and express the set as a polytope (convex set) PMP(G) consists of vectors that corresponds to perfect matchings: Characteristic vector: X_M \in R^E. Indicates whether an edge e is in the matching M PMP is the convex hull of all characteristic vectors of all perfect matchings: PMP(G)= conv({X_M : M is a perfect matching})