如果证明是正交的,这有帮助吗?

假设我有一个函数

f : Vect m Nat -> Vect n Nat -> {auto _ : Proof m n} -> Foo m n

哪里

data Proof : Nat -> Nat -> Type where
  Eq : Proof x x
  One : Proof 1 _

我可以将 Proof 1 1 设为 EqOne。因此,这些不是“正交”。在更复杂的示例中,我可以使用递归数据构造函数,我可以在其中提供证明为 Constructor1 Constructor2Constructor3 Constructor1。构造函数不正交是否重要?特别是,它是否会阻碍证据搜索?

haowentao2009 回答:如果证明是正交的,这有帮助吗?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/38683.html

大家都在问