You can multiply p1 by p2 in a few seconds. It takes about 5 seconds on
my machine.
do rat(p1*p2)$
Now rearranging the terms and constructing a form that is an algebraic
tree and not "canonical rational expression"
form, which is what ratexpand does, requires a lot of memory. Do you
want to construct the
product, or do you want to compute the length? If so, it is easy to
do: length(ratexpand(p1)) is 1330.
square that and you get 1768900.
I think that a much larger allocation of memory would also do the job
(your message is from GCL),
or using a lisp that automatically allocates more memory, would also work.
RJF