From: Raffaele Vitolo <raffaele.vitolo@un...>  20100616 16:46:47

Dear All, I am using reduce for computing Hamiltonian operators for partial differential equations (a task which is basically a symmetry computation), and I'm facing the following problem. I have a list of identifiers {ddx,ddy,ddz,...} which are names of vector fields, introduced with a suitable procedure that has been developed by some Dutch researcher almost 20 years ago. In order to define their components I have to write down something like ddx(0,1):=... ddx(0,2):=... ... ddx(1,1):=... ... ddy(0,1):=... and so on. But reduce is refusing the automatization of the above definitions: if I write something like for i:=1:3 do << for j:=1:n do << part({ddx,ddy,ddz},i)(0,j):=...; >>; >>; I get an error message part({ddx,ddy,ddz},1)(0,1) invalid as assignment I get a similar error even if I define a list like ll:={sin} and I try to do part(ll,1)(x); the error message is part(ll,1) invalid as operator. So I guess that the problem is how to use a list of identifiers as operator names. I'm almost sure that I would manage this if I would know lisp, unfortunately I am a newcomer.. I thank you for any explanation you would provide to me for this trivial question. Best, Raffaele.  Raffaele Vitolo, Dipartimento di Matematica 'E. De Giorgi' Universita' del Salento, via per Arnesano 73100 Lecce ITALY tel.: +39 0832 297425 (office) fax.: +39 0832 297594 home page: http://poincare.unisalento.it/vitolo 