このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1274827528/941
#  ベクトルを規格化する関数 normal  
#   
#  2つのベクトルの差の大きさを返す関数 dist を作成せよ。 
#   
#  よろしくお願いします 
# 
# 

ベクトルの正規化(_ベクトル,_正規化されたベクトル) :-
    flat(_ベクトル,L1),
    分散(L1,_分散),
    U is sqrt(_分散) / _分散,
    行列の積(_ベクトル,[[U]],_正規化されたベクトル).

ベクトルの差([],[],[]) :- !.
ベクトルの差([[A]|R1],[[B]|R2],[[C]|R3]) :-
    C is A - B,
    ベクトルの差(R1,R2,R3).

normal(_ベクトル,_正規化されたベクトル) :- ベクトルの正規化(_ベクトル,_正規化されたベクトル).

dist(_ベクトル1,_ベクトル2,_ベクトルの差) :- ベクトルの差(_ベクトル1,_ベクトル2,_ベクトルの差).