Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pow.as_base_exp vs I.as_base_exp; (-1)**e -> I**(2*e) #21396

Open
smichr opened this issue Apr 28, 2021 · 2 comments
Open

Pow.as_base_exp vs I.as_base_exp; (-1)**e -> I**(2*e) #21396

smichr opened this issue Apr 28, 2021 · 2 comments
Labels

Comments

@smichr
Copy link
Member

smichr commented Apr 28, 2021

>>> I.as_base_exp()
(-1, 1/2)
>>> sqrt(I).as_base_exp()
(I, 1/2) <-- could be (-1, 1/4)
skirpichev added a commit to skirpichev/diofant that referenced this issue Apr 29, 2021
@smichr
Copy link
Member Author

smichr commented Apr 30, 2021

I think we can be more canonical about how I is treated:

>>> I**(1/3)*(-1)**(1/4)
(-1)**(1/4)*I**(1/3)  <--- could be (-1)**(7/12) or I*(-1)**(1/12) or I**(5/6)

Rather than keep powers of (-1) separate perhaps (-1)**e should always be written as I**(2*e)

@smichr smichr changed the title Pow.as_base_exp inconsistent with I.as_base_exp Pow.as_base_exp vs I.as_base_exp; (-1)**e -> I**(2*e) Apr 30, 2021
@smichr smichr changed the title Pow.as_base_exp vs I.as_base_exp; (-1)**e -> I**(2*e) Pow.as_base_exp vs I.as_base_exp; (-1)**e -> I**(2*e) Apr 30, 2021
@jksuom
Copy link
Member

jksuom commented Apr 30, 2021

perhaps (-1)e should always be written as I(2*e)

I'm not sure about this. That would introduce I in almost all expressions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants