Question: How can I validate if an object is of a certian class? I currently use 

```
get_class($obj) == 'User';

```

But it may look like `\KM\User` when I am elsewhere? I think this way maybe abit prone to developer error. Is there something like:

```
compare_class($obj1, User);
// or maybe
classof($obj) == User;

```

Answer: 
Taking the Square root of a general complex number can be done with the basic arithmetic operations on real numbers (plus taking square root of reals): <http://www.mathpropress.com/stan/bibliography/complexSquareRoot.pdf> (one technique is to utilise De Moivre's theorem: Any complex number a + bi can be written as `r(cos θ + i sin θ)` where

```
r = sqrt(a^2 + b^2),  cos θ = a/r, sin θ = b/r

```

**Update**: the formula `r(cos θ + i sin θ)` is originaly due to Euler, whereas De Moivre's theorem is

```
(a + ib)ⁿ = rⁿ(cos nθ + i sin nθ)

```
You are confused about the math. Square root of -25 is square root of 25\*(-1) and that is square root of 25 \* square root of -1 and that is 5i. Real part of that number is 0.

If you want the 5, just check for the sign of the number to be "rooted" and change it if it is negative.