Research Article

A Mechanically Proved and an Incremental Development of the Session Initiation Protocol INVITE Transaction

Box 5

VARIABLES
  s_st
  c_st
INVARIANTS
inv1: s_st STATES
inv2: c_st STATES
inv3: c_st = Calling ⇒ INVITE cl_sent
inv4: s_st = Proceeding ⇒ INVITE sr_got r1xx sr_sent
inv5: c_st = Proceeding ⇒ r1xx cl_got
inv6: s_st = Accepted ⇒ r2xx sr_sent
inv7: c_st = Accepted ⇒ r2xx cl_got
inv8: s_st = Completed ⇒ r3xx_r699 sr_sent
inv9: c_st = Completed ⇒ r3xx_r699 cl_got ACK cl_sent
inv10: s_st = Confirmed ⇒ ACK sr_got