問題タブ [sicstus-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.

0 投票する
1 に答える
9071 参照

prolog - Prolog の整数除算演算子

このコードは、プロローグの暗号パズルを解くために私が書いているプログラムの一部です。CLPFD (SICStus Prolog) を使用してこれを解決しています。組み込みの整数除算演算子「//」を使用しているときにエラーが発生します (詳細については以下を参照してください)。これを解決できなかったので、独自の整数除算関数を作成しました。

私が知りたいのは、「//」が失敗する理由です。+、 - 、 / などの他の算術演算子にはそのような問題はありません。

前:

これは私が得るエラーです

エラー:ドメイン エラー: clpfd_expression' expected, found(0+_G1592+_G1586)//10' 例外: (12) throw(error(domain_error(clpfd_expression, (0+_G3994{0..9}+_G3991{0..9}))// 10)、_G3976)) ?

後:

これは完全に機能します。「//」を独自の整数除算に置き換えるだけでした

0 投票する
6 に答える
1337 参照

prolog - SICStus Prolog によるフィボナッチ数列の一般化

一般化されたフィボナッチ数列 (GFS) に対するクエリの解決策を見つけようとしています。クエリは次のとおりです。12 番目の数字が 885 である GFS はありますか? 最初の 2 つの数字は 1 ~ 10 の間で制限される場合があります。

(1, 1) で始まるシーケンスで N 番目の数値を見つけるための解決策を既に見つけました。ここで、最初の数値を明示的に定義します。これが私がこれのために持っているものです:

前述のクエリについては、動的に実行する必要があるため、初期番号を明示的に定義せずに fib メソッドを再利用する次の方法でうまくいくと思いました。

...しかし、これはうまくいかないようです。

この方法で初期数を定義することはできませんか、それとも何かひどく間違っていますか? 解決策を求めているわけではありませんが、これを解決するのに役立つアドバイスをいただければ幸いです。

0 投票する
1 に答える
3888 参照

dynamic - 既存のプロローグ ファイルへのファクトの追加

元の内容を上書きせずに、既存の Prolog ファイルにファクトを挿入するのに問題があります。

ファイル test.pl があるとします:

これをプロローグにロードし、さらに事実を主張すると:

私は次のようにしてこれを保存できることを知っています:

これは機能しますが、test.pl には ":- dynamic Born/2" ではなく事実のみが含まれるようになりました。

このファイルをリロードすると、":- dynamic Born/2." のため、test.pl にファクトを挿入できなくなるため、これは問題です。もう存在しません。

私はどこかでそれを読んだ、私はできる:

これはファイルの最後に追加するだけですが、次のエラーが発生します。

ところで、私は Sicstus プロローグを使用しています。これは違いがありますか?

ありがとう!

0 投票する
2 に答える
170 参照

eclipse - SicstusとEclipse(Spider)を使用したコードスタイル設定

私は現在、Eclipse Galileo(Spider)内でSicstus PrologVC94.1.1を使用しています。非常に初心者の質問があります。インデントと一般的なコードスタイルの設定を自動的に制御するにはどうすればよいですか?

0 投票する
0 に答える
155 参照

c# - C# と Sicstus プロローグを接続するにはどうすればよいですか?

重複の可能性:
Prolog と C# の統合

Prolog プロジェクトを C# に接続しようとしています。これどうやってするの?

0 投票する
1 に答える
6944 参照

prolog - prolog存在エラー:プロシージャが存在しません

リスト用のモジュールを含めました::-use_module(library(lists))。しかし、それでもこのエラーが発生します。

誰か助けてもらえますか?

0 投票する
1 に答える
105 参照

sicstus-prolog - SICStus Prolog での実行時間の制限

SICStus Prolog でクエリの実行時間を制限することはできますか?

0 投票する
2 に答える
711 参照

prolog - 削除: プロローグ

制約充足問題を解決する「Computational Intelligence book」から csp.pl をコンパイルしようとしています。これをベースにクロスワードパズルジェネレーターを解いていきたいです。

しかし、コードを実行しようとすると、

remove は組み込みの述語ではないと思います

これはコードの一部です...誰でもこの問題を解決するのを手伝ってくれませんか...教科書では一部のプログラムでhvが実行されると主張されているため、コードは実行されるはずです..

助けてください

0 投票する
1 に答える
205 参照

java - Java:実行中のPrologプログラムを閉じるためのキーバインディングを作成する

バックグラウンドで実行され、押されたキー(私の場合はスペースバー)の特定の組み合わせを検出し、スペースバーを取得した後、ctrl+cとaをに送信するJavaで小さなプログラムを作成したいと思います。実行される予定のプロローグコマンドを中止するためのプロローグコンソールコマンド。それは可能でしょうか?

よろしくお願いします!

0 投票する
1 に答える
469 参照

shell - シェルファイルを介してPrologSicstusを実行する

私はシェルスクリプトを介してファイルを実行し、その出力をそのファイルに書き込もうとしています。

スクリプトは非常に単純です。

/usr/local/sicstus4.1.1/bin/sicstus -l run --goal "runh('examples / callbacks_matlab.pl'、S)、halt。" >「/Users/Andrew/Dropbox/IP/modellingphase/rules.txt」

ただし、これを実行すると、次のエラーで失敗します。sicstus(24883,0x7fff70916ca0)malloc:*オブジェクト0x10082b408のエラー:解放されたオブジェクトのチェックサムが正しくありません-オブジェクトは解放された後に変更された可能性があります。*デバッグするmalloc_error_breakにブレークポイントを設定します

一方、ゴールから「停止」を削除すると、すべてが正常になりますが、Sicstusはまだ実行されています。

シェルスクリプトで上記のエラーが発生することなく、sicstusを終了する方法はありますか?

お時間をいただきありがとうございます。

アンドレアス