Home › フォーラム › AZ-Prologサポート掲示板 › AZ−Prologで否定(true).の述語を教えてください。
- このトピックは空です。
-
投稿者投稿
-
-
2016/10/19 7:43 AM #58447上間ゲスト
否定の述語
マニュアルで検索したのですが、見つけきれませんでした。
テストしてもうまく行きません。
| ?-\+(false).
| ?-not(false).
no
| ?-not(1==2).
no
| ?- -
2016/10/19 5:05 PM #58452上間健ゲスト
自前で定義しないといけないのでしょうか?
NOT
==============
not(X) :- X, !, fail.
not(_). -
2016/10/19 5:07 PM #58453上間健ゲスト
rc初期化ファイルはどこでしょうか?
そこに書き込めばいいですね! -
2016/10/19 5:47 PM #58455上間健ゲスト
ホームフォルダ 〜 に azprolog.ini ファイルを作成。
% cat azprolog.ini
not(X) :- X, !, fail.
not(_).上がファイルの中身です。
zshシェルなので ~/.zshrc に
alias prolog=’prolog -c ~/azprolog.ini’を書き込みました。
それでターミナルを開きなおして テストしました。
AZ-Prolog Version 9.53 (Linux/x64)
Copyright (C) SOFNEC CO., LTD. 1987-2016/09/11
| ?-listing.
not(X) :-
X,
!,
fail.
not(_).
yes
| ?-not(3==3).
no
| ?-not(3==4).
yes
| ?-not(true).
no
| ?-not(false).
yes
| ?- -
2016/10/20 8:12 AM #58456稲葉ゲスト
fy オペレータ述語の \+ です。 (Winでは 半角の ¥+ )
ただし、TopLevelで入力するときは、?- のあとにスペースをあけないと
記号連続の述語として扱われてしまいますのでご注意ください。
| ?-\+ fail.
| ?- listing.
?-\+(fail). <== 述語 ’?-\+’ /2 として登録
yes| ?- \+ fail.
yes
| ?- \+ true.
no
| ?- \+ \+ true.
yes -
2016/10/20 1:53 PM #58465上間健ゲスト
稲葉さま
ありがとうございました。>>稲葉さん:: 記号連続の述語として扱われてしまいますのでご注意ください。
\+ も試していたのですが、
プロンプトにつなげて実行していたので、この述語は定義されていないな〜〜と勘違いしていました。
-
2020/12/08 10:34 PM #59017Inabaゲスト
fy オペレータ述語の \+ です。 (Winでは 半角の ¥+ )
ただし、TopLevelで入力するときは、?- のあとにスペースをあけないと
記号連続の述語として扱われてしまいますのでご注意ください。
| ?-\+ fail.
| ?- listing.
?-\+(fail). <== 述語 ’?-\+’ /2 として登録されてしまう。
yes| ?- \+ fail.
yes
| ?- \+ true.
no
| ?- \+ \+ true.
yes -
2020/12/08 10:35 PM #59018Inabaゲスト
fy オペレータ述語の \+ です。 (Winでは 半角の ¥+ )
ただし、TopLevelで入力するときは、?- のあとにスペースをあけないと
記号連続の述語として扱われてしまいますのでご注意ください。
| ?-\+ fail.
| ?- listing.
?-\+(fail). <== 述語 ’?-\+’ /2 として登録されてしまう。
yes| ?- \+ fail.
yes
| ?- \+ true.
no
| ?- \+ \+ true.
yes
-
-
投稿者投稿
- フォーラム「AZ-Prologサポート掲示板」には新規投稿および返信を追加できません。