Development of many system features in a robust specification is a challenge in reactive system design. This paper presents a formal approach for specifying concurrent programs by refining undetermined events in Event-B. This approach investigates the concurrent aspect in specification and provides a general structure of models using Event-B specification. According to this structure, we illustrate the specification of three concurrent mechanisms: critical section access, reader-writer and producer-consumer. It is shown that the concurrent aspects in programming can be specified coherently using Event-B refinement.
['Thanh-Binh Trinh', 'Ninh-Thuan Truong', 'Viet Ha Nguyen']
Refining Undetermined Events for Specifying Concurrent Programs