Table 3: Set of rules.

𝑓 𝑖 : a fragment with I D = 𝑖 of types opt, break, loop and ref
𝑓 𝑆 𝑖 , 𝑓 𝐸 𝑖 : two fragment nodes representing the start and end of the fragment 𝑓 𝑖
π‘š 𝑗 , π‘š π‘˜ : two message nodes representing two messages
𝑓 𝑆 𝑖 β†’ π‘š 𝑗 : an edge from the fragment node representing start of fragment 𝑓 𝑖 to message node π‘š 𝑗
𝑓 𝑆 𝑖 β†’ c π‘š 𝑗 : an edge from 𝑓 𝑆 𝑖 to π‘š 𝑗 labeled with the condition 𝑐
𝑓 𝑆 𝑖 ⇝ π‘š 𝑗 : add an edge from 𝑓 𝑆 𝑖 to π‘š 𝑗
𝑓 𝑆 𝑖 ⇝ ! c π‘š 𝑗 : add an edge from 𝑓 𝑆 𝑖 to π‘š 𝑗 labeled with the condition ! 𝑐
𝑓 𝐸 𝑖 ↛ π‘š 𝑗 : delete an edge from 𝑓 𝐸 𝑖 to π‘š 𝑗
R1: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑝 𝐸 𝑖 β†’ π‘š π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c π‘š π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ π‘š π‘˜ ).
R2: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 β†’ π‘š π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c π‘š π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ π‘š π‘˜ ) .
R3: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 β†’ 𝑓 𝑆 π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c 𝑓 𝑆 π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ 𝑓 𝑆 π‘˜ ) .
R4: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 β†’ 𝑓 𝐸 π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c 𝑓 𝐸 π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ 𝑓 𝐸 π‘˜ ) .
R5: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 β†’ 𝑓 𝑆 π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c 𝑓 𝑆 π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ 𝑓 𝑆 π‘˜ ) .
R6: ( 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 β†’ 𝑓 𝐸 π‘˜ ) β‡’ ( 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ⇝ 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 & 𝑙 π‘œ π‘œ 𝑝 𝑆 𝑖 ⇝ ! c 𝑓 𝐸 π‘˜ & 𝑙 π‘œ π‘œ 𝑝 𝐸 𝑖 ↛ 𝑓 𝐸 π‘˜ ) .
R7: ( π‘œ 𝑝 𝑑 𝑆 𝑖 β†’ c π‘š 𝑗 ) β‡’ ( π‘œ 𝑝 𝑑 𝑆 𝑖 ⇝ ! c π‘œ 𝑝 𝑑 𝐸 𝑖 ) .
R8: ( π‘œ 𝑝 𝑑 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 ) β‡’ ( π‘œ 𝑝 𝑑 𝑆 𝑖 ⇝ ! c π‘œ 𝑝 𝑑 𝐸 𝑖 ) .
R9: ( π‘Ÿ 𝑒 𝑓 𝑆 𝑖 β†’ I D π‘Ÿ 𝑒 𝑓 𝐸 𝑖 & I D ( 𝑆 𝐼 𝐷 , 𝐸 𝐼 𝐷 ) ) β‡’ ( π‘Ÿ 𝑒 𝑓 𝑆 𝑖 ⇝ 𝑆 𝐼 𝐷 & 𝐸 𝐼 𝐷 π‘Ÿ 𝑒 𝑓 𝐸 𝑖 & π‘Ÿ 𝑒 𝑓 𝑆 𝑖 ↛ π‘Ÿ 𝑒 𝑓 𝐸 𝑖 ) .
R10: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ π‘š π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c π‘š π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ π‘š π‘˜ ) .
R11: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ π‘š π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c π‘š π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ π‘š π‘˜ ) .
R12: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ 𝑓 𝑆 π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c 𝑓 𝑆 π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ 𝑓 𝑆 π‘˜ ) .
R13: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c π‘š 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ 𝑓 𝐸 π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c 𝑓 𝐸 π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ 𝑓 𝐸 π‘˜ ) .
R14: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ 𝑓 𝑆 π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c 𝑓 𝑆 π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ 𝑓 𝑆 π‘˜ ) .
R15: ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 β†’ c 𝑓 𝑆 𝑗 & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 β†’ 𝑓 𝐸 π‘˜ ) β‡’ ( 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝑆 𝑖 ⇝ ! c 𝑓 𝐸 π‘˜ & 𝑏 π‘Ÿ 𝑒 π‘Ž π‘˜ 𝐸 𝑖 ↛ 𝑓 𝐸 π‘˜ ) .