- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我(为了好玩?)尝试在 Idris 中完成所有如何证明。我需要的属性之一是整数的全排序。 idris 已经有了data.ZZ提供基于归纳的整数的模块。我需要添加类似于 Nat 的 LTE 的类型。我似乎无法让自己相信我的实现是正确的(或者 LTE 在这方面是正确的)。如何“检查”我正在处理的 LTEZZ
数据类型是否有效?如何检查 (LTE 4 3)
是否无效?
示例代码如下:
%default total
||| Proof the a is <= b
||| a is the smaller number
||| b is the larger number
data LTEZZ : (a : ZZ) -> (b : ZZ) -> Type where
||| Zero is less than any positive
LTEZero : LTEZZ (Pos Z) (Pos right)
||| If both are positive, and n <= m, n+1 <= m+1
LTEPosSucc : LTEZZ (Pos left) (Pos right) -> LTEZZ (Pos (S left)) (Pos (S right))
||| Negative is always less than positive, including zero
LTENegPos : LTEZZ (NegS left) (Pos right)
||| If both are negative and n <= m, n-1 <= m-1
LTENegSucc: LTEZZ (NegS (S left)) (NegS (S right)) -> LTEZZ (NegS left) (NegS right)
Uninhabited (LTEZZ (Pos n) (NegS m)) where
uninhabited LTENegPos impossible
Uninhabited (LTEZZ (Pos (S n)) (Pos Z)) where
uninhabited LTEZero impossible
最佳答案
首先,LTE
将 Nat
转换为全序,如果您关注 this link,您就会看到这一点。 .
但是 LTEZZ
并没有达到预期目的。检查它的方法之一是证明 total order 的属性使用定义。但对于 LTEZZ
来说,您将无法例如证明自反性。
这是修复它的一种方法:
data LTEZZ : (a : ZZ) -> (b : ZZ) -> Type where
||| Zero is less than any positive
LTEZero : LTEZZ (Pos Z) (Pos right)
||| If both are positive, and n <= m, n+1 <= m+1
LTEPosSucc : LTEZZ (Pos left) (Pos right) -> LTEZZ (Pos (S left)) (Pos (S right))
||| Negative is always less than positive, including zero
LTENegPos : LTEZZ (NegS left) (Pos right)
||| -1 is the greatest negative number
LTEMinusOne : LTEZZ (NegS left) (NegS Z)
||| If both are negative and n <= m, then n-1 <= m-1
LTENegSucc: LTEZZ (NegS left) (NegS right) -> LTEZZ (NegS (S left)) (NegS (S right))
我添加了 -1
的情况,并修复了 LTENegSucc
的情况(您希望在每个递归步骤结构上使参数更小,只需就像LTEPosSucc
)。
导入和一些辅助引理:
import Data.ZZ
import Decidable.Order
%default total
||| A helper lemma treating the non-negative integers.
lteLtezzPos : m `LTE` n -> Pos m `LTEZZ` Pos n
lteLtezzPos LTEZero = LTEZero
lteLtezzPos (LTESucc x) = LTEPosSucc (lteLtezzPos x)
||| A helper lemma treating the negative integers.
lteLtezzNegS : m `LTE` n -> NegS n `LTEZZ` NegS m
lteLtezzNegS LTEZero = LTEMinusOne
lteLtezzNegS (LTESucc x) = LTENegSucc (lteLtezzNegS x)
自反性:
||| `LTEZZ` is reflexive.
ltezzRefl : z `LTEZZ` z
ltezzRefl {z = (Pos n)} = lteLtezzPos lteRefl
ltezzRefl {z = (NegS n)} = lteLtezzNegS lteRefl
传递性:
||| `LTEZZ` is transitive.
ltezzTransitive : a `LTEZZ` b -> b `LTEZZ` c -> a `LTEZZ` c
ltezzTransitive LTEZero LTEZero = LTEZero
ltezzTransitive LTEZero (LTEPosSucc _) = LTEZero
ltezzTransitive (LTEPosSucc x) (LTEPosSucc y) = LTEPosSucc (ltezzTransitive x y)
ltezzTransitive LTENegPos LTEZero = LTENegPos
ltezzTransitive LTENegPos (LTEPosSucc x) = LTENegPos
ltezzTransitive LTEMinusOne LTENegPos = LTENegPos
ltezzTransitive LTEMinusOne LTEMinusOne = LTEMinusOne
ltezzTransitive (LTENegSucc x) LTENegPos = LTENegPos
ltezzTransitive (LTENegSucc x) LTEMinusOne = LTEMinusOne
ltezzTransitive (LTENegSucc x) (LTENegSucc y) = LTENegSucc (ltezzTransitive x y)
反对称性:
||| `LTEZZ` is antisymmetric.
ltezzAntisymmetric : a `LTEZZ` b -> b `LTEZZ` a -> a = b
ltezzAntisymmetric LTEZero LTEZero = Refl
ltezzAntisymmetric (LTEPosSucc x) (LTEPosSucc y) =
rewrite (posInjective (ltezzAntisymmetric x y)) in Refl
ltezzAntisymmetric LTEMinusOne LTEMinusOne = Refl
ltezzAntisymmetric (LTENegSucc x) (LTENegSucc y) =
rewrite (negSInjective (ltezzAntisymmetric x y)) in Refl
总数:
||| `LTEZZ` is total.
ltezzTotal : (a : ZZ) -> (b : ZZ) -> Either (LTEZZ a b) (LTEZZ b a)
ltezzTotal (Pos k) (Pos j) with (order {to=LTE} k j)
ltezzTotal (Pos k) (Pos j) | (Left pf) = Left $ lteLtezzPos pf
ltezzTotal (Pos k) (Pos j) | (Right pf) = Right $ lteLtezzPos pf
ltezzTotal (Pos k) (NegS j) = Right LTENegPos
ltezzTotal (NegS k) (Pos j) = Left LTENegPos
ltezzTotal (NegS k) (NegS j) with (order {to=LTE} k j)
ltezzTotal (NegS k) (NegS j) | (Left pf) = Right $ lteLtezzNegS pf
ltezzTotal (NegS k) (NegS j) | (Right pf) = Left $ lteLtezzNegS pf
关于idris - LTE 整数 (ZZ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46066253/
在Android SDK中,有一个网络类型入口: https://developer.android.com/reference/android/telephony/TelephonyManager.
如果我们查看规范 23.402 v10.8 第 5.2 节和第 6.2.1 节,BBERF(SGW/受信任的非 3GPP 访问)会在向 PGW 发送代理绑定(bind)更新消息以实现 QoS 之前创建
您好,我正在尝试植入 mongodb lte 功能 http://docs.mongodb.org/manual/reference/operator/query/lte/ 但它似乎不起作用:s我的路
我(为了好玩?)尝试在 Idris 中完成所有如何证明。我需要的属性之一是整数的全排序。 idris 已经有了data.ZZ提供基于归纳的整数的模块。我需要添加类似于 Nat 的 LTE 的类型。我似
我的应用程序的某些用户(在特定运营商上,使用 4g)无法加载照片。 并且可达性测试也失败了。但我可以毫无问题地访问我的一些后端 API。 但当我使用 WiFi 测试我的应用时,这种情况从未发生过。 什
我在管理端使用管理 LTE 模板。当我转到其他页面时,该页面的按钮将不会处于事件状态。我观察到激活该按钮的方式是必须的,也是必须的里面的 li我怎样才能使用 jquery 做到这一点
我已经为我的 Visual Basic 元素合并了 AdminLTE 模板。我想要与演示相同的效果: https://almsaeedstudio.com/themes/AdminLTE/index.
通知图片: 从上图中可以清楚地看出,通知面板没有包装消息的内容。内容中的实际文本很长,即 saurabh 先养 请求审查任务 'ABCDE 2017 年 11 月' 分配 ID 为“Qg9hBNSTo
几天以来,我一直在使用 Admin LTE(管理模板),但令我惊讶的是图标无法离线工作。那么,有没有什么办法可以离线运行所有图标。在下面的图片中显示了它是如何在没有互联网连接的情况下出现的。 ente
我正在尝试编写一个小部件,这样我就可以在我的 Verizon Galaxy Nexus 上启用/禁用 LTE,而无需深入到设置菜单中进行操作。但是,我还没有弄清楚如何确定 LTE 是否真的打开了。我可
我正在使用 ffmpeg 3.3.6 版开发一个在 Android 上显示 IP 摄像机图像的应用程序。 处理接收视频的代码就完成了。迄今为止的开发环境与相机处于相同的wifi环境中。 但是,如果您尝
我试图了解 LTE 和 UMTS/HSPA+ 如何从全功率状态过渡,以及当移动设备的 radio 全功率运行时,塔上占用了哪些资源。 我看过 Ch. High Performance Browser
我有架构 { summaries: [ { type: 'temp', min: 10, max: 40 }, { type: 'humi
我正在尝试弄清楚如何使用从日期时间中提取的日期来过滤 QuerySet。 我使用 Django-filter 并且如果不迭代 QuerySet 就无法编写这样的查找,这是非常低效的。 我试过 date
LTE 支持以 QCI 为代表的各种 QoS 级别。例如我们有用于 VOIP 通话的 QCI 2、用于视频通话的 4、用于在线游戏的 3 等。android 应用程序在连接到网络时将如何表达其 QOS
当我连接到 wifi 时,我使用可达性来检查互联网连接,它工作正常。但是当它连接到 LTE 网络时,它给我没有连接错误,即使它已连接,我也可以使用 LTE 完美浏览互联网。我还在 info.plist
我刚刚意识到 IE7/8 don't support背景大小属性。 我很常用: .image{ background-size:100% auto; /* in case browser do
有没有办法在Android平台上从LTE网络访问NAS消息?我拥有所有需要的解码软件,但无法获取实际消息。 最佳答案 NAS 消息存在于基带日志(调制解调器)中。因此,您必须捕获调制解调器日志才能检查
这是我的示例文档: { updated: [ 1461062102, 1461062316 ], name: "test1", etc: "etc" } { updated: [
我正在研究 LTE-EPC 软件应用程序并遇到一个基于理论的问题。 有一个 UE 和一个 PDN。 它们之间通过 P-GW/S-GW/eNB 建立默认方式连接。 UE 发送额外资源分配请求,PCEF/
我是一名优秀的程序员,十分优秀!