A tool for the computation of formula-based predictors for Reaction Systems
Implementation of the formula-based predictors calculator for Reaction Systems proposed in:
-
Investigating dynamic causalities in reaction systems
by R. Barbuti, R. Gori, F. Levi and P. Milazzo
Theoretical Computer Science, 623:114--145, 2016 -
Specialized predictor for reaction systems with context properties
by R. Barbuti, R. Gori, F. Levi and P. Milazzo
Fundamenta Informaticae, 147(2-3):173--191, 2016
The tool is freely available here:
Usage of the tool
The FBP Calculator application allows, given a reaction system, a conjunction of objects A and a natural number k, to calculate the (specialized) predictor of A after k steps.
How to specify the reaction system
The reaction sysem's rules can be added either one by one or all together by uploading a file where they are defined. In order to add the rule one by one, use the following initial mask:
After entering the rule this will appear in a window where it will be possible to edit or delete it.
You may also import a set of rules that have been already defined or previously saved from a.txt file selecting open in the main menu. Each reaction have to be written in the following synctactic form
A B -> C D | E F
where A and B aire the reactants, E and F are the inhibitors and C and D are the products. Different reactions have to be written in different lines.
Once you have a definitive a reaction system you can save it on a file of .txt using the option save on the menu for later reuse.
Inserting the conjuction of objects and the number of steps
In the Calculator section you have to insert the set of objects for which you want to compute the predictors. Objects have to be separated by a space. In this section you must also indicate the number of steps required for the predictor computation.
Specialyzing the predictor
Once indicated the number of steps, a table of fields will open in the "Context properties" section. Then, for each step it is possible to list the partial knowledge you may have on the class of context sequences you are interested in.
In the example above we are saying that the object A will be always present at the first step while B will never be present at the second step.
Moreover, it is possible to specify using the % character that a certain object will be always present (or always absent) from a certain step on.
In the example above we are specifying that the object A will be always supplied by the environment at the first step while from the second step on the object B will never be supplied by the environment.
Pressing the Calculate bottom, the computation starts. A new window will open in a pop up, recalling the target conjunction and the number of steps of the computation. A drop-down menu will allow us to choose how to visualize the solution. Three options are available:
- Single logical formula in disjunctive normal form. In this case the elements of the formula are labelled objects of the form Ai, where Ai means that is the object A has to be present in the i-th set of the contexrt sequence.
- As a list, each row of the list indicates a list of species (and relative steps) that must be present to arrive at the number of steps prefixed to the target configuration, each row corresponds to an end clause of the solution expressed as a logical formula, each row goes then considered in or with the others. es.
- As a table that indicates step by step what species must be present and which are not present to reach the solution sought
It is possible to save the solution in .txt
format in the case of the logical formula or the list, in .xlsx
format in the case of the table.