- Build the formula generator
mccusing thecreate-phar.shscript - Put all the directories (or
.tgzarchives) containing the models in a foldermodels - Modify the
generate_formulas.shscript, setting the value of theROOTvariable as the path to yourmodelsfolder - Use
generate_formulas.sh, which will generate the formulas - The file
output-1000states.txtcontains information on what happened during the generation, check it
- Php for the
mcctool - Python with the argparse and networkx packages for the
smctool used for filtering out formulas
First, execute the
model:fixcommand to normalize the internal references (ids) of the PNML files contining the P/T model of every colored model. The formula generation process needs to establish the correspondance between colored transitions and the corresponding ones in the unfolded P/T model. Hence the need of this step. Check if everything is ok using themodel:check-unfoldingcommand.Then, the
formula::generaterandomly generate the formula for any colored model and for any P/T model which has not been generated by un unfolding of an associated colored model.Finally, the
formula::unfoldsearches any P/T model that has been generated by an unfolding process out of a colored model. For each one of them,unfoldsthe formulae generated (or hand written) for the colored model, producing a set of formulae for the P/T model. Such formulae are equivalent to the original ones, in the sense that the colored formula is satsifiable in the colored model iff the unfolded formula is satisfiable in the unfolded P/T modelThis process will only update the is-firable() propositions, substituting the colored transition for the equivalent unfolded ones, and analogously for the token-count() and place-bound() operators.
- formal semantics of the property language, in particular with regard to token-count() and color nets, and strict/unstrict bounds for place-bound()