"david alis" <[EMAIL PROTECTED]> wrote:
> Concerning the behaviour of insert / when the argument has one item.
>
> e.g.
>
>    u/  i.1 4

> In other words, when k = 1 then
>
> u/y <-> (u/1{.y) u (u/1}.y)
>
> But this is not what happens now:
>
> u =. 0:
> y =. i. 1 4
>
> u/y
> 0 1 2 3
>
>    (u/1{.y) u (u/1}.y)  NB.
> |domain error
> |   (u/1{.y)u(    u/1}.y)

The definition you quote above is informal; it should be obvious from
the meaning of / that this identity can only hold for verbs that are
associative, such as [ ] + , ,&.> but not - % { etc.
  (-/2 3 4) <-> (2-3-4) <-> (2-(3-4)) <-> 33
but this is not the same as (-/2 3)-(-/4) <-> ((2-3)-4) <-> _5 for example.

Also, that definition is only meaningful in verbs for which an
identity function is defined.

This definition is also recursive, it cannot be used inductively
without the starting point 'if 1=#y, y -: u/y'
(In the example you give above, 'u/y' is the same as its component 'u/1{.y',
so any kind of recursive derivation would otherwise recurse infinitely).

This identity is not meant to define the behavior of /
Rather, it illustrates how / behaves on a certain subset of 
well-behaved verbs (and how this definition handles the trivial
cases if such verbs include an identity function).

-- Mark D. Niemiec <[EMAIL PROTECTED]>

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to