mCRL2org/mCRL2

Pretty printing is confusing.

Closed this issue · 2 comments

Pretty printing of a term (1-p)q of type Real yields 1-pq.
This is undesired.

Concretely, the input in an mcrl2 file

 probability(fine |> l)=(1-p)*probabilty(l);

yielded the error

Unknown operation p.
Error occurred while typechecking 1 - p * probabilty(l)

This error occurred when modeling a loom.

This problem appears to be especially related to error messages. When linearizing:

act a:Real;
map p:Real;

init a((1-p)*q).delta;

we get the error message:

Could not find a matching action declaration for a(1 - p * q).
a: Real does not match.
Unknown operation q.

Clearly, this is improperly printed.

The commit reported above resolves this issue.