RealRange is a Maple program -- it analyzes the input parameters; ComplexRange is not a program.
In this example, the two endpoints are equal and it simplifies to zero.
Here there is no automatic simplification:
| (2) |
The automatic simplification is triggered after the conversion happens:
>
|
|
A ComplexRange is an object more general than a RealRange in that it contains it as a particular case. When working with a ComplexRange or its RealRange representation, three typical constructions are used. Note the corresponding notation in the following examples. The conversion (when possible) always returns a sequence of two elements.
Case 1: a ComplexRange is itself an object
>
|
|
| (4) |
>
|
|
| (5) |
Case 2: a construction indicating that z has values in some ComplexRange, expressed using the :: operator
| (6) |
>
|
|
| (7) |
Case 3: a construction indicating that z has values in some ComplexRange, expressed using the in operator
| (8) |
>
|
|
| (9) |
Note that, unlike ComplexRange, RealRange requires numerical arguments, so when the former has not this kind of argument the conversion is not possible.
| (10) |
Without numerical arguments, this cannot be converted:
>
|
|
| (11) |
Expressing complex and real ranges as relations
>
|
|
| (12) |
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
| (15) |
ComplexRanges are used for example to express the branch cuts of mathematical functions
>
|
|
| (16) |
When you input or , it is implicitly assumed that . This is used to simplify the notation in the output of some conversions. For example,
>
|
|
| (17) |
>
|
|
>
|
|
>
|
|
| (20) |