\(\ \ \ \ c_{lr}\ :\ (id,\ !\ +)\ :\ \#(nil,\ last\ 0)\ ([1\ 3\ 6\ 10],\ [5,11,18,26])\)
\(= c_{lr}\ :\ (id,\ !\ +)\ ([1,3,6,10],\ [(5,10)\ (11,10)\ (18,10)\ (26,10)])\)
(If I had to read this out in words I'd say that apparently:
"... when applied to two vectors will leave the left vector untouched but will
add the last entry on the left to each entry on the right. For example,
\((h_{scan} +) ([1 3], [3 7])\)
= (id, +) : \#(nil, last 0) ([1 3], [3 7])\)
= (id, +) ([1 3], [(3, 3) (7, 3)])\)
= (id [1 3], ! + [(3, 3) (7, 3)]\)
= ([1 3], [6 10])\)
\(g_{broad} = (id, !other) : (nil, \#corr) \)
This pre-adjust "function can be used to compute broad with any balanced division on vectors including \(d_{lr}\) or \(d_{eo}\)".
\(... (id,!loc) : \#(nil, (last 0)), ...\)
"The (last 0) communication used above implies broadcast. It can however be replaced by correspondent communication ... by introducing a new variable and making the broadcasted value available at all entries (as in 4.8)
\(... loc : \# ! corr ... \)
\(sort = PDC(d_{lr},c_{lr},id, loc:\#!mirr, atom?, id) loc = !nest : (!min : !max) nest = PDC(d_{lr},c_{lr},(!min : !max) : \# ! corr, id, atom?, id) \)
! + : #(last 0)
"When applied to two vectors will fetch the last entry of the left subvector and add (+) it to the first entry of the right subvector... thus will only effect the value of the first entry of the right subvector.
\(\mu (Q,R)\ =\ loc\ :\ \#(rowbr\ k)\ :\ \#(colbr\ 0)(Q,\ R)\)
(colbr for column-wise broadcast). The explanation:
"When .. #(colbr 0) is applied to (Q,R), a matrix, say Q' is returned where
Q'(i,j) = ( Q(i,j), R(0,j) )thus broadcasting the values of row zero of R into a tuple in each cell of the Q' matrix so that later operations can use it.