public function lessEqual($b)
    {
        switch (true) {
            case $b instanceof Matrix:
                $c = $this->lessEqualMatrix($b);
                break;

            case $b instanceof ColumnVector:
                $c = $this->lessEqualColumnVector($b);
                break;
            
            case $b instanceof Vector:
                $c = $this->lessEqualVector($b);
                break;

            case is_int($b) or is_float($b):
                $c = $this->lessEqualScalar($b);
                break;

            default:
                throw new InvalidArgumentException('Cannot compare matrix'
                    . ' to a ' . gettype($b) . '.');
        }

        return $c;
    }