Re: Variant of inner Product ...

• To: mathgroup at smc.vnet.net
• Subject: [mg56747] Re: [mg56683] Variant of inner Product ...
• From: "Wolf, Hartmut" <Hartmut.Wolf at t-systems.com>
• Date: Thu, 5 May 2005 06:01:29 -0400 (EDT)
• Sender: owner-wri-mathgroup at wolfram.com

```
>-----Original Message-----
>From: =?ISO-8859-1?Q?Detlef_M=FCller?= at smc.vnet.net
To: mathgroup at smc.vnet.net
>[mailto:=?ISO-8859-1?Q?Detlef_M=FCller?= at smc.vnet.net]
>Sent: Wednesday, May 04, 2005 6:33 AM
>Subject: [mg56747] [mg56683] Variant of inner Product ...
>
>Hello,
>
>I have the following to do:
>
>Given
>
>In[1]:= A={1,2,3}; B={{a,b},{c,d},{r,s}};
>
>And a Function f, I like to have
>
>Out[2] = {f[1,a],f[1,b]}+{f[2,c],f[2,d]}+{f[3,r],f[3,s]}
>
>The trial
>
>In[8]:=A={1,2,3}; B={{a,b},{c,d,e},{r,s}};
>In[9]:= Inner[f,A,B]
>Out[9]= f[1,{a,b}]+f[2,{c,d,e}]+f[3,{r,s}]
>
>looks promising,
>but if the Lists in B have the same length, "Inner"
>makes something different:
>
>In[15]:=
>A={1,2,3}; B={{a,b},{c,d},{r,s}}; Inner[f,A,B]
>
>Out[16]= {f[1,a]+f[2,c]+f[3,r],f[1,b]+f[2,d]+f[3,s]}
>
>So for now I have an ugly Table-Construction doing the job,
>but I can't imagine there is no elegant and clear solution
>for this ... any suggestions?
>
>Greetings,
>   Detlef
>
>

Detlef,

your desired expression will be reduced further, because Plus ist Listable. Such I'll show it with CirclePlus:

Observe:

In[38]:= Inner[f, A, B, g]
Out[38]=
{g[f[1, a], f[2, c], f[3, r]], g[f[1, b], f[2, d], f[3, s]]}

Such just use the right stuff for g:

In[39]:= CirclePlus @@ Transpose@Inner[f, A, B, List]
Out[39]=
{f[1, a], f[1, b]}\[CirclePlus]{f[2, c], f[2, d]}\[CirclePlus]{f[3, r],
f[3, s]}

Perhaps this appears simpler (?):

Out[40]= {f[1, {a, b}], f[2, {c, d}], f[3, {r, s}]}