Rewrite recompose with foldl'
Wirte some haskell-coq-pseudo code
Rewrite to matrix multiplication