We use Cosmo, a modern concurrent separation logic, to formally specify and verify
an implementation of a multiple-writer multiple-reader concurrent queue in the
an implementation of a multiple-producer multiple-consumer concurrent queue in the
setting of the Multicore OCaml weak memory model. We view this result as a demonstration and experimental verification of the manner in
which Cosmo allows modular and formal reasoning about advanced concurrent data structures. In particular, we show how the joint use of
logically atomic triples and of Cosmo's views makes it possible to describe precisely in the specification the interaction between the queue library and