  Maximally recoverable codes are codes designed for distributed storage which
combine quick recovery from single node failure and optimal recovery from
catastrophic failure. Gopalan et al [SODA 2017] studied the alphabet size
needed for such codes in grid topologies and gave a combinatorial
characterization for it.
  Consider a labeling of the edges of the complete bipartite graph $K_{n,n}$
with labels coming from $F_2^d$ , that satisfies the following condition: for
any simple cycle, the sum of the labels over its edges is nonzero. The minimal
d where this is possible controls the alphabet size needed for maximally
recoverable codes in n x n grid topologies.
  Prior to the current work, it was known that d is between $(\log n)^2$ and
$n\log n$. We improve both bounds and show that d is linear in n. The upper
bound is a recursive construction which beats the random construction. The
lower bound follows by first relating the problem to the independence number of
the Birkhoff polytope graph, and then providing tight bounds for it using the
representation theory of the symmetric group.
