小编red*_*h64的帖子

如果伊德里斯认为事情可能完全没有,那么伊德里斯可以用于证明吗?

http://docs.idris-lang.org/en/v0.99/tutorial/theorems.html#totality-checking-issues指出:

其次,到目前为止,目前的实施工作进展有限,因此可能仍然存在一种情况,即它认为功能是总的而不是.不要依赖它来证明你的证明!

这是否意味着不能依赖Idris作为证据,或者是否有办法创建不需要整体检查的证明?

proof idris totality

7
推荐指数
1
解决办法
202
查看次数

clojure的 - >(箭头)操作符和可选操作

我已经在几种情况下运行,我想对一个带有可选功能的对象进行一系列操作." - >"适用于同一对象上的命令序列(例如(c(b(ax)))变为( - > xabc)),除非某些操作是可选的.例如,假设我想这样做:

(c
  (if (> (a x) 2)
     (b (a x))
     (a x)
     )
  )
Run Code Online (Sandbox Code Playgroud)

有没有办法以更清晰的方式使用" - >"这样的操作?

syntax clojure operators

6
推荐指数
1
解决办法
1054
查看次数

为什么在"伊德里斯"中不涉及"mod"的平等不是类型检查?

为什么不会出现以下类型的问题:

v1 : mod 3 2 = 1
v1 = Refl
Run Code Online (Sandbox Code Playgroud)

然而,这将很好地检查:

v2 : 3 - 2 = 1
v2 = Refl
Run Code Online (Sandbox Code Playgroud)

dependent-type idris

4
推荐指数
1
解决办法
135
查看次数

"有"在idris教程,第11页,第3.4.4节中如何工作?

以下是教程中的示例,为简单起见稍作修改:

data Vect : Nat -> (b:Type) -> Type where
  Nil : Vect Z a
  (::) : a -> Vect k a -> Vect (S k) a

data Elem : a -> Vect n a -> Type where
  Here : {x:a} -> {xs:Vect n a} -> Elem x (x :: xs)
  There : {x,y:a} -> {xs:Vect n a} -> Elem x xs -> Elem x (y :: xs)

testVec : Vect 4 Int
testVec = 3 :: 4 :: 5 …
Run Code Online (Sandbox Code Playgroud)

idris

3
推荐指数
1
解决办法
86
查看次数

标签 统计

idris ×3

clojure ×1

dependent-type ×1

operators ×1

proof ×1

syntax ×1

totality ×1