Why is numpy boolean dtype not a subtype of np.number?