Thu Sep 17 14:30:11 CEST 2009

Matrix combinators

Interesting how not trying to optimize prematurely makes the matrix
code look quite simple.

Because the matrix structure can be completely eliminated at compile
time, the only thing that remains is the data-flow dependencies the
algorithms introduce (i.e. pivoting makes choices wrt. dependencies
where the goal is to optimize for better numerical stability).

What I wonder is if it's possible to reconstruct some grid operations
from the bulk of the data flow network.  I.e. if the higher order
operations as I've specified them now can be used to map to some
intermediate language that _doesn't_ get rid of the grouping
relations (i.e. to recover loops from the flat code).  From afar this
does look like it's not a good idea, as it creates an artificial
search problem.

But.. Tagging the nodes with this information might make
reconstruction easier..