f_equal誘導コンストラクタを含む等価プルーフには、戦術が無条件に役立ちます。 a :: s = a' :: sはこのような目標になり、a = a'になります。 任意の機能で使用することは、別の話です。 4 mod 2 = 2 mod 2は4 = 2に減少しますが、これは明らかに不合理です。 自動的f_equal(または類似)を適用する方法があります場合、私は、例えば、それは情報を失わない場合
私はブール値の2つのリストが同等であることを証明しようとしています(明らかにリストを構造的に歩く平等の定義を使用していれば)、それらの長さは同じです。そうすることの過程で は、しかし、私は無人島/偽であるという仮説と状況に終わるが、文字通りFalse(ひいてはcontradiction戦術の標的とすることはできません)ではありません。 これまで私がこれまで持っていたことは次のとおりです。この後 R
を失うことなく、次の展開を考えてみましょう: Require Import Relation RelationClasses.
Set Implicit Arguments.
CoInductive stream (A : Type) : Type :=
| scons : A -> stream A -> stream A.
CoInductive stream_le (A : T
私は以下の時間の定義に証明用語の一致部分にコックの型システムの動作について困惑している: Set Implicit Arguments.
Definition h := fun (a b : nat) (e : a = b) =>
(fun (x y : nat)(HC : b = y)(H : x = y) =>
(match H in (_ = y0) return (b = y0 ->