benjaminhr / eye-oh

A set of tools for automata learning with Tomte

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

eye-oh

A set of tools for converting π-calculus processes into Register Automata in XML. Each component can be run in isolation or the whole pipeline can be run at once. Additionally, there exists a tool for converting Register Automata from Tomte's XML format to DEQ's XML format. Pifra is used to convert π-calculus processes to a labelled transition representing FRAs.

Below we can see a high level overview of all the components and their relevant data formats.

diagram

Notes about π-calculus definition files

Notes about input model

  • initial state must have initial="true"
  • states with no outgoing transitions will be considered final
  • relies on input transitions starting with I, output with O (as does Tomte)
  • make sure not to have states prefixed vk_N and kk_ or named sink and sink_two in your input model already

Notes about output model

  • the output symbols ODummy, OOK, and OFinal will be created
  • two sink states will be added, which will consume the added input enabling transitions
  • to make alternating input/output transitions, the model will add OOK transitions inbetween

Usage

  • npm run package && npm run link to get binary installed in /usr/local/bin
  • eye-oh --help to list all available commands
  • deq-helper.sh is used to in the output directory with a learnedConcreteModel.xml and a test_processes/temp.pi to produce deq models (handles all pruning, converting, etc).

About

A set of tools for automata learning with Tomte


Languages

Language:JavaScript 98.5%Language:Shell 1.5%