So I came across the
Quantum::Usrn Perl module, and it got me to thinking about square roots of other functions. I'm sure there's some way, as there is with integrating, to find these, but so far I've had to use different methods for each one, along with quite a bit of mathematical intuition.
For instance, sqrt(λx.-x) is λx.ix, and in general, sqrt(λx.ax) is λx.sqrt(a)x. Also, quite obviously, sqrt(λx.x+a) is λx.x+a/2. I found sqrt(λx.ax+b), and it is significantly more complicated, but an interesting property is that it is in the form αx+β, and α is sqrt(a), which leads me to believe that there is some way of methodically finding these, at least for polynomials.
I have a hunch that the solution of sqrt(f) lies somehow in the scalar eigenvalues of f (that is, x where f(x) = x).
This is all fun stuff. I don't know what practical use it has, but I'm sure the dynamical systems folks have done something with it at some point.