NUM1 +: NUM2 -> NUM3 NUM1 -: NUM2 -> NUM3 These two operators are the basic way of creating complex numbers. Effectively, they both multiply their second argument by "i" (the positive square root of -1), and then either add the result to (+:) or subtract the result from (-:) the first argument. +: NUM1 -> NUM2 -: NUM1 -> NUM2 As prefix operators, +: and -: are equivalent to unary_+:(NUM1) and unary_-:(NUM1) respectively. unary_+:(NUM1) -> NUM2 unary_-:(NUM1) -> NUM2 Single-argument versions of +: and -:, which multiply their argument by i and -i respectively. conjugate(NUM1) -> NUM2 Returns the complex conjugate of its argument. The conjugate of a real number is itself, while for a complex number it is realpart(NUM1) -: imagpart(NUM1) destcomplex(NUM) -> (REALPART, IMAGPART) realpart(NUM) -> REALPART imagpart(NUM) -> IMAGPART These procedures return the real and imaginary parts of a complex number, either together (-destcomplex-), or separately (-realpart- and -imagpart-). When NUM is real, then REALPART = NUM, and a zero of the same type as NUM is returned for IMAGPART.