  Consider a Gaussian multiple-input multiple-output (MIMO) multiple-access
channel (MAC) with channel matrix $\mathbf{H}$ and a Gaussian MIMO broadcast
channel (BC) with channel matrix $\mathbf{H}^{\mathsf{T}}$. For the MIMO MAC,
the integer-forcing architecture consists of first decoding integer-linear
combinations of the transmitted codewords, which are then solved for the
original messages. For the MIMO BC, the integer-forcing architecture consists
of pre-inverting the integer-linear combinations at the transmitter so that
each receiver can obtain its desired codeword by decoding an integer-linear
combination. In both cases, integer-forcing offers higher achievable rates than
zero-forcing while maintaining a similar implementation complexity. This paper
establishes an uplink-downlink duality relationship for integer-forcing, i.e.,
any sum rate that is achievable via integer-forcing on the MIMO MAC can be
achieved via integer-forcing on the MIMO BC with the same sum power and vice
versa. Using this duality relationship, it is shown that integer-forcing can
operate within a constant gap of the MIMO BC sum capacity. Finally, the paper
proposes a duality-based iterative algorithm for the non-convex problem of
selecting optimal beamforming and equalization vectors, and establishes that it
converges to a local optimum.
