Sun Jan 27 22:11:52 CET 2013

Composition of structure: commutation of space and time combinators

Problems: how to individually name dimensions?  

What I'm looking at is loop nesting:
- state machine threading the time dimension (i.e. filter)
- state machine threading the space dimension (summation of output of a couple of filters)
- any other form of nesting

Each "feedback" operation stores state at a particular loop level.
How to identify this syntactically?

Whether these levels commute depends on the commutation of the
operations used.  For summation there is no problem.

Example: sum a bank of integrators (summers).

  signals s_n(t)  n : 1..N   t : 1..T

  the integrators sum each individual signal into N integrated streams
  the output at any particular moment in time is the "spatial" integral.

  the trouble now is: when I use the `feedback' mechanism to implement
  the integrators, does the feedback correspond to the time or space

This is all quite simple when all multi-dimensionality is named
explicitly.  It is probably safe to assume that state feedback always
refers to the inner-most loop.

A more concrete example:

 for t in Time:
   bus = 0;
   for f in Freqs:
     bus += osc(f)