> For the more general problem, below, solve() actually executes for a
> very long time before coming back with a null solution, using your
> current definition of ebaksubst :
The algorithm used by algys just isn't up to this task; the only workaround I know is to use the grobner package.
The optional package to_poly_solve provides a convenient way to call grobner:
(%i21) sol : to_poly_solve([(x-a)^2 + (y-b)^2 = r1^2,(x-c)^2 + (y-d)^2 = r2^2], [x,y], 'use_grobner = true)$
Specialize:
(%i22) subst([a=0,b=0, c=1/2,d=1/2,r1=1,r2=1], sol);
(%o22) %union([x=1/4-sqrt(7)/4,y=sqrt(7)/4+1/4],[x=sqrt(7)/4+1/4,y=1/4-sqrt(7)/4])
Specialize--oops, not OK for all values of the parameters:
(%i23) subst([a=0,b=0, c=0,d=0,r1=1,r2=1], sol);
expt: undefined: 0 to a negative exponent.
For to_poly_solve to autoload like this, you'll need Maxima 2.27, I think