Equality Saturation, Program Optimization, Rewrite Systems, Compiler Backends