Logic_monad.BackStateSourceinterleave src dst m adapts the exceptional content of the monad according to the functions src and dst. To ensure a meaningful result, those functions must form a retraction, i.e. dst (src e1) = e1 for all e1. This is typically the case when the type 'e1 is unit.