Программа построения таблиц истинности pyttgen
Программу можно скачать отсюда: http://code.google.com/p/pyttgen/downloads/list
Установка
Запуск исполняемого файла
После того как скачали архив с исполняемым файлом pyttgen, разархивируйти и запустите pyttgen.exe. Если возникла ошибка, установите Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)
Продвинутая установка
Для запуска программы вам надо скачать Python 2.6.x весрии с сайт http://www.python.org/download/releases/
После установки заходим в Мой компьютер ‣ Свойства ‣ Дополнительно ‣ Переменные среды (My Computer ‣ Properties ‣ Advanced ‣ Environment Variables)
И добавляем в переменную path путь до python.В моём случае я добавил такую строчку в конец содержимого переменной PATH ";C:\Python26;C:\Python26\Scripts"
Теперь надо установить setuptools. Для этого заходим на страничку http://pypi.python.org/pypi/setuptools и скачиваем подходящий релиз setuptools (я скачал и установил setuptools-0.6c11.win32-py2.6.exe).
Ну и, наконец, заходим в терминал (пуск -> выполнить, ввести cmd) и вводим easy_install ply
Если вы ещё не скачали саму программу, то идём на сайт http://code.google.com/p/pyttgen/downloads/list и скачиваем последнюю версию.
Запуск
Далее распаковываем и запускаем pyttgen.py (в windows можно просто пару раз кликнуть по файлу, а в linux надо зайти в терминал, перейти в папку и запустить python pyttgen.py)
Использование
В программе можно вводить следующие символы:
Латинские буквы в нижнем регистре означают высказывания
Латинские буквы в верхнем регистре означают операции
Допустимые операции:
& - конъюнкция ( * , AND )
| - дизъюнкция ( +, OR )
-> - импликация ( IMPL )
<-> - эквиваленция ( EQUALS )
~ - отрицание ( NOT )
Приоритет можно установить с помощью скобок ( )
Пример
Давайте введём высказывание означающие силлогизм:
> ((p -> q)&(q -> r)) -> (p -> r)
На выходе получим:
[0, 0, 1, 1, 0, 0, 1, 1] q
[0, 0, 0, 0, 1, 1, 1, 1] p
[0, 1, 0, 1, 0, 1, 0, 1] r
[1, 1, 1, 1, 0, 0, 1, 1] (p -> q)
[1, 1, 0, 1, 1, 1, 0, 1] (q -> r)
[1, 1, 0, 1, 0, 0, 0, 1] ((p -> q) AND (q -> r))
[1, 1, 1, 1, 0, 1, 0, 1] (p -> r)
[1, 1, 1, 1, 1, 1, 1, 1] ((p -> q) AND (q -> r)) -> (p -> r)
Для выхода из программы введите 'quit' или 'exit'