Think so! They call them refinement types, where you specify a type by putting a predicate on it. From what I understand, a dependent type is a type whose definition depends on a value.
Are they the same? uhhh… maybe, I should ask someone who knows types