# A type question

**URL:** <https://discourse.julialang.org/t/a-type-question/11899>\
**Category:** General Usage\
**Tags:** question\
**Created:** [June 23, 2018, 10:00pm UTC](https://discourse.julialang.org/t/a-type-question/11899 "2018-06-23T22:00:57Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![e3c6](https://avatars.discourse-cdn.com/v4/letter/e/e79b87/32.png) [@e3c6](https://discourse.julialang.org/u/e3c6)\
**Post date:** [June 23, 2018, 10:00pm UTC](https://discourse.julialang.org/t/a-type-question/11899/1 "2018-06-23T22:00:57Z")

</div>

Why this is false?

```julia
Dict{NTuple{4, Int}, Float64}() isa (Dict{NTuple{L, <:Integer}, <:Real} where L)
# returns false

```

Interestingly, this is true:

```julia
Dict{NTuple{4, Int}, Float64}() isa (Dict{NTuple{L, T}, <:Real} where {L, T<:Integer})
# returns true

```

---

<div class="post-metadata">

**Author:** ![Keno](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/keno/32/285_2.png) [@Keno](https://discourse.julialang.org/u/Keno)\
**Post date:** [June 23, 2018, 10:33pm UTC](https://discourse.julialang.org/t/a-type-question/11899/2 "2018-06-23T22:33:12Z")

</div>

The \<: only goes out one level:

```julia
julia> (Dict{NTuple{L, <:Integer}, <:Real} where L) == Dict{NTuple{L, I} where I<:Integer, <:Real} where L
true

```

Thus, the first type on the RHS accepts dicts whose key type is literally `NTuple{L, I} where I<:Integer` (but not any subtype thereof because of default invariance) and whose element type is any subtype of `Real`.
