問題タブ [prolog-setof]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
prolog-setof - プロローグ - 許可リスト L iff #L > n in setof/3
Z : Z = wittgenstein、つまり、ファンが3 人以上いるアイドルのみを掲載したいのですが。上記の述語への出力:
次のことが私に起こりました:
でもどうやって使うの?
ありがとうございました。
prolog - プロローグの「^」はどういう意味ですか?
私は映画に関する知識ベースを持っています。私の俳優と女優の述語は次のようになります。
ナレッジ ベース内の個別の俳優と女優を数えようとしています。私は単に書くだろう:
それは機能しませんが、そのように機能します:
それで、その「^」は何ですか?
編集:すべての映画とすべての役割を1回だけ選択することについての何かのようです. しかし、私はまだ確信が持てません。
prolog - プロローグは、ルールの戻りパラメーターが一意であり、正規の順序であることを確認します
次のような Prolog ファイルで宣言されたデータがあります。
...
...
データは化合物に対してstrong1
orを定義しないことに注意してください。これらは、最小限の作業例に寄与しないルールによって決定されます。それらが存在することを知っておくと役立つかもしれないので、それらについて言及します。weak1
gen1(...)
サイクルを形成するこれらの用語間の関係を見つけようとしています。サンプル関数の 1 つを次に示します。
A
このセットアップでは、 、B
、およびC
が同じ順序になっている重複を削除します。ただし、異なる順序での重複は削除されません。例えば:
そのクエリは の 1 セットのみを返す必要があり[A, B, C]
ます。
を使うことも考えましsort/2
たが、単純にソートすると答えの意味が変わってしまう場合があります。
<
とも試し>
ましたが、それらはアトムでは機能しないようです。
何かご意見は?
(私は同様の質問を見ましたが、ここで私がしていることを他の人がしていることと比較してどうすればよいかわかりません)
編集:最小限の作業例に関するコメントに従って。
prolog - Prolog (Sicstus) - 非メンバーおよび一連の問題
次の事実を考えると:
共通のステーションを持たないチューブ ラインのすべてのペアを見つける必要があり、次の結果が得られます。
私は以下の答えを思いつきましたが、それは間違った答えを与えるだけでなく、私の X^ 条件も適用しません - つまり、ステーションリストのメンバーごとに結果を別々に出力します:
これは、定義が生成する出力です。
メンバーシップに関する私の論理は間違っていると思いますが、何が間違っているのかわかりません。誰でも私が失敗しているのを見ることができますか?
ここで提案されているように、結果収集に関する Learn Prolog Now の第 11 章も読みましたが、まだ ^ 演算子を正しく使用できないようです。どんな助けでも大歓迎です!
アップデート:
ユーザー CapelliC の提案に従って、コードを次のように変更しました。
ただし、以下では (X,Y) と (Y,X) の重複が得られますが、次のステップでは別のルールでそれらを削除します。お手伝いありがとう!