Describir: Program Optimization Using Invariants