Alternation-Trading Proofs, Linear Programming, and Lower Bounds