继我最近的问题之后,我一直在思考以下问题:
我们可以在 LH 中创建一些新的惊人类型,特别是表达一些非平凡的整数子集。例如:
{-@ type Nat = {v:Int | v>=0 } @-}
{-@ type grtN N = {v:Int | v>N } @-}
{-@ type Even = {v:Int | v mod 2 == 0 } @-}
但是现在我可以在 LH 中表达哪些其他重要的子集?
我可以在 LH 中创建一个仅包含 2 次方的类型吗?这是我最后一个问题的内容,似乎答案是否定的。
所以一个自然的问题是我可以表达什么样的子集(整数)?有没有很好的性格特征?