Implement a 'valid' 1‑D convolution function: given an input array of numbers, a kernel array of numbers, and a scalar bias, compute outputs only where the kernel fully overlaps the input, adding the bias to each output. Define the function signature, handle cases where the kernel is empty or longer than the input, clarify assumptions (e.g., stride = 1), and analyze time and space complexity.