if you use DTMCs, then the distribution is uniform, as you correctly say. But note that PRISM outputs a warning, because overlapping commands in DTMC generally signify an error in the model design. Also in MDPs the semantics of overlapping commands is different (there each command represents a nondeterministic choice).
Probably the simplest "neat" workaround for your problem is to define multiple initial states, one for each number "test" (see http://www.prismmodelchecker.org/manual/ThePRISMLanguage/MultipleInitialStates), and then use the "avg" filter described at http://www.prismmodelchecker.org/manual/PropertySpecification/Filters
Kind regards,
Vojta
> --
> You received this message because you are subscribed to the Google Groups "PRISM model checker" group.
> To post to this group, send email to prismmod...@googlegroups.com.
> To unsubscribe from this group, send email to prismmodelchec...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/prismmodelchecker?hl=en.
>
and for this reason, the preferred PRISM code would be:
test : [1..100] init 1;
[] true -> 1/100:(test'=1)
+ 1/100:(test'=2)
+ 1/100:(test'=3)
...
+ 1/100:(test'=100);
Admittedly, this is pretty unpleasant - adding a nicer language
construct for this to PRISM is long overdue. In the meantime, a second
possible workaround is to use the (beta release) of PRISM's preprocessor
tool, which can help you script models like the above:
http://www.prismmodelchecker.org/prismpp/
Regards,
Dave.
I am afraid that from the information you have provided it's hard to devise a solution that will help you. It actually still seems to me that the PRISM preprocessor might be what you are looking for. If not, could you please post some concrete examples together with a description of the analysis you want to perform on them?
Best,
Vojta