Программирование на языке Пролог для искусственного интеллекта




Процедурная семантика - часть 8


                    if Сопоставились then

                        begin

                            НовыеЦели : =

                                конкат( [В1', ..., Вn' ], Другие Цели);

                            НовыеЦели : =

                                подставить( Конкрет, НовыеЦели);

                            вычислить( Прогр, НовыеЦели, Достигнуты)

                        end

                    end;

            Успех : =

Достигнуты

        end

end;

line();

Рис. 2. 11.  Вычисление целевых утверждений Пролога.

Всякий раз, как рекурсивный вызов процедуры вычислить

приводят к неуспеху, процесс вычислений возвращается к ПРОСМОТРУ и продолжается с того предложения  С,  которое использовалось последним. Поскольку применение предложения  С  не привело к успешному завершению, пролог-система должна для продолжения вычислений попробовать альтернативное предложение.


Содержание  Назад  Вперед