simplification of exponential



> (%i1) eq: 4^x*(2^x-1)=4*(2^x+1);
> (%o1) (2^x-1)*4^x=4*(2^x+1)

> Now, with radcan, it works fine
> (%i2) subst(x=log(y)/log(2),eq),radcan;
> (%o2) y^3-y^2=4*y+4

There is a way to avoid substitution.

(%i3) radcan(eq), logsimp=false;
(%o3) %e^(3*log(2)*x)-%e^(2*log(2)*x) = 4*%e^(log(2)*x)+4
(%i4) solve(%);
<13 lines of output>

This trick also enables factorization. For example,

(%i5) radcan(36^x-2*6^x+1), logsimp=false;
(%o5) %e^((2*log(3)+2*log(2))*x)-2*%e^((log(3)+log(2))*x)+1
(%i6) factor(%);
(%o6) (%e^(log(3)*x+log(2)*x)-1)^2
(%i7) logcontract(%);
(%o7) (%e^(log(6)*x)-1)^2

I wonder if exp(log(6)*x) can be converted back to 6^x.