Coqの中置演算子とその使用例


  1. 中置演算子の定義: Notationコマンドを使用して、中置演算子の記法を定義します。例えば、<<という中置演算子を定義する場合、次のようにします。

    Notation "x << y" := (some_function x y) (at level 40).

    ここで、some_functionxyを引数として受け取り、結果を返す関数です。at level 40は、演算子の優先順位を指定するためのオプションです。

  2. 中置演算子の使用: 定義した中置演算子を使用して、Coqの証明や計算を行います。例えば、以下のように使用することができます。

    Lemma example_proof: forall a b c, a << b << c = some_value.
    Proof.
     intros a b c.
     (* 証明のステップ *)
    Qed.

    ここでは、a << b << cという式を含む証明を行っています。

以上の手順に従って、Coqで中置演算子を定義して使用することができます。これにより、証明や計算の表現がより自然で読みやすくなります。

ご参考までに、中置演算子の定義には他にもオプションがあります。例えば、結合性や優先順位を指定することができます。詳細については、Coqの公式ドキュメントやチュートリアルを参照してください。