「Learn Prolog」という本でPrologを学んでいます。私はPrologの初心者です。
私はナレッジベースを持っています:
transpose(Matrix, Transpose) :-
dim(Matrix, [R, C]),
dim(Transpose, [C, R]),
( foreachelem(E,Matrix,[I,J]),
param(Transpose)
do subscript(Transpose,[J, I], E ) ).
走る:
Matrix=[]([](11,12),[](21,22),[](31,32)),transpose(Matrix,Transpose).
結果:
Matrix = []([](11, 12), [](21, 22), [](31, 32))
Transpose = []([](11, 21, 31), [](12, 22, 32))
の趣旨がわかりませんparam
。理解するのを手伝ってください。ありがとう。