# \`Vector{Float64} \<: Vector{Any}\` = false, why?

**URL:** <https://discourse.julialang.org/t/vector-float64-vector-any-false-why/80103>\
**Category:** General Usage\
**Created:** [April 27, 2022, 3:40am UTC](https://discourse.julialang.org/t/vector-float64-vector-any-false-why/80103 "2022-04-27T03:40:48Z")\
**Posts on this page:** 1\
**Showing post:** 13

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [April 27, 2022, 5:00pm UTC](https://discourse.julialang.org/t/vector-float64-vector-any-false-why/80103/13 "2022-04-27T17:00:58Z")

</div>

Another thread on why parametric types are invariant: [Reason behind designing parametric types as invariant](https://discourse.julialang.org/t/reason-behind-designing-parametric-types-as-invariant/18971). Note that these covariance and contravariace relations hold:

- covariance: `S <: T` ⇒ `P{<:S} <: P{<:T}`
- invariance: `S ≠ T` ⇒ ¬ `P{S} <: P{T}`
- contravariance: `S <: T` ⇒ `P{>:S} >: P{>:T}`

---

_[View the full topic](https://discourse.julialang.org/t/vector-float64-vector-any-false-why/80103)._
