Idris是一种具有依赖类型的通用纯函数式编程语言。
我定义了这样一个类型:data MyList a = Empty | Cons a(MyList a)在Haskell中,空MyList可以用Empty实例化,但Idris抱怨:> Empty(输入):无法推断参数a到...
我正在为idris写一个后端,idris代码(缩写)main = putStrLn“hello”生成了这个:(SLet(Loc 1)(SLet(Loc 1)(SConst“hello \ n”)(...
我写了一个简短的函数:swapMaybe:Monad m => Maybe(m a) - > m(也许是)swapMaybe Nothing = pure Nothing swapMaybe(Just x)= map Just x然后我试图证明它的一个属性:...
我试图用交互式证明助手证明以下声明:total concatAssoc:(x:List a) - >(y:List a) - >(z:List a) - >(x ++ y)++ z = x ++(y ++ z)concatAssoc =?...
假设我们想在Nats上有一个“正确的”减去,要求m <= n对于n`减去m才有意义:%hide minus minus:(n,m:Nat) - > {auto prf:m` LTE`n} - > Nat减去{prf = LTEZero ...