Two complex or hypercomplex values are equal only if all their corresponding coefficients are equal.

This should be so even if any of the coefficients are Nan, because complex and hypercomplex numbers can legitimately be only partially NaN.

Currently, this works right

1J2 = 1J∅

but some similar comparisons do not work right.

This is what should happen

1 ←→ 1J∅ = 1J∅

0 ←→ 1J∅ = 2J∅ (currently wrong)

0 ←→ 1J∅ = 1J2

0 ←→ 1J∅ = 2J∅ (currently wrong)

0 ←→ ∅J1 = ∅J2 (currently wrong)

0 ←→ ∅J1 = ∅J∅ (currently wrong)

1 ←→ ∅J∅ = ∅J∅

Similarly, the usual rules of arithmetic should be followed even if any of the coefficients are ∅.

So, because ∅←→r×∅ for all real values

1J∅ ←→ 0 + 1J∅

∅J∅ ←→ 1 × 1J∅ (currently wrong)

Currently the second one gives the incorrect result because of an arithmetic shortcut.

Such shortcuts should not be taken when either argument has any ∅ coefficient(s).

In general any complex or hypercomplex number should be unchanged when adding 0 to it, whether or not it has any ∅ coefficients.

Also, any complex or hypercomplex number with any ∅coefficients should retain those same ∅ coefficients when any real number is added to it.

Also, any complex or hypercomplex number with ANY ∅coefficients should be changed to have ALL ∅coefficients by multiplying it by 1 (or actually, by multiplying it by anything at all).