Subtipagem e tipos dependentes são conceitos ortogonais.
A subtipagem normalmente é equipada com uma noção de subsunção, na qual uma expressão de um tipo pode aparecer no local em que um supertipo é esperado.
É mais provável que a subtipagem seja decidível e mais simples de gerenciar na implementação.
A digitação dependente é muito mais expressiva. Mas se você quiser considerar um grupo também um monóide, precisará de uma noção de subsunção para esquecer a estrutura extra. Freqüentemente, como ao usar o Coq, uma obrigação de prova trivial é gerada para lidar com esse tipo de coerção; portanto, na prática, a subtipagem pode não adicionar nada. O mais importante é ter maneiras de agrupar várias teorias para torná-las reutilizáveis, como reutilizar a teoria dos monoides ao falar sobre grupos. As classes de tipo no Coq são uma inovação recente para fazer essas coisas. Módulos são uma abordagem mais antiga.
Se você faz uma rápida pesquisa no Google sobre "subtipo de tipos dependentes", encontra um monte de trabalho adicionando subtipo a tipos dependentes, principalmente por volta do ano 2000. Imagino que a metateoria seja realmente desafiadora, portanto, nenhuma subtipo de tipos dependentes aparece em assistentes de prova.