Is it a max-heap?
JavaScript (ES6), 34 30 bytes
a=>!a.some((e,i)=>e>a[i-1>>1])
Edit: Fixing my code for the spec clarification cost 1 byte, so thanks to @edc65 for saving 4 bytes.
Jelly, 11 9 5 bytes
x2:ḊṂ
4 bytes removed thanks to Dennis!
Try it here.
Explanation
x2 Duplicate each element.
:Ḋ Each element divided by the input with the first element removed,
as integer, so there is a 0 only if some element in the duplicated
list is less than the corresponding element in the other.
There are also elements left unchanged, but it doesn't matter as
the input is all positive.
Ṃ Minimum in the list.
Haskell, 33 bytes
f(a:b)=and$zipWith(<=)b$a:b<*"xx"
or
and.(zipWith(<=).tail<*>(<*"xx"))