The pirate-based logic of Rust shared references