問題タブ [swi-prolog]
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 - アトムが小文字かどうかを調べる
私はこのようにやっています:
そのような回避策のように感じない方法はありますか?
exception - Prologでタイムアウト例外をキャッチする方法
プロローグでのアルゴリズムの「実行」を制限したい。ヒントを教えていただけますか、その方法を教えてください。この述語を見つけました:call_with_time_limit time_limit_exceeded例外をキャッチするにはどうすればよいですか?ありがとう
アップデート:
私はそれをこのように試しています:
しかし、timeout(1)を呼び出すと、次のことに注意してください。
しかし、私がこのようにそれを行うとき:
もう一度timeout(1)を呼び出して、すべて問題ありません。なんで?UPDATE 2に感謝 します:
問題は解決しました。大文字で「引数」を予測する必要があります。
prolog - グローバル変数をエミュレートするためのアサートとリトラクト
グローバル変数をエミュレートするためにこれを行っています:
別の方法はありますか?(変数を引数として渡すことに加えて、つまり)。必ずしもより効率的であるとは限りません。ただ興味があります。
prolog - SWI-Prolog で述語を集約する
X
私はすべてを数える必要がありsome_predicate(X)
、そのようなものは本当にたくさんありX
ます。それを行う最善の方法は何ですか?
最初の手がかりはfindall
、リストに蓄積し、リストの長さを返すことです。
(permutation/2
多くの結果があり、カウントを計算する方法が悪いことを示すダミーのプレースホルダーです)
明らかに、実際のデータではスタック オーバーフローが発生します。
次に、 に置き換えようとしてfindall
いsetof
ますが、役に立ちません。
最後に、aggregate
述語の [ ][1] (クリック可能) ファミリを見つけて、 and を使用しようとしましaggregate/3
たaggregate/4
。
それはすべて間違っていると思います。私はこのようなものを取得する必要があります:
私は何を間違っていますか?
正しい答えを計算する述語を宣言するにはどうすればよいですか? [1]: http://www.swi-prolog.org/pldoc/doc/home/vnc/prolog/lib/swipl/library/aggregate.pl
user-interface - Logtalk と XPCE
XPCE と Logtalk の両方を使用してアプリケーションを開発できますか、それともクラス システムに互換性がありませんか?
python - Pythonからprolog述語を呼び出す
私はいくつかの.pl
ファイルを持っていて、Pythonスクリプトからその中で宣言された述語を呼び出したいと思います。どうやってやるの?
例えば、test.pl
のように働く
rD
どういうわけかPythonスクリプトから呼び出して、結果変数で答えを取得したい
ps:これは単なる例であり、現在のPrologプログラムを書き直したくありません。
prolog - SWI-prolog のレコード ライブラリの例を探しています
レコード ライブラリの使用例 (またはチュートリアル) を探しています
http://www.cs.fit.edu/~pkc/classes/ai/swi-prolog/Manual/record.html
テンプレートとして使用できる SWI-prolog 用。指針はありますか?
ありがとう、
SetJmp
prolog - Prologでファイルをロードする方法は?
c:/ に「file1.pl」という名前のファイルがあります。
ここで、ファイルをprologにロードし、プロシージャと定義した関係についてクエリを実行します。
私が理解したように、次の手順を実行する必要があります。
ファイル→編集。
ファイル -> 変更されたファイルをリロードします。
ファイル -> ナビゲーターでファイルと手順を表示します。
これらの手順を実行すると、何も起こりません。クエリを実行すると、次の問題が発生します。toplevel: Undefined procedure: blabla/2 (DWIN couldnt correct goal)
ありがとうございました。
prolog - SWI-PrologのセマンティックWebライブラリを使用してRDF/OWLをクエリする方法は?
SWI-PrologセマンティックWebライブラリを使用してOWL/RDFファイルにクエリを実行し、いくつかの情報を抽出するにはどうすればよいですか?
OWL / RDFファイルにはすべてのDebianパッケージに関する情報が含まれているため、パッケージの依存関係を見つけるためにクエリを実行する必要があります。
例えば:
OWLファイルは次のように構成されています。
OWL / RDFファイルをPrologスクリプトにロードするにはどうすればよいですか?また、パラメーターとしてAを入力し、スクリプトがBとCを出力するように、Prologスクリプト内でクエリを実行するための構文は何ですか?
java - Ubuntu11.04でJPLを使用して「シンボル検索エラー」を解決するには?
Java でプログラムをコーディングしていて、Prolog に接続したいと考えています。したがって、JPLを使用することにしました。Windows Vista で JPL を使用するのは完璧です。その後、OS プラットフォームを Ubuntu 11.04 に変更する必要があります。残念ながら、エラーがあります:
シンボル検索エラー: /usr/lib/swi-prolog/lib/i386/libjpl.so: 未定義のシンボル: PL_is_initialized
環境:
- Ubuntu 11.04
- Java バージョン 1.6.0_24
- Eclipse ガリレオ バージョン: 3.5.2
- i386 用の SWI-Prolog バージョン 5.10.1
- Jpl (apt-get install swi-prolog-java)
- Family.java + family.pl
作業の手順と問題点を以下に説明します。step1: Synaptic Package Manager を使用して swi-prolog + jpl をインストールする
step2: Family.java を実行し、エラーを発見
step3: VMarguments
でライブラリ パスを構成する
step4: 再度実行すると、エラーが発生します
/usr/lib/jvm/java-6-sun-1.6.0.24/bin/java: symbol lookup error: /usr/lib/swi-prolog /lib/i386/libjpl.so: 未定義のシンボル: PL_is_initialized
step5: 環境も構成しますが、エラーは同じです。
ステップ3と5のように問題を解決するために使用した方法は、インターネットから検索しました。試してみるべき他の解決策が見つかりません。誰にもアイデアはありますか?
前もって感謝します。