2017-03-14 10 views
0

述語を定義しようとしていますverb_to_noun(Av,N)。それは動詞「祝う」を取り、それを名詞の「お祝い」に変更します。私は接尾辞を追加するだけでなく、動詞の最後から 'e'を削除するのにも苦労しています。私は動詞を動詞(reg、celebrate)と定義しました。どのように起動するかについての助言や提案は高く評価されます。 defintionプロローグでNLP動詞を名詞にする

verb_to_noun(Av, N) :- 
    verb(reg, Av), 
    sub_atom(Av, Before, 2, 0, te), 
    sub_atom(Av, 0, Before, 2, X), 
    atom_concat(X, tion, N). 

+3

あなたの質問では明確ではありませんが、「お祝い」以外の他の動詞にも興味がありますか?どのクラスの名詞や動詞を変更しようとしていますか? Prologを書く前に、あるいはPrologについて考えてみる前に、最初に "ルール"が変換のために何であるかを判断する必要があります。規則を(平易な言葉で)書くことができれば、それをPrologに変換するという問題を解決することができます。例えば、複数形にする単純な規則は、「単語が 's'で終わらない場合は、 's'を追加し、そうでない場合は何もしない」とすることができます。 – lurker

答えて

1

私はあなたが原子の終了を確認したり、原子の一部を取り、その後の部分から新しい原子を作ることができる方法を見て

?- verb_to_noun(celebrate, N). 
N = celebration. 

を取得します。すべてSWI-Prologにあり、ISOでマークされている述語なので、おそらく他の実装にもありますか?

関連する問題