functional-programming - 关于 Agda 中的平等
问题描述
我是阿格达的新手。我有以下要证明的代码。现在我对lemma1c有问题。因为它要我证明当 z = a 时,z 将等于 c。我有 a = c 和 c = c,还有 trans 函数。所以我试图写
lemma1c = trans {z = a}, {a = c}
但我想得到 z is not in scope 错误。我该如何解决这个问题?
假定 一套 一个:一个 乙:一个 丙:一个 p : a ≡ b q : b ≡ c trans : ∀ {ℓ}{A : Set ℓ}{xyz : A} → x ≡ y → y ≡ z → x ≡ z 反式 refl refl = refl 引理0 : c ≡ c 引理0 = refl -- 目标:c ≡ c,参考:x ≡ x 引理1a : a ≡ c lemma1a 重写 p = q 引理1c : ∀ {z : A} → z ≡ a → z ≡ c lemma1c {z} = 反式 {} {lemma1a}
解决方案
您必须trans
使用显式参数(不带括号)调用函数,这会导致以下定义:
lemma1c : ∀ {z : A} → z ≡ a → z ≡ c
lemma1c z≡a = trans z≡a lemma1a
你也可以rewrite
像在前面的引理中那样使用:
lemma1d : ∀ {z : A} → z ≡ a → z ≡ c
lemma1d z≡a rewrite lemma1a = z≡a
推荐阅读
- laravel - Laravel 方法分页不存在尝试控制器
- python - 如何批量转换稀疏矩阵
- python - 回文句或单词
- python - 如何将直方图向右移动?
- python - 当文本更改为不同的内容时,如何使用 Selenium 和 Python 单击按钮?
- node.js - ReadStream 管道完成后执行循环
- c# - 无法从 Excel 单元格中读取文本?
- r - 同时导入多个csv文件希望R中的日期数据转换为(日期和时间)格式
- amazon-web-services - Amazon Connect 是否应该在调用 Lex 时设置 outputDialogMode?
- ios - CocoaPods 安装失败“无法构建 gem 原生扩展”