Пролог Программа, чтобы проверить, простое ли число

Я написал следующую программу, основанную на логике, что простое число делится только на 1 и на себя. Поэтому я просто делю процесс деления на все числа, которые больше одного и меньше его самого, но у меня, похоже, есть проблема, поскольку я получаю все введенные числа как истинные. Вот мой код ...

divisible(X,Y) :-
    Y < X,
    X mod Y is 0,
    Y1 is Y+1,
    divisible(X,Y1).

isprime(X) :-
    integer(X),
    X > 1,
    \+ divisible(X,2).

Заранее спасибо :)

Ответы на вопрос(5)

Ваш ответ на вопрос