Проверенное динамическое программирование с Σ-типами в Lean ( tannerduve.github.io )
К вашему сведению, насколько мне известно, использование здесь термина «подтип» не имеет особой связи с концепцией объектно-ориентированных языков программирования на основе классов.
https://lean-lang.org/doc/reference/latest/Basic-Types/Subty…
Принципиальное различие между теорией типов (как она известна в Lean) и теорией множеств заключается в том, что обитатель/элемент принадлежит ровно к одному типу.
Source: news.ycombinator.com