PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » OpenSource » Программная реализация "Символической логики" Льюиса Кэрролла.


Программная реализация "Символической логики" Льюиса Кэрролла.

Сообщений 1 страница 3 из 3

1

Здравствуйте.
С разрешения Петра публикую ссылку на свой сайт
http://symbolic-logic.ru/
где размещены теоретические и практические наработки по программной реализации метода логического вывода, описанного в небольшой книжке "Символическая логика" Льюиса Кэрролла.
Способ графического представления, используемый Кэрроллом, удалось реализовать в виде математического алгоритма.
По причине недостаточного опыта в программировании и обилия сложностей, можно сказать философского характера, самостоятельно написать программу у меня так и не получилось.
Приглашаю всех желающих принять участие в совместном или индивидуальном порядке в доведении "идеи" до программного продукта. От каких-либо авторских претензий к любому, кто сможет самостоятельно оформить готовый программный продукт, использующий описанный алгоритм в дальнейшем полностью отказываюсь. Вместе с тем я очень заинтересован в том, чтобы такая программа появилась, поэтому буду оказывать любую посильную помощь всем желающим в работе над программой.
Материалы сайта по теме расширения функциональности программы будут постепенно пополняться, но основное уже опубликовано.
Добро пожаловать!

0

2

Дополнил примерами работы программы. Видимо, с этого стоило бы начинать, но уж как вышло.
http://symbolic-logic.ru/soderzhanie/chast-8/
http://symbolic-logic.ru/soderzhanie/chast-9/

0

3

Цель этого поста -- показать, что работа над программой продолжается. Всяких разных вопросов возникает много и за что хвататься в первую очередь -- не всегда понятно. Выкладываю файлик с генерацией индексов. Наверняка, к нему потребуются дополнительные комментарии, потому что это промежуточный (то есть не окончательный) вариант.

Генерация индексов.

В приведённом ранее примере работы программы возможность обработки ограничивалась максимальным количеством вводимых имён классов (терминов) равным четырём, что существенно снижало её прикладную ценность.
Теперь есть возможность обрабатывать любое произвольное количество терминов с глубиной детализации равной трём. Под детализацией подразумевается, что при обработке учитываются классы вида:
- (термин_а);
- (термин_а)+(термин_в);
- (термин_а)+(термин_в)+(термин_с),
а с учётом возможности замены класса Универсум на какой-либо родительский класс будут учитываться 4-составные классы:
- (род.класс)+(термина_а)+(термин_в)+(термин_с).

5-составные и выше классы пока (но это только вопрос времени) не обрабатываются. Для исчерпывающего исследования в идеале необходимо для набора из произвольного количества Икс терминов учитывать все классы, вплоть до Икс-составных. Задача довольно сложная и у меня пока решения нет, но в этом направлении ведётся работа. К сожалению, не так быстро, как хотелось бы...

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

К недостаткам подобных баз данных следует отнести громоздкость и высокие требования к аппаратным ресурсам. На моём, не самом убитом компьютере, индексы для 30 терминов расчитывались почти три минуты (в режиме отладки). Думаю, что для, например, 300 терминов расчет индексов  займёт многие часы. Выход из этой трудной ситуации может быть в том, чтобы предварительно потратить время и сохранить индексы для большого количества терминов в виде файла, данные из которого программа будет считывать. Опять же, над построением таких баз данных ещё надо работать. Возможно, есть смысл в том, чтобы скомбинировать такой тип баз данных с табличными.

скачать генерация индексов

0


Вы здесь » PureBasic - форум » OpenSource » Программная реализация "Символической логики" Льюиса Кэрролла.