0

We have a bipartite graph, where set A have n vertices and set B have n vertices.

Also each vertices in set A have k edges to set B and each vertices in set B have k edges to set A.

There is a special vertex s that has edges to all vertices to set A, and a special vertex t that has edges to all vertices in B.

How can I prove that there are k edge distinct paths from s to t?

enter image description here

The problem that I am facing is that it asks given the graph mentioned above(Minus the vertices s and t), I need to prove that if at each round I remove all edges from A to B in a way that I can’t remove more than 1 edge from same vertices, there is a way to do this removal so that A and B will become disconnected in k rounds.

tharindu_DG
  • 8,900
  • 6
  • 52
  • 64
Saik
  • 993
  • 1
  • 16
  • 40
  • Is your problem finding such a removal method such that you do k rounds and remove all edges between A and B (where each round, you cannot remove 2 or more edges from the same vertex)? – TuanDT Nov 30 '15 at 06:07
  • No the problem is to prove that this can actually be done. – Saik Nov 30 '15 at 07:20
  • 1
    This is not well formulated. There are some things which are not clear here: you probably don't have to show that A and B get disconnected after `k` removal rounds, you probably should show that A and B do *not* get disconnected after `k-1` removal rounds. This would imply there exists at least `k` edge disjoint path between A and B. Anyway, I don't see what the real problem is here. A has at least `k` vertices (since a vertex in B has `k` edges into A). Each of this vertices has `k` edges into B. Isn't this enough to show `k` edge disjoint path from A to B? I must be missing something... – dingalapadum Nov 30 '15 at 07:27
  • Finding such a removal method would prove that it could be done (the opposite isn't always true though) – TuanDT Nov 30 '15 at 08:21
  • It isn't so clear what you need to prove. Assume k=1, how many edge-disjoint paths are there? It's n, not k. – n. m. could be an AI Nov 30 '15 at 09:34
  • @n.m. Not really. Consider the following graph: each vertex in A is connected to the vertex `b` in B. Each vertex in B is connected to `a` in A. There are at most 2 edge-disjoint path, not `n`, right? (And `k=1` as you required). – dingalapadum Nov 30 '15 at 09:51
  • @dingalapadum Are you talking about directed graphs? In this case edges from B to A affect nothing and you can omit them from discussion. The picture clearly shows an undirected graph and the fact that edges from B to A are considered reaffirms that. – n. m. could be an AI Nov 30 '15 at 10:00
  • @n.m. Of course I'm *not* talking about a directed graph.....Why would I suddenly start speaking about directed graphs if everything here is undirected????? But also in the undirected version you'll only find 2 edges disjoint path if you take the example I gave.... In case it isn't clear: `a` in A refers to a specific vertex in A. – dingalapadum Nov 30 '15 at 10:04
  • @dingalapadum If you are talking about undirected graphs, then this sentence "Each vertex in B is connected to a" means that a is connected to n vertices in B, which is fine and dandy as long as n=1 (remember we assume k=1). – n. m. could be an AI Nov 30 '15 at 10:05
  • @n.m. Ah ok, I see where I misunderstood. My mistake, I was talking about "at least k" not "exactly k". Yes, if it is "exactly k", then I guess you could have `n` edge-disjoint paths.. My line of thought was "having more than k, implies k", that's why I implicitly assumed it does not have to be "exactly k". If "exactly" is meant, then it should say so explicitly in my opinion.... – dingalapadum Nov 30 '15 at 10:12
  • @dingalapadum hm yes I assumed it"s exactly k throughout. – n. m. could be an AI Nov 30 '15 at 10:53
  • Well if each vertex has exactly k neighbours, then "every regular bipartite graph has a perfect matching" and therefore the number of paths in question is n. If it's at least k neighbours, then paradoxically the resulting number of paths can be less than n. – n. m. could be an AI Nov 30 '15 at 11:32

1 Answers1

1

Also each vertices in set A have k edges to set B and each vertices in set B have k edges to set A.

=> There exist at least k vertices in A and there exist at least k vertices in B. (I)

Now we use:

There is a special vertex s that has edges to all vertices to set A, and a special vertex t that has edges to all vertices in B.

(which we'll call (II)) to show there must be at least k edge disjoint path from s to t.

Consider the following removal-process:

  1. Go from s to a vertex v_a in A.

  2. Go from v_a to a vertex v_bin B.

  3. Go from v_b to t.

  4. Remove all the edges along this path (to make sure we are not reusing them later on)

Note: one such removal round corresponds to exactly a path from s to t.

Now: we can repeat this removal-process at least k times. Why?

Because after k-1 rounds, there must remain at least one vertex v_a_last in A because of (I). This vertex can be reached from s because of (II). This vertex v_a_last must have at least one adjacent vertex v_b_last in B which we have not come along yet (v_a_last has k neighbors in B but we have come across at most k-1 of them so far since we have only made k-1 removal-rounds so far). Since we haven't come along v_b_last so far, the edge from v_b_last to t must still be in the graph. Hence in round k we can go from s to v_a_last to v_b_last to t which is the k-th edge-disjoint paths from s to t.

dingalapadum
  • 2,077
  • 2
  • 21
  • 31