Значение --› в swi-prolog

Я новичок в птологе. Недавно я видел кусок кода. Я хочу знать значение некоторых его частей и как их использовать.

код, как показано ниже:

MatrixTconcat([]) --> [].
matrix_tconcat([Cs|Css]) -->
   row_rows_rest_(Cs,Css,Mss),
   matrix_tconcat(Mss).

во-первых, что означает -->

во-вторых, почему MatrixTconcat начинается с заглавной буквы, а matrix_tconcat с маленькой? какая между ними разница?

вот еще кусок кода:

RowRowsRest([],Css,[]) -->
   { emptylists(Css) }.
row_rows_rest_([X|Xs],Xss,[Xs|Mss]) -->
   [X],
   nonemptyrows_rest(Xss,Mss).

для чего используется {and} в прологе и как его использовать?


person Lin Jiayin    schedule 26.09.2015    source источник
comment
См. соответствующий вопрос: http://stackoverflow.com/questions/32579266/what-does-the-operator-in-prolog-do.   -  person mat    schedule 26.09.2015
comment
Ошибка копирования/вставки: начните заново с исходным кодом, stackoverflow.com/a/32734744/4609915   -  person repeat    schedule 26.09.2015