Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
在 Idris 中,我可以证明自由定理吗? `forall t 类型的唯一(全部)函数。 t -> t` 是 `id`?
对于足够多态的类型 参数性可以唯一地确定函数本身 参见瓦德勒的定理免费 http www cs sfu ca CourseCentral 831 burton Notes July14 free pdf了解详情 例如 唯一具有类型的总函数f
idris
parametricpolymorphism
freetheorem
为什么较新的依赖类型语言没有采用 SSReflect 的方法?
我在 Coq 的 SSReflect 扩展中发现了两个约定 它们似乎特别有用 但我还没有看到它们在较新的依赖类型语言 Lean Agda Idris 中得到广泛采用 首先 可能的谓词被表示为布尔返回函数而不是归纳定义的数据类型 默认情况下
coq
agda
idris
dependenttype
lean
Idris - 在 n 维向量上映射操作
我在 Idris 中定义 n 维向量如下 import Data Vect NDVect Num t gt rank Nat gt shape Vect rank Nat gt t Type gt Type NDVect Z t t NDV
idris
约束接口中的函数参数
在接受函数的接口中约束函数参数的语法是什么 我试过 interface Num a gt Color f a gt Type where defs 但它说Name a is not bound in interface Your inter
idris
为什么在这种情况下重写不改变表达式的类型?
在 1 中可以阅读下一篇 rewrite prf in expr 如果我们有prf x y 并且 expr 所需的类型是以下属性x the rewrite in语法将搜索x在所需的类型中expr并将其替换为y 现在 我有下一段代码 您可以将
idris
如何在构造微积分中提取Sigma的第二个元素?
我尝试这样做 A gt B A gt gt t r gt x a gt B x gt r gt r gt t B t A x A gt y B x gt x x A gt y B x gt y 请注意 由于该函数返回的值取决于 sigma
Haskell
functionalprogramming
coq
agda
idris
无法声明 MonadPlus 接口受 Monad 约束
我试图像这样声明 MonadPlus 接口 module NanoParsec Plus access public export interface Monad m gt MonadPlus m where zero m a plus m
monads
idris
使用异质等式 =
到目前为止我所拥有的是 module Foo postulate P P postulate NP NP complexityProof P NP complexityProof complexityProof rhs 但在尝试加载文件时
idris
在Refl中使用重写
我正在使用 Idris 学习第 8 章类型驱动开发 我有一个关于 rewrite 如何与 Refl 交互的问题 此代码作为重写如何在表达式上工作的示例显示 myReverse Vect n elem gt Vect n elem myRev
idris
(xs : Vect n elem) -> Vect (n * 2) elem
这本书使用 Idris 进行类型驱动开发 https www manning com books type driven development with idris提出这个练习 定义一个适合签名的可能方法 two xs Vect n el
idris
理解 `k : Nat ** 5 * k = n` 签名
以下函数编译 onlyModByFive n Nat gt k Nat 5 k n gt Nat onlyModByFive n k 100 但有什么作用k以其代表Nat 5 k n syntax 另外 我该如何称呼它 这是我尝试过的 但我
dependenttype
existentialtype
idris
函数类型中的 Plus 与 S
以下向量声明cons cons a gt Vect n a gt Vect n 1 a cons x xs x xs 因错误而失败 Type mismatch between S n and plus n 1 而下面的向量append编译并
idris
Idris 中类型的模式匹配
可能这是基本的 但我不明白为什么下面的函数回答 1fnc Nat并且 对于fnc 整数 它甚至没有作为模式包含在内 fnc Type gt Integer fnc Bool 1 fnc Nat 2 您不能对类型进行模式匹配 也不应该这样做
patternmatching
idris
typecase
当 Idris 中的 lambda 抽象相关类型时,如何证明“看似显而易见”的事实?
我正在 Idris 中编写一个基本的单子解析器 以习惯其语法以及与 Haskell 的差异 我的基础知识工作得很好 但我坚持尝试为解析器创建 VerifiedSemigroup 和 VerifiedMonoid 实例 言归正传 这里是解析器
agda
theoremproving
idris
伊德里斯热切评价
In Haskell 我可能会实施if像这样 if True x y x if False x y y spin 0 spin n spin n 1 This 行为符合我的预期 haskell gt if True spin 1000000
Haskell
lazyevaluation
Evaluation
expressionevaluation
idris
如何实现参数化元组的“Show”接口?
I have Coord将 n 维大小转换为给定大小限制的坐标类型的函数 Coord 2 3 Fin 2 Fin 3 import Data Fin import Data List Size Type Size List Nat Coor
interface
idris
multiplicity
idris2
Idris:函数使用 Nat 参数,但使用 Integer 参数时类型检查失败
我是伊德里斯的新手 我正在尝试类型 我的任务是制作一个 洋葱 一个带有两个参数的函数 一个数字和任何东西 并将任何东西放入List嵌套了这么多次 例如 结果为mkOnion 3 Hello World 应该 Hello World 我做了这
idris
partialfunctions
依赖类型:依赖对类型与不相交联合有何相似之处?
我一直在研究依赖类型 我了解以下内容 Why 通用量化 https en wikipedia org wiki Universal quantification被表示为依赖函数类型 x A B x means 对全部x类型的A有一个类型的值
Haskell
agda
dependenttype
idris
curryhoward
在 Idris 中证明如果 n = m 且 m = o,则 n + m = m + o?
我正在尝试通过查看一些练习来提高我的伊德里斯技能软件基础 https softwarefoundations cis upenn edu lf current toc html 最初是为 Coq 设计的 但我希望对 Idris 的翻译不会太
proof
idris
仅数学证明助理
大多数证明助手都是具有依赖类型的函数式编程语言 他们可以证明程序 算法 相反 我感兴趣的是最适合数学且仅适合数学 例如微积分 的证明助手 你能推荐一个吗 我听说过 Mizar 但我不喜欢源代码被关闭 但如果它最适合数学 我会使用它 Agda
proof
agda
idris
proofofcorrectness
isar
1
2
»