the thought was that a negative pid would always be invalid  and it is unfortunately an implementation detail made it so kill would broadcast a signal to pgrp instead of pid every once in a while  but rarely  there could indeed be a valid process with that pgrp 