# inv(I::UniformScaling{Bool}) = UniformScaling{Float64}

**URL:** https://discourse.julialang.org/t/inv-i-uniformscaling-bool-uniformscaling-float64/78854
**Category:** General Usage
**Created:** [April 1, 2022, 8:54am UTC](https://discourse.julialang.org/t/inv-i-uniformscaling-bool-uniformscaling-float64/78854 "2022-04-01T08:54:31Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![fgerick](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fgerick/32/13228_2.png) [@fgerick](https://discourse.julialang.org/u/fgerick)
#### Post date: [April 1, 2022, 8:54am UTC](https://discourse.julialang.org/t/inv-i-uniformscaling-bool-uniformscaling-float64/78854/1 "2022-04-01T08:54:31Z")

</div>

This seems like it shouldn’t convert to a `UniformScaling{Float64}`:

```julia
julia> inv(I)
UniformScaling{Float64}
1.0*I

```

at least I don’t see a reason for this and it could cause some type instabilities!? Possibly there is a reason why `inv(I) !== I` ?

---

<div class="post-metadata">

### Author: ![albheim](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/albheim/32/34660_2.png) [@albheim](https://discourse.julialang.org/u/albheim)
#### Post date: [April 1, 2022, 9:09am UTC](https://discourse.julialang.org/t/inv-i-uniformscaling-bool-uniformscaling-float64/78854/2 "2022-04-01T09:09:26Z")

</div>

You also have

```julia
julia> inv(true)
1.0

```

so I would assume it stems from this since

```julia
julia> UniformScaling(1//1)
UniformScaling{Rational{Int64}}
1//1*I

julia> inv(ans)
UniformScaling{Rational{Int64}}
1//1*I

```

and it seems like dispatching specifically on `I` might not be optimal since you can also create

```julia
julia> UniformScaling(false)
UniformScaling{Bool}
false*I

```

which would not fulfill `inv(false*I) = false*I` but still have the same type.

---

<div class="post-metadata">

### Author: ![fgerick](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fgerick/32/13228_2.png) [@fgerick](https://discourse.julialang.org/u/fgerick)
#### Post date: [April 1, 2022, 11:31am UTC](https://discourse.julialang.org/t/inv-i-uniformscaling-bool-uniformscaling-float64/78854/4 "2022-04-01T11:31:32Z")

</div>

I see the point, and I guess the conversion is pretty much irrelevant in most use-cases since `1.0` is exactly represented by a `Float64`. It just seemed like an oddly specific type, when I simply use `I`.
