Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Программирование Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5]      все
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
Aleksandr Sharahov
Member

Откуда: Москва
Сообщений: 1982
mayton,

Еще одна вещь которая всегда мешает НАМ - отсутствие в правилах подстановочных символов.
Например, * могла бы обозначать любой символ исходного алфавита.
Без этого для описания перемещения символа приходится использовать
вместо одного правила целую кучу - по одному для каждого символа алфавита.

И это будет проблемой при генерации перестановок,
т.к. правила зависят от исходного алфавита и, в частности, от его мощности.

А других препятствий для генерации перестановок в алфавитном порядке вроде нет.

Сообщение было отредактировано: 31 май 20, 19:23
31 май 20, 19:24    [22143275]     Ответить | Цитировать Сообщить модератору
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
mayton
Member

Откуда: loopback
Сообщений: 47948
Aleksandr Sharahov, согласен. Мне вот еще не хватало символа конец строки. Типа "$" в регулярках.
31 май 20, 19:29    [22143276]     Ответить | Цитировать Сообщить модератору
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
Aleksandr Sharahov
Member

Откуда: Москва
Сообщений: 1982
mayton
Aleksandr Sharahov, согласен. Мне вот еще не хватало символа конец строки. Типа "$" в регулярках.


неудобно, да, но его всегда можно самому присобачить - это все-таки решаемо
31 май 20, 19:32    [22143277]     Ответить | Цитировать Сообщить модератору
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
mayton
Member

Откуда: loopback
Сообщений: 47948
По поводу Пролога. Ну вот фрагмент.

+
% Eden chronicles.

parent(god, lucifer).
parent(god, adam).
parent(god, eve).
wife(eve,adam).

parent(adam, kain).
parent(eve, kain).
parent(adam, abel).
parent(adam, sif).

% Sif genealogy

parent(sif, enos).
parent(enos, kainan).
parent(kainan,maleleil).
parent(maleleil,iared).
parent(iared,enoh2).     % TODO: Duplicate enoh?
parent(enoh2, mafusail).
parent(mafusail, lameh).
parent(lameh, noah).

.....

predecessor(X,Y) :-
   parent(X,Y).

predecessor(X,Z) :-
   parent(X,Y),
   predecessor(Y,Z).


Там где многоточие - ветхий и новый завет в моём кривом изложении. Генеалогия.

Далее остается спросить у системы

?- predecessor(god, jesus).


И она отвечает true.

Идею я дальше не развивал. Просто мало фактов. И они - плоские. Вот если бы взять генеалогию Толкиена
или Игр Престолов то там наверное можно было описать троюродных дядей или шуринов или свояков.

Но уже было не интересно.

Интересно было другое. Интеграция такой системы с чят-ботом. По ту сторону которого сидит
обычный юзер и не знает пролог и нужен некий фронт-енд к экспертной системе чтоб
транслировать вопросы юзера в некий пролого-подобный реквест.

Например
- Является ли Джон Сноу потомком рода Таргариенов?
31 май 20, 19:43    [22143282]     Ответить | Цитировать Сообщить модератору
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
mayton
Member

Откуда: loopback
Сообщений: 47948
Aleksandr Sharahov
mayton
Aleksandr Sharahov, согласен. Мне вот еще не хватало символа конец строки. Типа "$" в регулярках.


неудобно, да, но его всегда можно самому присобачить - это все-таки решаемо


А какого еще инструментация нам не хватает чтобы присобачить к НАМ возможности
генератора перестановок и конвертера инфиксной записи в ПОЛИЗ ?

Мне вот кажется не хватает представления исходной строки как дерева. Если-бы
мы могли скобочками так группировать

(1(2(3))


И обращяться к узлам этого дерева.
31 май 20, 19:47    [22143283]     Ответить | Цитировать Сообщить модератору
 Re: Четверговый НАМ и сложение двоичных чисел в строках  [new]
booby
Member

Откуда:
Сообщений: 1995
Aleksandr Sharahov

Еще одна вещь которая всегда мешает НАМ - отсутствие в правилах подстановочных символов.
Например, * могла бы обозначать любой символ исходного алфавита.
...

То, что Марков по этому поводу говорит, можно примерно в таком духе изложить:

вообще, для произвольного, "обобщенного" алгорифма, подобные штуки не запрещены, до тех пор,
пока понятно, как должна сработать трансформация, переводя одно слово в сразу другое.
Но и сложность трансформации при таком разрешении становится неопределенной.

Смысл специфически нормального алгорифма в том, чтобы использовать его как модель,
по отношению к которой можно доказывать какие-то утверждения, связанные со сложностью/производительностью.

Это единственная причина, по которой нормальный алгоримф требует выписывания каждого конкретного варианта
"атомарных", не предполагающих вариативности или более мелкого деления.
Это только вопрос автомизации формального суждения о сложности получения результата.

В общем случае, для не нормальных, алгорифмов, можно и смволы-комбинаторы в правилах придумывать,
каждый из которых, вообще говоря, должен уметь быть представимым в виде нормального алгорифма.
31 май 20, 20:10    [22143291]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5]      все
Все форумы / Программирование Ответить