input: Write a function to perform linear regression on a given dataset and predict the output for a specific input value. The function should take two lists of numbers as input, where the first list represents the independent variable (X) and the second list represents the dependent variable (Y). The function should return the predicted value for a given input. If the input for prediction is not provided, the function should return the error message "Prediction input is missing".
  assert linear_regression([1,2,3,4,5], [3,5,7,9,13], 7)==15.0
  assert linear_regression([1,2,3,4,5], [3,5,7,9,13])=="Prediction input is missing"
  assert linear_regression([], [], 7)=="Prediction input is missing"
output: def linear_regression(X, Y, input_value=None):
      if not X or not Y:
          return "Prediction input is missing"
      if input_value is None:
          return "Prediction input is missing"
      
      n = len(X)
      sum_x = sum(X)
      sum_y = sum(Y)
      sum_xy = sum(x * y for x, y in zip(X, Y))
      sum_x_squared = sum(x ** 2 for x in X)
      
      slope = (n * sum_xy - sum_x * sum_y) / (n * sum_x_squared - sum_x ** 2)
      intercept = (sum_y - slope * sum_x) / n
      
      return slope * input_value + intercept