Вопросы по теме 'failure-slice'

Пролог: ошибка выхода из глобального стека с тем, что мне кажется ОДНИМ уровнем рекурсии
Я довольно ржавый в прологе, но я не уверен, почему такие вещи терпят неудачу: frack(3). frack(X) :- frack(X-1). Итак, если я оцениваю frack(4). из интерактивной подсказки с указанными выше фактами я ожидаю, что она не должна бесконечно...
260 просмотров
schedule 06.05.2023

Почему в этом простом примере происходит сбой Пролога?
likes(tom,jerry). likes(mary,john). likes(mary,mary). likes(tom,mouse). likes(jerry,jerry). likes(jerry,cheese). likes(mary,fruit). likes(john,book). likes(mary,book). likes(tom,john). likes(john,X):-likes(X,john), X\=john. Привет! Выше...
952 просмотров
schedule 20.07.2023

сдвиг списка в Прологе
Следующий код приводит к бесконечному циклу с возможной ошибкой «Out of Local Stack». В основном я уменьшаю значение GX до тех пор, пока оно не станет таким же, как MX. Пример ввода [[m,g,b],[w,w,w]],путь wallBlock('w'). wallBlock('b')....
520 просмотров
schedule 03.01.2023

Пролог английской грамматики без ограничений
Я столкнулся с проблемой бесконечной рекурсии, пытаясь реализовать очень простую грамматику без ограничений в прологе. Вот мои правила: (вп -> глагольная фраза, нп -> именная фраза, ап -> прилагательная фраза, пп -> подготовительная фраза)...
426 просмотров

Эта программа сортировки на прологе переполняет стек просто из-за своей сложности или потому, что она неверна?
В предыдущий пост , в конце концов я понял, как написать программу gprolog, которая проверяет, является ли один список перестановкой другого. Насколько я знаю, это работает. Теперь я создаю предикат mysort , который объединяет предикат...
209 просмотров
schedule 20.11.2022

Что происходит, когда я вызываю `even(3)`, где `even` является функцией-генератором?
У меня есть следующие генераторы нечетных и четных чисел в прологе even(0). even(X) :- odd(Y), X is Y+1, X>0. odd(1). odd(X) :- even(Y), X is Y+1, X>1. Я хотел бы понять, почему я не могу использовать эти функции в качестве тестеров,...
707 просмотров
schedule 07.10.2022

Prolog - Правила правильные, но вывод не такой, как должен?
Подсказка Четверо гостей (полковник Мастард, профессор Плам, мисс Скарлетт, мисс Грин) посещают званый обед в доме мистера Бодди. Внезапно гаснет свет! Когда они возвращаются, мистер Бодди лежит мертвый посреди стола. Каждый является...
912 просмотров
schedule 29.11.2023

Минимальный элемент пары в списке в прологе медленный
У меня есть этот код в GNU Prolog, и я не знаю, почему он работает медленно с парным списком из 50 элементов: pairwise_min( [X], X ) :- !. pairwise_min( [(A,B)|T], (A,B) ) :- pairwise_min( T, (_,B1) ), B1 > B, !. pairwise_min(...
191 просмотров
schedule 07.10.2023

Пролог условия завершения
Мой учитель предоставил нам несколько слайдов о Прологе, и я обнаружил кое-что немного странное. reverse([],[]). reverse([X|Xs],Zs) :- reverse(Xs,Ys), append(Ys, [X], Zs). По его словам, программа завершается, когда 1-й аргумент...
431 просмотров
schedule 04.09.2022

Пролог: избыточные программные точки в срезе сбоя?
Мы внедряем диагностические инструменты для объяснения неожиданного универсального прерывания в чистых, монотонных программах Prolog на основе концепции срез сбоя . Как указано в документе " Локализация и объяснение причин для программы с...
211 просмотров

Обезьяна и банан в мышлении как вычислении
Я читаю книгу Thinking as Computation и написал код в главе 9.4: plan(L) :- initial_state(I), goal_state(G), reachable(I, L, G). initial_state([]). legal_move(S, A, [A | S]) :- poss(A, S). goal_state(S) :- has_bananas(S)....
151 просмотров
schedule 12.07.2023

Пролог - бесконечный цикл
Я хочу проверить, находится ли элемент в середине списка. Я ищу средний элемент, а затем проверяю, является ли он членом списка, но получаю бесконечный цикл. Мои предикаты: remove_first([_,H1|T], [H1|T]). remove_last([_],[])....
1389 просмотров
schedule 16.02.2024

Все возможные положения коня за n ходов - бесконечный цикл в прологе
У меня проблема с откатом в Прологе, когда вычисляется решение для всех возможных позиций коня за n ходов, зная точный путь. Мое решение печатает некоторые из первых результатов, а затем никогда не завершается, ища невозможные результаты. Это...
954 просмотров

Пролог не завершается после изменения порядка целей
В настоящее время я работаю над примерами Learn Prolog Now и над одним упражнением У меня есть КБ, в котором заканчивается локальный стек, если я просто внесу небольшое изменение в одно правило. это КБ: byCar(auckland,hamilton)....
101 просмотров

Пролог — бесконечный цикл с очень простым определением правила
Я пытался практиковать Пролог, как предложил мой ТА, я пытаюсь создать правило append3(A,B,C,D) , которое означает, что D является результатом добавления A, B и C. Дано определение append(A,B,C) append([],B,B)....
92 просмотров
schedule 09.06.2022