The Semantics and Proof Theory of the Logic of Bunched Implications by David J. Pym