// test case, check if expressions in guards are evaluated exactly in exact / parametric mode dtmc const double x; // dummy for parametric module M1 s: [0..3] init 0; // if the if part in the following guard expression is evaluated using // default floating point arithmetic then, ultimately, from state s=0 there are // two transitions, with prob 1/2 to either s=1 or s=2 [] s=(1/3 = 0.333333333333333333333333 ? 0 : 3) -> 1:(s'=1); [] s=0 -> 1:(s'=2); [] s>=1 -> true; endmodule