Elements of Large-Scale Mathematical Programming Part I: Concepts | Synapse