When the type of a function mentions its parameter, it’s a dependent type (just like a normal function that mentions it’s parameter is a “dependent value”, so to speak.
Usually though one speaks of dependent types only when the parameter can range over not just types.
Usually though one speaks of dependent types only when the parameter can range over not just types.