Request to add a native atan2(y, x) operation to OpenVINO's opset17. Currently, it's decomposed into ~40 nodes by frontends, and a native implementation would improve efficiency and consistency across frameworks.
### Request Description Hi team , I'm Aditya Goyal. I've previously contributed to the Keras OpenVINO backend (#34017) and would like tocontribute directly to OpenVINO's opset. I've drafted a proposal for the atan2 op as a starting point. **atan2(y, x)** is currently decomposed in the PyTorch, TensorFlow, and PaddlePaddle frontends via a shared translator in src/frontends/common_translators/src/op/atan2.cpp. The decomposition expands to ~40 nodes to correctly handle all IEEE 754 edge cases (quadrant selection, ±0, ±inf). A native op would: - Reduce the graph to 1 node - Delegate IEEE 754 correctness to std::atan2, which handles all edge cases natively - Enable plugin-level optimization (e.g. JIT emitters for x64/aarch64) torch.atan2 and tf.math.atan2 both map to this. It is also present in ONNX's extended opset (com.microsoft::Atan2). Note: atan2 was previously removed in PR #1184 (nGraph era). The codebase has been significantly restructured since then, and a native op fits in