|
Tags: Mobile edit Mobile web edit |
(One intermediate revision by the same user not shown) |
Line 1: |
Line 1: |
| The Falkoff/Iverson quote, while providing illuminating historical context, is a bit misleading—the reduction in inner product does not collapse any axes relative to the result shape, as it is applied only within each enclosure/box of the outer product. Rather, in <syntaxhighlight lang=apl inline>f/¨ (⊂[⍴⍴x]x)∘.g ⊂[1]y</syntaxhighlight> the enclosure of one axis of each argument, prior to the outer product operation, is responsible for the collapsing of dimensions.
| |
|
| |
| Equivalently from a slightly different angle, if we use the model <syntaxhighlight lang=apl inline>X⊂⍤(f/)⍤g⍤1⍤1 99⊢Y⍉⍨¯1⌽⍳≢⍴Y</syntaxhighlight>, the collapsing of dimensions is due more generally to <syntaxhighlight lang=apl inline>⊂⍤…⍤g⍤1</syntaxhighlight> mapping two vectors to a scalar. Clearly the same holds for <syntaxhighlight lang=apl inline>⊂⍤g⍤1</syntaxhighlight>, i.e., the same expression with the reduction removed.
| |
|
| |
| [[User:⊂⍺m|⊂⍺m]] ([[User talk:⊂⍺m|talk]]) 22:45, 25 June 2023 (UTC)
| |
|
| |
| :Iverson's model may have been more like <syntaxhighlight lang=apl inline>f⌿⍤(1-≢⍴X)⊢ X g⍤¯1⍤1 99⊢ Y</syntaxhighlight>, so that the flat intermediate result does have this extra axis. Maybe with a transpose like your second example, who knows. In a nested APL, <syntaxhighlight lang=apl inline>g¨</syntaxhighlight> should be used instead of <syntaxhighlight lang=apl inline>g</syntaxhighlight>, but I think with this modification it correctly describes the semantics other than maybe evaluation order. I would say even in your examples there is an extra axis, but it's hidden away by a layer of nesting; forcing everything to be flat makes it literally an array axis at some point. --[[User:Marshall|Marshall]] ([[User talk:Marshall|talk]]) 01:05, 26 June 2023 (UTC)
| |
|
| |
| ::You’re right, he may have described it in some different way conceptually—after all, the notation for it preceded any implementation. I was trying to save other APL novices the bit of confusion this had caused me, but upon reflection, the description is pretty vague anyway.
| |
| ::[[User:⊂⍺m|⊂⍺m]] ([[User talk:⊂⍺m|talk]]) 03:28, 26 June 2023 (UTC)
| |
|
| |
| :::Yep, I can see how you'd get to that point. Thanks for taking the time to edit, I see lots of improvements! --[[User:Marshall|Marshall]] ([[User talk:Marshall|talk]]) 19:11, 27 June 2023 (UTC)
| |
|
| |
| ::::You bet! Also, I had meant to create this as the Discussion page for Outer Product. I’ll go ahead and copy the initial question and response to that page so others can see it. --[[User:⊂⍺m|⊂⍺m]] ([[User talk:⊂⍺m|talk]]) 01:16, 29 June 2023 (UTC)
| |
|
| |
| == Internship? == | | == Internship? == |
|
| |
|
| Based on your self-description, you might be interested in an internship at Dyalog. If so, then feel free to write an email to careers@dyalog.com — if not, then feel free to ignore, and I won't bother you about it again. | | Based on your self-description, you might be interested in an internship at Dyalog. If so, then feel free to write an email to careers@dyalog.com — if not, then feel free to ignore, and I won't bother you about it again. |
| | |
| | : Yes, I think this would be a great hands-on learning opportunity. Thank you for reaching out with the suggestion, I appreciate it. I will follow up with an email to them shortly and we will see what comes of it. [[User:⊂⍺m|⊂⍺m]] ([[User talk:⊂⍺m|talk]]) 20:15, 21 July 2023 (UTC) |