First off, this is a good question. That said, it's matrix divide because we are "dividing by" a matrix.
But maybe it's easier to illustrate this than explain it: 'A B C'=:ABC=: p:i.3 3 3 ABC%.A 3.92308 4 2.25641 2 1.84615 1.58974 0.923077 _0.410256 _0.974359 5.23077 5 6.23077 6 3.46154 3.23077 2.23077 3.23077 0.923077 _4.30769 _4 _3.64103 _3 _0.615385 0.025641 1.69231 2.02564 4.4359 A+/ .*ABC%.A 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 Compare this with: A%.A 1 0 0 0 1 0 0 0 1 In other words, %. would not work for higher ranked arrays if its left rank was 2. I hope this makes sense, -- Raul On Mon, May 16, 2022 at 1:20 PM Adrien Mathieu <adrien.lc.math...@gmail.com> wrote: > > Hello, > > I was wondering why the matrix divide (dyadic %.) had rank _ 2. It would > seem logical to me that it should be 2 2, since it's *matrix* division > (and, indeed, the right rank is 2), and I find it hard to picture what a > 3-dimentional array divided by a 2-dimentional array would be. Is it a > mistake on NuVoc? > > Adrien Mathieu > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm