Author |
Message |
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Дело стоящее, но сильно зависит от лояльности научного руководителя
|
26 Aug 2005 23:18 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Кстати, посмотреть бы на реализацию Пролога...
|
26 Aug 2005 23:29 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
Проверил практическую возможность реализации "чистого" Пролога без встроенной арифметики (т.е. арифметика реализована средствами самого Пролога). С помошью gprolog написал программку, которая раскладывает целые числа произвольной длины в списки цифр и производит над ними простейшие операции - сложение и вычитание (ни одного вызова "is"). Точно также можно реализовать арифметику в нашем ТРИЛОГе-ПРОТЕРЛОГе - с описанием предиката is на самом языке (языковом псевдокоде).
|
26 Aug 2005 23:29 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
Какую реализацию ты имеешь ввиду?
|
26 Aug 2005 23:30 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
|
27 Aug 2005 03:08 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Это я про исходник Пролога написал.
|
27 Aug 2005 03:09 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
Угу - вполне стандартная реализация:
http://gnu-prolog.inria.fr
|
27 Aug 2005 06:23 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
Да их много - какие-то более полные, какие-то менее полные. Даже на джаве есть. Я вот хочу на RW1 написать реализацию
|
27 Aug 2005 06:26 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Я тут подумал и пришёл к выводу, что мне даже не столько исходник нужен, сколько описание того, как реализовать Пролог (или какой-нибудь другой декларативный язык). Говорят, есть старая переводная книжка, где рассматриваются вопросы реализации. Пока не нашёл.
|
30 Aug 2005 23:09 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Что-то обсуждение затихло. Надо так понимать, что все усердно трудятся гоняя гнутый пролог ?
|
06 Sep 2005 12:02 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
А чего обсуждать то? Делать надо :hammer:
Но мне одному не справиться...
|
11 Sep 2005 19:27 |
|
|
Mac Buster
Retired
Joined: 03 Aug 2003 22:37 Posts: 1474 Location: Moscow
|
Ты хоть план работ набросай, я посмотрю чем могу помочь. Хочу посмотреть на реализацию машины вывода
|
11 Sep 2005 20:58 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
| | | | Shaos wrote: В данном случае нам проще раздать значения таким образом: P - истина (true в терминах Пролога) O - неизвестно (unknown) N - ложь (fail в терминах Пролога)
Мы можем ввести оператор \ обозначающий отрицание, который превращал бы истину в ложь, ложь в истину, а неизвестность оставлял бы неизвестностью
Запятая (,) обозначающая в обычном Прологе И в нашем случае не может быть заменена на троичный эквивалент MIN, вместо этого предлагается следующая таблица истинности для И в ПРОТЕРЛОГе: \ N O P N N O N O O O O P N O P расшифровывается так - если хотя бы один из аргументов неизвестность, то результат неизвестен и если все аргументы истина, то результат - истина
Точка с запятой (;) обозначающая в обычном Прологе ИЛИ в нашем случае не может быть заменена на троичный эквивалент MAX, вместо этого предлагается следующая таблица истинности для ИЛИ в ПРОТЕРЛОГе: \ N O P N N N P O N O P P P P P расшифровывается так - если хотя бы один из аргументов правда, то результат считать правдой, если аргументы принимают значения ложь и неизвестность, то результат - ложь, и, наконец, если все аргументы неизвестность, то результат неизвестен (неопределен)
| | | | |
На странице http://xyzzy.freeshell.org/trinary/ таблицы истинности троичной логики для И и ИЛИ совершенно иные:
И судя по всему они правильные - посыпаю голову пеплом :oops:
Last edited by Shaos on 20 Sep 2012 20:38, edited 1 time in total.
|
09 Jun 2006 01:38 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
AND вроде правильно нарисовано, а вот с OR у меня чего-то не срастается - вроде как должно быть так:
И тогда AND превращается в MIN, а OR - в MAX...
|
09 Jun 2006 18:35 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22599 Location: Silicon Valley
|
Хотя всё не так... Здесь надо забыть про T и F и думать про положительный или отрицательный факт...
|
09 Jun 2006 19:46 |
|
|