Artifact 5c722ab6bff95b4d9817e1f1b8a61f4d822c40eb45430dab2ddf90905eb11aca:
- Executable file
r37/packages/dipoly/dipvars.red
— part of check-in
[f2fda60abd]
at
2011-09-02 18:13:33
on branch master
— Some historical releases purely for archival purposes
git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/trunk/historical@1375 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 594) [annotate] [blame] [check-ins using] [more...]
module dipvars; %/* Determine distributive polynomial variables in a prefix form*/ %/*Authors: R. Gebauer, A. C. Hearn, H. Kredel*/ expr procedure dipvars u; % /* Returns list of variables in prefix form u*/ dipvars1(u,nil); expr procedure dipvars1(u,v); if atom u then if constantp u or u memq v then v else u . v else if idp car u and get(car u,'dipfn) then dipvarslist(cdr u,v) else if u memq v then v else u . v; expr procedure dipvarslist(u,v); if null u then v else dipvarslist(cdr u,union(dipvars car u,v)); endmodule; end;