Seidel’s Algorithm: \text{APD}(A) (1995)
Using A and Z, construct graph G' where every edge represents 1 or 2 hops in G:
Step 2: Define Adjacency Matrix B B_{i,j} = \begin{cases} 1 & \text{if } i \neq j \text{ and } (A_{i,j} = 1 \text{ or } Z_{i,j} > 0) \\ 0 & \text{otherwise} \end{cases}
Geometric Interpretation:
Key Distance Relation (Distance Halving):
If d_G(i,j) is the distance in G, the distance T_{i,j} in G' satisfies: T_{i,j} = \left\lceil \frac{d_G(i,j)}{2} \right\rceil
Every recursive step halves the graph’s diameter, yielding depth \lceil \log_2 n \rceil!
Base Case Check: Diameter \le 2
If B_{i,j} = 1 for all i \neq j (all pairs are \le 2 hops away in G), return directly: D = 2B - A
Since T_{u,v} = \lceil d_G(u,v) / 2 \rceil, true distance in G is either 2 T_{u,v} (even) or 2 T_{u,v} - 1 (odd).
| Matrix | Dimensions | Computation / Operation | Purpose / Meaning |
|---|---|---|---|
| A | n \times n | Given graph adjacency matrix | A_{u,v} = 1 if (u,v) \in E, 0 otherwise |
| Z | n \times n | Fast Matrix Multiply: Z = A^2 | $Z_{u,v} = $ number of length-2 paths |
| B | n \times n | Boolean OR: A \lor (Z > 0) | Adjacency of squared graph G' (\text{diam} \le \lceil \text{diam}/2 \rceil) |
| T | n \times n | Recursive call: T = \text{APD}(B) | Shortest distances in G': T_{u,v} = \lceil d_G(u,v)/2 \rceil |
| X | n \times n | Fast Matrix Multiply: X = T \cdot A | Sum of neighbor distances: X_{u,v} = \sum_{k \in N(v)} T_{u,k} |
| D | n \times n | Parity threshold test via X | Final distance matrix d_G(u,v) \in \{2T, 2T-1\} |
Work per Recursive Level
At each recursive invocation on graph G:
Recursion Depth: Diameter is halved at each step: \text{depth} \le \lceil \log_2 n \rceil
Overall Time Complexity: T(n) = T(n, \text{diam}/2) + 2 \cdot O(n^\omega) = \mathbf{O(n^\omega \log n)} = \tilde{O}(n^{2.372})
Result: Solves All-Pairs Shortest Paths in truly subcubic time!
Can we find a maximum matching in parallel in O(\text{polylog}(n)) time using \text{poly}(n) processors (\text{NC} class)?
The Isolation Lemma (Mulmuley, Vazirani, Vazirani — 1987)
Let S_1, S_2, \dots, S_k be an arbitrary collection of subsets of a ground set E = \{e_1, \dots, e_m\}. Assign each element e_i a weight w_i \in \{1, 2, \dots, 2m\} chosen independently and uniformly at random. The weight of a subset is w(S) = \sum_{e \in S} w(e).
Then, with probability at least 1/2, there is a unique subset of minimum weight: \Pr\big[\, \text{Unique } S \in \mathcal{F} \text{ minimizes } w(S) \,\big] \ge 1 - \frac{m}{2m} = \frac{1}{2}
For a fixed element x \in E, define the threshold weight \alpha(x): \alpha(x) = \min_{S \in \mathcal{F}, x \notin S} w(S) - \min_{S \in \mathcal{F}, x \in S} \big(w(S) - w(x)\big)
Notice that \alpha(x) depends only on the weights of elements other than x!
Element x is ambiguous if there exist two min-weight sets S_1, S_2 such that x \in S_1 and x \notin S_2.
This happens if and only if w(S_1) = w(S_2), which forces: w(x) = \alpha(x)
Since w(x) is chosen uniformly from \{1, \dots, 2m\} independently of \alpha(x): \Pr[w(x) = \alpha(x)] \le \frac{1}{2m}
By the Union Bound over all m elements: \Pr[\exists \text{ any ambiguous element}] \le \sum_{x \in E} \frac{1}{2m} = m \cdot \frac{1}{2m} = \frac{1}{2}
If no element is ambiguous, the minimum-weight set must be unique! \quad\blacksquare
Let G = (U, V, E) be a bipartite graph with |U| = |V| = n, and let m = |E|.
The Bipartite Edmonds Matrix B
Define the n \times n matrix B where each edge (u_i, v_j) \in E is assigned a variable x_{ij}: B_{ij} = \begin{cases} x_{ij} & \text{if } (u_i, v_j) \in E \\ 0 & \text{otherwise} \end{cases}
By the Leibniz formula: \det(B) = \sum_{\sigma \in S_n} \text{sgn}(\sigma) \prod_{i=1}^n B_{i, \, \sigma(i)}
Exact 1-to-1 Correspondence: Every valid permutation \sigma with \prod_{i=1}^n B_{i, \sigma(i)} \neq 0 is precisely a perfect matching M = \{(u_i, v_{\sigma(i)})\}_{i=1}^n!
No Pfaffians or cycle covers needed: The determinant directly sums over perfect matchings \mathcal{M}!
Apply the Isolation Lemma to the family of all perfect matchings \mathcal{M}:
Assign random integer weights w_{ij} \in \{1, 2, \dots, 2m\} independently to each edge.
Substitute x_{ij} = 2^{w_{ij}} into the Edmonds matrix: \det(B) = \sum_{M \in \mathcal{M}} \text{sgn}(M) \prod_{(u_i, v_j) \in M} 2^{w_{ij}} = \sum_{M \in \mathcal{M}} \text{sgn}(M) \, 2^{w(M)}
Let W = \min_{M \in \mathcal{M}} w(M). With probability \ge 1/2, min-weight matching M^* is unique: \det(B) = \text{sgn}(M^*) \cdot 2^W + \sum_{M \neq M^*} \text{sgn}(M) \, 2^{w(M)} = 2^W \cdot \big(\text{odd integer}\big) \neq 0
Key Fact: The lowest non-zero bit of \det(B) is exactly 2^W!
How do we test whether edge e = (u_i, v_j) belongs to the unique min-weight matching M^*?
Edge (u_i, v_j) \in M^* if and only if G \setminus \{u_i, v_j\} has a matching of weight W - w_{ij}: \frac{\det(B_{/\{i, j\}}) \cdot 2^{w_{ij}}}{2^W} \text{ is odd} \quad \big(B_{/\{i,j\}} \text{ deletes row } i, \text{ column } j\big)
Cramer’s Rule & The Adjugate Matrix: The sub-determinant \det(B_{/\{i,j\}}) is the (i,j)-cofactor: (B^{-1})_{ji} = \frac{(-1)^{i+j} \det(B_{/\{i, j\}})}{\det(B)}
The MVV Parallel Speedup: Instead of computing m separate determinants, compute a single matrix inverse B^{-1} in parallel! (u_i, v_j) \in M^* \iff \frac{(B^{-1})_{ji} \cdot \det(B) \cdot 2^{w_{ij}}}{2^W} \text{ is odd}
Parallel Complexity: Inverting an n \times n matrix is in \text{NC}^2 \implies Parallel Bipartite Matching is in \text{RNC}^2!
Answer each question based on today’s concepts:
Game Theory Foundations & von Neumann’s Minimax Theorem — strategic representations, extensive-form/tree games, the game of NIM, bimatrix games, Nash equilibria, and von Neumann’s Minimax Theorem.
CS G526: Advanced Algorithms & ComplexityTulasimohan Molli