Issue 11012: Add log1p(), exp1m(), gamma(), and lgamma() to cmath (original) (raw)
Where it makes sense, cmath needs to stay in-sync with the math module as much as possible:
set(dir(math)) - set(dir(cmath)) {'pow', 'fsum', 'ldexp', 'hypot', 'fabs', 'floor', 'lgamma', 'frexp', 'degrees', 'modf', 'factorial', 'copysign', 'ceil', 'trunc', 'expm1', 'radians', 'atan2', 'erf', 'erfc', 'fmod', 'log1p', 'gamma'}
At some point, it may make sense to implement cmath.fsum() along the lines of:
c_fsum = lambda iterable: complex(map(fsum, zip(((z.real, z.imag) for z in iterable))))