input: Write a function to perform linear regression for predicting the numbers in a given dataset. The function should accept two lists X and Y, which represent the independent and dependent variables respectively. It should train a Linear Regression model using these datasets and predict the value of Y for a given value of X. If the input X or Y is empty, the function should handle it appropriately and return a message indicating that the input is invalid.
  
  assert predict_linear_regression([1,2,3,4,5], [3,5,7,9,13], 7) == 17.0
  assert predict_linear_regression([1,2,3,4,5], [3,5,7,9,13], 1) == 3.0
  assert predict_linear_regression([], [], 1) == "Invalid input: Empty dataset"
  assert predict_linear_regression([1,2,3,4,5], [3,5,7,9], 7) == "Invalid input: X and Y must have the same length"
output: if len(X) == 0 or len(Y) == 0:
      return "Invalid input: Empty dataset"
  if len(X) != len(Y):
      return "Invalid input: X and Y must have the same length"
  
  from sklearn.linear_model import LinearRegression
  
  model = LinearRegression()
  model.fit(np.array(X).reshape(-1, 1), Y)
  predicted_value = model.predict([[x]])[0]
  return predicted_value