gpt4 book ai didi

辅 enzyme Q/SSReflect : standard way to case on (x < y) + (x == y) + (y < x)?

转载 作者:行者123 更新时间:2023-12-04 14:03:09 25 4
gpt4 key购买 nike

在 Vanilla Coq 中,我会写

Require Import Coq.Arith.Arith.
Goal nat -> nat -> False.
intros n m.
destruct (lt_eq_lt_dec n m) as [[?|?]|?].

获得三个目标,一个用于n < m , 一个用于 n = m , 一个代表 m < n .在 ssreflect 中,我将从

From Coq.ssr Require Import ssreflect ssrbool.
From mathcomp.ssreflect Require Import eqtype ssrnat.
Goal nat -> nat -> False.
move => n m.

对于 n < m,将其分为三种情况的标准/规范方法是什么? , n == m , 和 m < n , 在 ssreflect?

最佳答案

您可以使用 ltngtP :

From mathcomp Require Import ssreflect ssrfun ssrbool eqtype ssrnat.
Goal nat -> nat -> False.
move => n m.
case: (ltngtP n m) => [n_lt_m|m_lt_n|n_eq_m].

按照ssreflect风格,这个引理自动简化了比较函数,例如n < m , n == m等。

关于辅 enzyme Q/SSReflect : standard way to case on (x < y) + (x == y) + (y < x)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69350778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com