引数の最大"&QUOTを定義します。 有限集合オーバー機能などがあり、そのプロパティの一部を証明し、リストを経由して迂回を回避 私は、そのドメインの自然数の有限「インデックス集合」である関数としてベクトルのカスタム実装での作業、およびその画像1は、通常、実際の最大値を定義することが可能ないくつかのタイプのものであるしています。 例えば。 私は、V 1 = 2.7とv 3 = 4.2の2次元ベクトルvを持つことができます。 このようなベクターに私は上記のVの例で私に最大成分のインデックスを指示し、オペレータのような「引数最大」、3を定義したいと思います。 オペレータのような「引数maxは「追加的な値でコンポーネントに適用されるタイブレーク機能を受け入れますので、私は ""インデックスを言っています。 (背景はオークションでの入札です。) 私は有限集合上の最大は(私はまだそれがどのように動作するか理解していないうち)fold1を使用して定義されていることを知っています。 私は自分自身で受け入れられた、これを試してみましたが、その後、私はやってみたかった他のもののために動作しませんでした: さらに、私は可能性が高い誘導を必要とする演算子のように私の "引数の最大」の特定のプロパティを、証明したいことに注意してください。 私は有限集合の上に誘導するためのルールfinite_ne_inductがあることを知っています。 [OK]を、私はまた、それを評価できるように、私の演算子を定義できるようにしたいと思います(例えば、具体的な有限集合としようとした場合)が、評価 期待リターン値1で私に次のエラーを与えます: そこで私は、リストに私の有限集合の変換に頼っ。 リストに私はオペレータを定義する、とlist_nonempty_inductを使用して誘導することによって(それは興味深いです場合、コードを共有することができます)、そのプロパティの一部を証明することができました。 次のように作業リストベースの定義はなります。 私は直接有限集合のコンストラクタを介して関数を定義するために成功しませんでした。 以下は動作しません。 それは私にエラーメッセージを表示します リストコンストラクタはデータ型として定義されているためである可能性があります。 有限集合に対し、単に、誘導方式として定義されていますか? どのような - あなたは有限集合上で、この関数を定義する方法を知っていますか? 直接それを書き込むことによって、またはいくつかの倍のような効用関数のいずれかによって?