Question regarding B method refinement

Skip to first unread message

Sep 26, 2017, 5:10:51 AM9/26/17
to ProB Users
In general, I have two machines, X and Y. Y is the improvement of X.
Y uses the same invariants, operations and variables as X, and with some additional operation and variables.
But, I have implemented Y as another machine (.mch) and not as a refinement(.ref) of X.
Is it still correct if I say that Y is the improvement of X although I not implement it as a refinement of X ?

Thank you.

Michael Leuschel

Sep 26, 2017, 6:53:15 AM9/26/17
to, ProB Users
I am not sure I understand the question.
If you want to check that Y is a refinement of X you should make it a refinement machine of X.
If you have separate machines X and Y, you could try and do a trace refinement check using ProB, but this is not “official” B refinement.

Best regards,

You received this message because you are subscribed to the Google Groups "ProB Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To post to this group, send email to
To view this discussion on the web visit
For more options, visit

Reply all
Reply to author
0 new messages