The application starts by using command PYTHONPATH='.' python3 src/main.py
from nfa
directory.
-
Read all automata from file:
read path_to_file
-
Write all automata to file:
write path_to_file
-
Visualization of current automata:
visualization automata_name
-
Checking of the word:
check automata_name word_to_check
-
Automata transformation from NFA to DFA:
transform automata_name
-
Minimize automata (valid only for DFA):
minimize automata_name
-
Apply operation on automata and store in another automata:
new_automata_name = automata_name1 operation automata_name2
, whereoperation
isunion
,concat
,diff
,star
,intersect
-
Clear all automata from memory:
clear
-
Show names of stored automata:
display_names
-
Exiting from application:
exit
read ./src/examples/test1.json
display_names
visualize name
transform name
minimize name
a3 = name union name2
write a3 ./src/examples/out.json
exit
-
Vadim: reading/writing/visualization/data validation/linking code/CLI
-
Fedor: transformation from nfa to dfa/data validation
-
Vlad: checking of the word/diff/union/intersect
-
Elisey: minimization of dfa/Kleene star/concat
-
Continue calculation wihout closing visualization (possible solution requires multithreading)
-
Allow
a1 = transform a2
-
Make written files the same form as files for reading.
-
Allow long chains of operations
a = a1 union a2 concat (star a3)