Visual prolog Синтаксическая ошибка

Я новичок в изучении пролог. при выполнении практической работы в данном коде показывает ошибку в слове "nondeterm l1(integer, list)".Я вообще не врубаюсь что за ошибка.

implement main
    open core
domains list=integer*.

predicates
nondeterm l1(integer, list).
nondeterm pos_el(list, integer).
nondeterm dob(integer, list, list).
nondeterm result.
clauses
    l1(0,[]).
    l1(N,[H|T]):- readreal(H), N1=N-1, l1(N1,T).
    pos_el([X],X).
    pos_el([_|T],X):- pos_el[T,X].
    dob(E,[H|T], [E,H|T]).
    result:- write("vvedite chislo elementov N:"),
    readint(N),
    write("Введите элемент:"),nl,
    l1(N,L1),
    pos_el(L1,X),
    dob(X,L1,L2),
    write("список 1 :"),nl,write(L1),nl,
    write("список 2 :"),nl,write(L2),nl.)

end implement main

goal
    console::runUtf8(main::run).

Ответы (0 шт):