complex.rb 
$Release Version: 0.5 $
$Revision: 1.3 $
$Date: 1998/07/08 10:05:28 $
by Keiju ISHITSUKA(SHL Japan Inc.)
complex.rb implements the Complex class for complex numbers. Additionally, some methods in other Numeric classes are redefined or added to allow greater interoperability with Complex numbers.
Complex numbers can be created in the following manner:

Complex(a, b)

Complex.polar(radius, theta)
Additionally, note the following:

Complex::I (the mathematical constant i)

Numeric#im (e.g. 5.im > 0+5i)
The following Math module methods are redefined to handle Complex arguments. They will work as normal with nonComplex arguments.
sqrt exp cos sin tan log log10
cosh sinh tanh acos asin atan atan2 acosh asinh atanh