From: Diamond, Mark on
Brilliant. Thank you, both Raffy and Ray.


"Ray Koopman" <koopman(a)sfu.ca> wrote in message
news:ho76uf$sm$1(a)smc.vnet.net...
> On Mar 20, 12:46 am, "Diamond, Mark" <d...(a)dot.dot> wrote:
>> Thank you Ray.
>>
>> Have you any thoughts about the second question?
>>
>> Cheers,
>> Mark
>
> In[1]:=
> makesymat[n_] := ToExpression["symat[" <> ToString@n <> "] :=
> Function[" <> ToString(a)Table[
> Which[i > j, SequenceForm["#[[",(i-1)(i-2)/2 + j,"]]"],
> i < j, SequenceForm["#[[",(j-1)(j-2)/2 + i,"]]"],
> True, "1"], {i,n},{j,n}] <> "]" ]
>
> In[2]:= makesymat[4]
>
> In[3]:= ?symat
>
> Global`symat
>
> symat[4] := {{1, #1[[1]], #1[[2]], #1[[4]]},
> {#1[[1]], 1, #1[[3]], #1[[5]]},
> {#1[[2]], #1[[3]], 1, #1[[6]]},
> {#1[[4]], #1[[5]], #1[[6]], 1}} &
>
> In[4]:= symat[4]@{a,b,c,d,e,f}
>
> Out[4]= {{1, a, b, d},
> {a, 1, c, e},
> {b, c, 1, f},
> {d, e, f, 1}}
>