pub trait ActionMonoid { type M: Monoid; type A: Action<Target = <Self::M as Monoid>::Target>; }
自己準同型性を要求 つまり区間和への適用と、各要素への適用の区間和が一致することを要求
作用の対象のモノイド
作用素のモノイド