Add support for __floordiv__ and __rdiv__ for integral tensors #7245
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit adds support for
__floordiv__
to all tensors. I checked that it behaves similarly to what NumPy does, i.e. always returns a result of the same type. On the other hand, NumPy seems to follow the Python rules for rounding, while I used the C rules, to make it conform with how our integral division behaves in general.This also adds support for
__rdiv__
with integral tensors. Previously it raised an error saying thatreciprocal
isn't implemented for them. Ideally we would just have a kernel for this, but I didn't want to make this patch too large, as it's mostly meant to unblock my other work.