That's not what it simplifies to using a real or complex number domains for x, it's abs(x). CAS need type inference assumptions and/or type qualifiers to be more powerful.
Edit: Fixed stuff.
Edit: Fixed stuff.
so sqrt(square(-i)) = +-i, one of which is x
Mathematica returns True. And any middle schooler will also tell you it's true.
The only reasonable interpretation of "infinitely small" is that it's zero.
So no, it’s not unconditionally correct either.
But consider sqrt(i) = sqrt(exp(i\pi/2)). That's exp(i\pi/4). Your rule would give 1 as the answer. It's not helpful for a serious math system to give that answer to this problem.
When I square 1 I don't get i.