Somewhat verbose, but I think that's ok for destructive operations that are expected to be used an order of magnitude more seldom than for instance plain indexing (->).
They might be sufficient untils someone finds out operators for these operations.
Are shift operators used for these datatypes?
set<<elem; set>>elem;
A little C++-ish though, and lacks a syntax for key:value tupels...
Maybe set<<[elem] set>>[elem] map<<[key;elem] map>>[key]
...is that possible to parse?