added optimizer: Transpose pushdown and matrix multiplication reordering