# Strange inconsistent in complex algebra

**URL:** https://discourse.julialang.org/t/strange-inconsistent-in-complex-algebra/36851
**Category:** General Usage
**Created:** [April 1, 2020, 2:27pm UTC](https://discourse.julialang.org/t/strange-inconsistent-in-complex-algebra/36851 "2020-04-01T14:27:47Z")
**Posts on this page:** 1
**Showing post:** 34

<div class="post-metadata">

### Author: ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)
#### Post date: [April 2, 2020, 8:53am UTC](https://discourse.julialang.org/t/strange-inconsistent-in-complex-algebra/36851/34 "2020-04-02T08:53:19Z")

</div>

Yes, possibly a signless strong zero would make sense for your use case:

```julia
struct SignEater <: Real end
Base.:*(::SignEater, ::T) where {T <: Real} = zero(T)
Base.:*(::SignEater, ::Complex{T}) where {T <: Real} = Complex(zero(T),zero(T))
# NOTE: more methods are needed for ambiguities and I did not do that carefully
const 𝟎 = SignEater()
𝟎 * -Inf # 0.0
𝟎 * 1im # 0 + 0im

```

(Incidentally, please post [quoted code](https://discourse.julialang.org/t/psa-how-to-quote-code-with-backticks/7530), not screenshots).

---

_[View the full topic](https://discourse.julialang.org/t/strange-inconsistent-in-complex-algebra/36851)._
