Mathematically, equality comparison between complex numbers depends on the choice of topology. For example, the complex plane has a continuum of infinities; however, when the complex plane is projected onto the surface of a sphere (a stereographic projection commonly referred to as the Riemann sphere), infinities coalesce into a single point at infinity, thus modeling the extended complex plane. For the former, the value \infty + 3j is distinct from (i.e., does not equal) \infty + 4j, while, for the latter, \infty + 3j does equal \infty + 4j.
Modeling complex numbers as a Riemann sphere conveys certain mathematical niceties (e.g., well-behaved division by zero and preservation of the identity \frac{1}{\frac{1}{z}} = z); however, translating the model to IEEE 754 floating-point operations can lead to some unexpected results. For example, according to IEEE 754, +\infty and -\infty are distinct values; hence, for equality comparison, if x = +\infty and y = -\infty, then x \neq y. In contrast, if we convert x and y to their complex number equivalents x = +\infty + 0j and y = -\infty + 0j and then interpret within the context of the extended complex plane, we arrive at the opposite result; namely, x = y.
In short, given the constraints of floating-point arithmetic and the subtleties of signed zeros, infinities, NaNs, and their interaction, crafting a specification which always yields intuitive results and satisfies all use cases involving complex numbers is not possible. Instead, this specification attempts to follow precedent (e.g., C99, Python, Julia, NumPy, and elsewhere), while also minimizing surprise. The result is an imperfect balance in which certain APIs may appear to embrace the one-infinity model found in C/C++ for algebraic operations involving complex numbers (e.g., considering \infty + \operatorname{NaN}\ j to be infinite, irrespective of the imaginary component's value, including NaN), while other APIs may rely on the complex plane with its multiplicity of infinities (e.g., in transcendental functions). Accordingly, consumers of this specification should expect that certain results involving complex numbers for one operation may not be wholly consistent with results involving complex numbers for another operation.