簡単な手順の後に特定の文字列になる文字列のリストを作成できる Prolog スクリプトを作成しようとしています。Prolog に関する私の知識は非常に限られており、これを実行できるかどうかもわかりません。不可能な場合は教えてください。
私はこれまでにこれを手に入れました
replace_word(Old, New, Orig, Replaced) :-
atomic_list_concat(Split, Old, Orig),
atomic_list_concat(Split, New, Replaced).
この操作を実行できます
10 ?- replace_word('a','e','glava',X).
X = gleve.
しかし、それを後戻りすることはできません
11 ?- replace_word('a','e',X,'gleve').
ERROR: atomic_list_concat/3: Arguments are not sufficiently instantiated
問題の原因は想像できますが、それを回避する方法はありますか?