Corinne is a tool to manage Choreography Automata (CA).
- Python3
- Graphviz (0.10.1)
- graphviz-python3-package (0.13.2)
- antlr4-python3-runtime (4.7.2)
Open a terminal in the main folder of Corinne and type:
python3 main.py
- OPEN: takes in input DOT files (.gv) in CA syntax, but also it can get:
For more details about the CA syntax see DOT.g4 file.
- RENDER: render a given DOT (.gv) file in PNG or PDF format.
Once taken one or more files as input, Corinne can apply some functions on it:
- PRODUCT: a cartesian product of two CA ;
- SYNCHRONIZATION: given a CA, it can synchronize two participants of its ;
- PROJECTION: given a CA, you can select one participant from it and get the relative CFSM (Communicating-FSA) ;
- main.py : launch the program.
- guy.py : define the guy and its methods to create every view of the program.
- controller.py : define methods used by the guy to process files (open, render, ...).
- fsa.py : an abstract class to define a simple Finite State Machine and its methods.
- chor_auto.py : a class to define the Choreography Automata (CA), inherits from fsa class.
- cfsm.py : a class to define the Communicating FSA (CFSA), inherits from fsa class.
- dot_parser/* : contains the dot parser and every file it need to parse and convert.
- global_graph_parser/* : contains the Global Graph parser and every files it need to parse and convert.
- examples/* : some examples.
Main author: Simone Orlando - simoneorlando - [email protected]
Other author(s): Ivan Lanese - lanese - [email protected]
This project is licensed under the MIT License - see the LICENSE file for details