# Question:solve z^(1+I)=1

## Question:solve z^(1+I)=1

```solve(z^(1+I) = 1, z, allsolutions = true);
exp((1 + I) Pi _Z1)
getassumptions(_Z1);
{_Z1::integer}
```

Since this is a single-valued power function, there is only a finite number of solutions. evalc correctly gives exp(-2*Pi) for _Z1=-1.

evalf doesn't help here regardless of the level of precision, I think because it always generates a non-zero imaginary part for exp(-(1+I)*Pi):

```seq(print(evalf(evalf[d]((exp((-1-I)*Pi))^(1+I)))), d = 10 .. 3010, 300);
-12
0.001867442732 - 1.361179007 10    I
-312
0.001867442732 - 1.674479874 10     I
-610
1.000000000 + 2.386571217 10     I
-910
1.000000000 + 8.502509375 10     I
-1212
0.001867442732 - 1.646483173 10      I
-1514
0.001867442732 - 4.556560265 10      I
-1812
0.001867442732 - 1.287611101 10      I
-2112
0.001867442732 - 1.072784224 10      I
-2410
1.000000000 + 8.162729354 10      I
-2713
0.001867442732 - 7.375390371 10      I
-3010
1.000000000 + 1.988371005 10      I
```

Unrelated, but it would be nice to have a simple way to display lists/matrices with specified width and alignment.

﻿