20 if (!function_exists(__NAMESPACE__ .
'\\log2')) {
21 function log2($complex):
Complex 23 $complex = Complex::validateComplexArgument($complex);
25 if (($complex->getReal() == 0.0) && ($complex->getImaginary() == 0.0)) {
26 throw new \InvalidArgumentException();
27 } elseif (($complex->getReal() > 0.0) && ($complex->getImaginary() == 0.0)) {
28 return new Complex(\log($complex->getReal(), 2), 0.0, $complex->getSuffix());
32 ->multiply(\log(Complex::EULER, 2));