function object mismatch in TFOpLambda
@elad-c,
Looks like this is an issue with the keras and also I can see that there is another issue raised for the similar error in the keras repo. Could you please feel free to move this issue to closed status and let me know if anything is missed here. Thank you! Ok, thanks. Are you satisfied with the resolution of your issue?
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=Yes&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/65813">Yes</a>
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=No&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/65813">No</a>

### Issue type

Bug

### Have you reproduced the bug with TensorFlow Nightly?

No

### Source

binary

### TensorFlow version

tf 2.15

### Custom code

Yes

### OS platform and distribution

Linux Ubuntu 20.04

### Mobile device

_No response_

### Python version

_No response_

### Bazel version

_No response_

### GCC/compiler version

_No response_

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current behavior?

The function object stored in the `function` attribute of a `TFOpLambda` in a functional model doesn't match the original tensorflow function I used to build the model. This happens for `tf.add`, `tf.multiply` & `tf.matmul`. Doesn't happen for `tf.subtract` and `tf.divide`.

This behaviour started in version 2.15.

The output of TF 2.14 is:
1) layer match: True
2) add match: True
3) subtract match: True


### Standalone code to reproduce the issue

```shell
import tensorflow as tf
from keras.src.layers.core import TFOpLambda

_in = tf.keras.layers.Input((8,))
out = tf.add(_in, 4)
out = tf.subtract(out, 4)
model = tf.keras.Model(inputs=_in, outputs=out)

print(f'1) layer match: {isinstance(model.layers[1], TFOpLambda)}')
print(f'2) add match: {model.layers[1].function is tf.add}')
print(f'3) subtract match: {model.layers[2].function is tf.subtract}')
```


### Relevant log output

```shell
1) layer match: True
2) add match: False
3) subtract match: True
```
