MelnikovIgor1 / formal_languages

0 stars 0 forks source link

Запуск тестов: pytest -v test.py

В модуле machine реализован класс StateMachine. Класс стоит машину при помощи метода upload_automata(file_name). make_tex(file_name) создает tex файл с записанным в нем автоматом. prepare_files() собирает pdf для созданных tex фалов и открывает его.

В классе реализованы методы remove_epsilon() убирающий эпсилон переходы, make_unique_path() избавляющийся от неоднозначности переходов по ребрам, make_one_final() делая ровно одну принимающую вершину, invert_finite() инвертирующий множество принимающих вершин, make_final() делая из ДКА ПДКА, make_single_edges() избавляется от кратных ребер, remove_all() удаляющий все верщины кроме стартовой и возможно 1 финальной, make_0_1_edges() избавляется от многобуквенных переходов, get_invert_language() возвращающий язык-дополнение для данного НКА. simplify() - получает минимальный автомат.