- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何证明 Cubical Agda 中的两件事不相等? (v2.6.1, Cubical repo 版本 acabbd9
)
具体来说,这里是作为更高归纳类型的整数:
{-# OPTIONS --safe --warning=error --cubical --without-K #-}
open import Cubical.Core.Everything
open import Cubical.Foundations.Prelude
module Integers where
data False : Set where
data ℕ : Set where
zero : ℕ
succ : ℕ → ℕ
{-# BUILTIN NATURAL ℕ #-}
data ℤ : Set where
pos : ℕ → ℤ
neg : ℕ → ℤ
congZero : pos 0 ≡ neg 0
oddThing2 : pos 0 ≡ congZero i1
oddThing2 = congZero
succNonzero : {a : ℕ} → succ a ≡ 0 → False
succNonzero {a} s = subst t s 0
where
t : ℕ → Set
t zero = False
t (succ i) = ℕ
succ a ≡ 0
的证明进行模式匹配没有了;在非立方 Agda 中,证明只是
oneNotZero ()
,识别不可能的模式。
posInjective : {a b : ℤ} → pos a ≡ pos b → a ≡ b
最佳答案
对于 posInjective
你实际上可以做一个更简单的证明,
fromPos : ℤ → ℕ
fromPos (pos n) = n
fromPos (neg _) = 0
fromPos (congZero i) = refl
posInjective = cong fromPos
.
List
的这样的证据
Cover
的定义很容易得出单射性和独特性.
关于agda - 立方 Agda : how do I prove two things not equal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61439685/
考虑以下片段: import Data.List %default total x : Elem 1 [1, 2] x = Here type : Type type = Elem 1 [1, 2]
我有以下目标: ∀x ∈ {0,1,2,3,4,5}. P x 我想将这个目标分解为六个子目标 P 0、P 1、P 2、P 3、P 4 和 P 5。这可以通过 apply auto 轻松完成。但是 a
我有以下目标: ∀x ∈ {0,1,2,3,4,5}. P x 我想将这个目标分解为六个子目标 P 0、P 1、P 2、P 3、P 4 和 P 5。这可以通过 apply auto 轻松完成。但是 a
我是一个绝对的初学者,不是程序员,正在尝试使用 Logic and Proof 学习形式验证.我无法在精益中导入任何东西。 我将二进制文件的 tar 文件提取到 /tmp 然后执行 /tmp/lean
如果我理解正确(主要来自 applyTactic 函数的存在),则可以为 Idris 中的定理证明器编写自定义策略。我可以用什么(或哪里)的例子来学习如何做到这一点? 最佳答案 在 Idris 中有两
我正在尝试使用 Kowalski 图算法来求解定理证明。算法的描述位于 http://www.doc.ic.ac.uk/~rak/对于如何处理大事件却保持沉默它生成的重复子句的数量。我想知道是否有处理
Z3有一个prove()方法,可以证明两个公式的等价性。 但是,我找不到此prove() 方法的技术文档。 prove() 在幕后使用的“等价”的定义是什么?那是“部分等价”(在“回归验证”论文中提出
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve thi
任务。 假设我们给 Coq 如下定义: Inductive R2 : nat -> list nat -> Prop := | c1 : R2 0 [] | c2 : forall n l, R2 n
我(错误地)学习了关于验证并发程序的类(class),到目前为止我们已经介绍了这种称为“Owicki-Gries 方法”的方法。显然,可以通过将断言与每个语句相关联来证明有关程序的各种结果,并表明这些
我有 2 个公式 F1 和 F2。这两个公式共享大多数变量,除了一些具有不同名称的“临时”(或我称它们为“免费”)变量,这是出于某些原因。 现在我想证明 F1 == F2,但是 Z3 的 prove(
在 3D 渲染(或几何图形)中,在光栅化算法中,当您将三角形的顶点投影到屏幕上,然后查找像素是否与 2D 三角形重叠时,您通常需要查找深度或像素重叠的三角形的 z 坐标。一般来说,该方法包括计算三角形
我有 2 个公式 F1 和 F2。这两个公式共享大多数变量,除了一些具有不同名称的“临时”(或我称它们为“免费”)变量,这是出于某些原因。 现在我想证明 F1 == F2,但是 Z3 的 prove(
我有一个Map可能有相同类型的嵌套映射。每个嵌套映射都有一个指向外部映射的引用。 我定义了 findValue方法查看当前映射,如果没有找到任何内容,则转到其父级,依此类推,直到到达 null这是最外
我正在试验 CoNat 的定义取自 this paper作者:Jesper Cockx 和 Andreas Abel: open import Data.Bool open import Relati
我们的客户要求我们针对我们的 Web 应用程序(ASP.NET 4.5.2、Webforms)运行 OWASP ZAP 工具,我们不能在报告中有任何高优先级的发现。 我们已经完成分析,OWASP ZA
我有几个 .t文件夹中的文件。每个测试脚本都会启动自己的 Selenium 实例,因此会打开自己的浏览器。然后它们将它们的指令传递给单独模块中的页面对象。唉,页面对象是大多数测试断言发生的地方。 我使
我的部分测试套件依赖于 API URL。有时我想使用另一个 URL 运行我的测试。有没有办法将此参数传递给 prove,或者我是否需要编辑定义 API URL 的文件? 最佳答案 可以在测试程序中设置
如何证明 Cubical Agda 中的两件事不相等? (v2.6.1, Cubical repo 版本 acabbd9 ) 具体来说,这里是作为更高归纳类型的整数: {-# OPTIONS --sa
我正在尝试证明在Agda中的简单引理,我认为这是对的。 If a vector has more than two elements, taking its head following taking
我是一名优秀的程序员,十分优秀!