Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Following after #56 (comment), after further thought, implementing
cis(andcispi) seems dangerous, as our implementation disagrees with the docstring in Base. A few other relevant notes.Of all overloads defined in #56, its complex version is the only function that takes a real number to a complex number (i.e. is specific to
Complex), and it's the only function that violatesf(z') == f(z)'.Its power series representation is
cis(z) = \sum_{n=0}^\infty im^n/n! z^n, so that its coefficients area_n = im^n/n!.However, the
cisoverload we define is actually equivalent tocis2(z) = cis(z * sign(imag(z))), which has the power series representation:cis2(z) = \sum_{n=0}^\infty (sign(imag(z)) im)^n/n! z^n. These are not the same function:This PR removes
cis/cispi. By the above arguments, implementing it was a bug, and this is a non-breaking change.