Prolog
% =================================================================
% データ定義(ファクト)
% product(Name, Price, Rating, ReviewCount)
% =================================================================
product(item1, 3000, 4.8, 20).
product(item2, 1800, 4.2, 200).
product(item3, 5000, 4.9, 5).
product(item4, 2500, 4.5, 80).
% =================================================================
% AIが独自に定義した「おすすめ(recommended)」のルール
% 定義:評価(Rating)が4.5以上、かつレビュー数(ReviewCount)が15件以上
% =================================================================
recommended_product(Name) :-
product(Name, _, Rating, ReviewCount),
Rating >= 4.5,
ReviewCount >= 15.
% =================================================================
% メイン処理(ideoneの実行用エントリーポイント)
% =================================================================
main :-
% すべてのおすすめ商品をバックトラックで列挙して表示
forall(recommended_product(Name),
(format('Recommended item: ~w~n', [Name]))),
UHJvbG9nCiUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KJSDjg4fjg7zjgr/lrprnvqnvvIjjg5XjgqHjgq/jg4jvvIkKJSBwcm9kdWN0KE5hbWUsIFByaWNlLCBSYXRpbmcsIFJldmlld0NvdW50KQolID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CnByb2R1Y3QoaXRlbTEsIDMwMDAsIDQuOCwgMjApLgpwcm9kdWN0KGl0ZW0yLCAxODAwLCA0LjIsIDIwMCkuCnByb2R1Y3QoaXRlbTMsIDUwMDAsIDQuOSwgNSkuCnByb2R1Y3QoaXRlbTQsIDI1MDAsIDQuNSwgODApLgoKJSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQolIEFJ44GM54us6Ieq44Gr5a6a576p44GX44Gf44CM44GK44GZ44GZ44KB77yIcmVjb21tZW5kZWTvvInjgI3jga7jg6vjg7zjg6sKJSDlrprnvqnvvJroqZXkvqEoUmF0aW5nKeOBjDQuNeS7peS4iuOAgeOBi+OBpOODrOODk+ODpeODvOaVsChSZXZpZXdDb3VudCnjgYwxNeS7tuS7peS4igolID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CnJlY29tbWVuZGVkX3Byb2R1Y3QoTmFtZSkgOi0KICAgIHByb2R1Y3QoTmFtZSwgXywgUmF0aW5nLCBSZXZpZXdDb3VudCksCiAgICBSYXRpbmcgPj0gNC41LAogICAgUmV2aWV3Q291bnQgPj0gMTUuCgolID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiUg44Oh44Kk44Oz5Yem55CG77yIaWRlb25l44Gu5a6f6KGM55So44Ko44Oz44OI44Oq44O844Od44Kk44Oz44OI77yJCiUgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KbWFpbiA6LQogICAgJSDjgZnjgbnjgabjga7jgYrjgZnjgZnjgoHllYblk4HjgpLjg5Djg4Pjgq/jg4jjg6njg4Pjgq/jgafliJfmjJnjgZfjgabooajnpLoKICAgIGZvcmFsbChyZWNvbW1lbmRlZF9wcm9kdWN0KE5hbWUpLAogICAgICAgICAgIChmb3JtYXQoJ1JlY29tbWVuZGVkIGl0ZW06IH53fm4nLCBbTmFtZV0pKSksCiAgICBoYWx0Lg==