Coq 卡塔尔的平等

Coq 卡塔尔的平等,coq,Coq,我想使用QArith的交换性属性将一个表达式替换为另一个表达式: Require Import QArith. Variable q1 q2 : Q. Lemma l1 : q1 + q2 = q2 + q1. Proof. rewrite Qplus_comm. (* Fail *) 有没有办法将“Qeq”等式用作“=”?q1==q2与q1=q2不同。这里有一个证据表明,假设它们相等会导致False,这是一个矛盾 Require Import QArith. Lemma Qeq_is_no

我想使用QArith的交换性属性将一个表达式替换为另一个表达式:

Require Import QArith.

Variable q1 q2 : Q.
Lemma l1 : q1 + q2 = q2 + q1.
Proof.
rewrite Qplus_comm. (* Fail *)

有没有办法将“Qeq”等式用作“=”?

q1==q2
q1=q2
不同。这里有一个证据表明,假设它们相等会导致
False
,这是一个矛盾

Require Import QArith.
Lemma Qeq_is_not_eq: (forall q1 q2:Q, q1==q2 -> q1=q2) -> False.
  intro HQ.
  assert (H12: 1#1 == 2#2) by (ring).
  generalize (HQ (1#1) (2#2) H12).
  intros H2.
  inversion H2.
Qed.

请参见Arthur A A显示
1#12#2
,并解释原因。

q1==q2
q1=q2
不同。这里有一个证据表明,假设它们相等会导致
False
,这是一个矛盾

Require Import QArith.
Lemma Qeq_is_not_eq: (forall q1 q2:Q, q1==q2 -> q1=q2) -> False.
  intro HQ.
  assert (H12: 1#1 == 2#2) by (ring).
  generalize (HQ (1#1) (2#2) H12).
  intros H2.
  inversion H2.
Qed.
查看Arthur A A显示
1#12#2
的地方,并解释原因