This description uses a narrow definition: The optimizer is the set of routines which decide what execution path the DBMS should take for queries.
MySQL changes these routines frequently, so you should compare
what is said here with what's in the current source code. To
make that easy, this description includes notes referring to the
relevant file and routine, such as
A transformation occurs when one query is changed into another query which delivers the same result. For example, a query could be changed from
SELECT ... WHERE 5 = a
SELECT ...WHERE a = 5
Most transformations are less obvious. Some transformations result in faster execution.