In MIT's 6.042j course assignment 6. In problem 5, it is required to prove that a butterfly network has congestion of \sqrt{N}. If we have an 8-input butterfly network and let's assume that all of the data , from all the input nodes, is sent to output 0. Won't this make a congestion of 8 at the switch at level 3 row 000? Doesn't this contradict with the congestion being \sqrt{N}? Is there something I am missing here?
2025-01-13 07:33:42.1736753622
Proving the congestion of a butterfly network.
1.5k Views Asked by Essam Ewaisha https://math.techqa.club/user/essam-ewaisha/detail At
1
There are 1 best solutions below
Related Questions in DISCRETE-MATHEMATICS
- Prove that all solutions to the equation x² = x +1 are irrational
- which of the following statements about a group are true?
- Discrete mathematics, sets, increasing functions
- Give a reason for each step in the following argument
- Logic & Reasoning Question
- $\prod_{i=1}^n (i+n)$ - To what does it converges?
- Help with set builder notation
- Discrete mathematics Sets Relations
- Logical Rules Proof
- $\sum_{k=0}^n {n \choose k} ^{2} = {2n \choose n}$ - Generating function $\sum_{k=0}^\infty \binom nk x^k = (1+x)^n$.
Related Questions in GRAPH-THEORY
- Logic & Reasoning Question
- Category Theory compared with Meta-Grammars (or Hyper-Grammars) in Programming Languages
- Does this have a Euler circuit or a Euler path?
- cycle graph with $10$ v colouring with $11$
- Directed acyclic graph and adjacency matrix
- Why is there, for every language L in NP, a Turing machine with polynomial memory that also accepts L?
- How to prove vertex basis?
- Scheduling and coloring problem
- Chromatic polynomial of dual graphs
- Subdivision of nonplanar graph is nonplanar?
Related Questions in NETWORK-FLOW
- How many “cuts” does a flow network have?
- verifying minimum capacity of cut
- Explain how to find a max $(s-t)$ flow in a network
- Network flow as a linear/integer programming problem with special conditional constraints
- Books on Multi-Commodity Minimum Cost Flow Problems
- Linear programming and shortest path
- Multi-commodity flow problem. What if only one commodity? (Context: column generation)
- Decompose a flow network into several trivial flows
- Reduction to a max flow problem from a sudoku like puzzle
- Max Flow - Changing the capacity of an edge
Trending Questions
- Induction on the number of equations
- How to convince a math teacher of this simple and obvious fact?
- Refuting the Anti-Cantor Cranks
- Find $E[XY|Y+Z=1 ]$
- Determine the adjoint of $\tilde Q(x)$ for $\tilde Q(x)u:=(Qu)(x)$ where $Q:U→L^2(Ω,ℝ^d$ is a Hilbert-Schmidt operator and $U$ is a Hilbert space
- Why does this innovative method of subtraction from a third grader always work?
- What are the Implications of having VΩ as a model for a theory?
- How do we know that the number $1$ is not equal to the number $-1$?
- Defining a Galois Field based on primitive element versus polynomial?
- Is computer science a branch of mathematics?
- Can't find the relationship between two columns of numbers. Please Help
- Is there a bijection of $\mathbb{R}^n$ with itself such that the forward map is connected but the inverse is not?
- Identification of a quadrilateral as a trapezoid, rectangle, or square
- A community project: prove (or disprove) that $\sum_{n\geq 1}\frac{\sin(2^n)}{n}$ is convergent
- Alternative way of expressing a quantied statement with "Some"
Popular # Hahtags
real-analysis
calculus
linear-algebra
probability
abstract-algebra
integration
sequences-and-series
combinatorics
general-topology
matrices
functional-analysis
complex-analysis
geometry
group-theory
algebra-precalculus
probability-theory
ordinary-differential-equations
limits
analysis
number-theory
measure-theory
elementary-number-theory
statistics
multivariable-calculus
functions
derivatives
discrete-mathematics
differential-geometry
inequality
trigonometry
Popular Questions
- How many squares actually ARE in this picture? Is this a trick question with no right answer?
- What is the difference between independent and mutually exclusive events?
- Visually stunning math concepts which are easy to explain
- taylor series of $\ln(1+x)$?
- Determine if vectors are linearly independent
- What does it mean to have a determinant equal to zero?
- How to find mean and median from histogram
- Difference between "≈", "≃", and "≅"
- Easy way of memorizing values of sine, cosine, and tangent
- How to calculate the intersection of two planes?
- What does "∈" mean?
- If you roll a fair six sided die twice, what's the probability that you get the same number both times?
- Probability of getting exactly 2 heads in 3 coins tossed with order not important?
- Fourier transform for dummies
- Limit of $(1+ x/n)^n$ when $n$ tends to infinity
I had the same issue doing this 6.042 question, and I think it's to do with a misunderstanding on what congestion means. However, first, I notice a problem with your question. As stated in the book $N = 2^n$, and congestion is $\sqrt{N}$ if n is even, or $\sqrt{{N \over 2}}$ if n is odd.
If we have an 8-input butterfly network, this works out to $N = 2^3$, making n odd, so the congestion should be $\sqrt{{8 \over 2}} = 2$.
OK, so what is congestion? As you mentioned in your comment, it consists of a routing, but in your question you incorrectly assume all inputs are going to the same output. This is not how routing works, a routing is a permutation (I believe this can also be called a total bijective function) - that is every input corresponds to one and only one output. For example here is a routing for your 8-input butterfly network:
If you were to draw that out you'd notice that congestion for this routing would be 1, because each switch has at most 1 path passing through it. However, congestion is also defined as the worst possible routing, so consider this partial routing;
I've only drawn out two paths in solid, arrow-headed lines, to illustrate the point. The paths shown are:
(note: I think this is complicated enough without adding in binary notation, so my notation for switches is $s_{level, row}$ where level is the 'column' of switches)
Notice that switches $s_{1, 0}$ and $s_{2, 0}$ both have two paths passing through them so the congestion is 2.
Notice also, that the congestion cannot get any worse than this. Switch $s_{1, 0}$ has one unused output edge, $(s_{1, 0}, s_{2, 2})$, but it is already using both of its available inputs from $i_0$ and $i_4$, so it cannot possibly have another path passing through. Similarly $s_{2, 0}$ has one unused input edge, $(s_{1, 2}, s_{2, 0})$, but it is already using both of its outputs to $o_0$ and $o_1$ - and as I mentioned earlier, a routing is a permutation, so no further routes can be assigned to these outputs in this permutation.
As mentioned in the 6.042 question hints, the total possible paths coming in to a switch at level i is $2^i$, and the total possible paths going out are $2^{n-i}$. Plugging these values in for $s_{1, 0}$ we can see there are $2^i = 2^1 = 2$ possible paths coming in and $2^{n-i} = 2^{3-1} = 4$ paths going out. The congestion of the switch, then is the minimum of these two values, again because routing is one-to-one.
So now we have to prove that;
$max( min(2^i, 2^{n-i})\ \forall\ i \in [0, n]) = \sqrt{{N \over 2}}\ or\ \sqrt N $
First, let's look at the first few values of n, at each level seeing what the total number of possible incoming and outgoing paths are.
As you can see, the value of the exponent on the incoming paths is an increasing sequence, $[0, n]$ e.g. $(2^0, 2^1, 2^2, 2^3, 2^4, ..., 2^n)$, and the outgoing paths is a decreasing sequence of $[n, 0]$ e.g. $(2^n, 2^{n-1}, 2^{n-2}, ..., 2^0)$. The point where $min(2^i, 2^{n-i})$ is at its greatest value will be halfway. Since congestion is dealt in whole numbers this makes it ${n \over 2}$ if n is even and ${(n-1) \over 2}$ if n is odd.
This then explains why the congestion is $\sqrt N$ where n is even, since $N = 2^n$, so by simple algebra $2^{{n \over 2}} = \sqrt {2^n} = \sqrt N$. Similarly where n is odd $2^{n-1 \over 2} = 2^{n \over 2^2} = \sqrt{2^n \over 2} = \sqrt{N \over 2}$.