Boolean matrix decomposition