radcan assumes |z| --> inf, so your assumption that |z|<1/2 won't work.
Maybe here's a workaround.
ratsubst(1/z,w,radcan(subst(1/w,z, expression)));
RJF
Raymond Toy wrote:
> Assume |z| <= 1/2, how can I get maxima to simplify
>
> (sqrt(4*z^2-4*z+1)-1)/(2*z^2-2*z)?
>
> ratsimp and factor don't really do anything. radcan does, but the
> answer is wrong.
>
> If factor looked inside the sqrt, it would see that 4*z^2-4*z+1 is
> (2*z-1)^2. If we manually do that, maxima notices:
>
> (sqrt((2*z-1)^2)-1)/(2*z^2-2*z) -> -1/(z-1)
>
> or 1/(1-z), which is what I wanted.
>
> Ray
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>