I agree that Euclidean and Floor could be an interesting tradeoff. When possible, I want to be able to make most of the proofs internally. This is especially true with respect to div/mod simplifications. Given that the division/mod we will ever encounter will most likely have positive divisor, they are just fine and can be viewed as Euclidean if necessary.
I think the main reason to choose floordiv (along with trunc-div support) was to have fewer surprises. For the same reason, we default Div to serve the same behavior as C's division, so the developer won't get confused. Given that floordiv and euclidean div will give us a similar effect for the things we care about, being able to match python's semantics and easy to understand would be a plus here, and that is why I think FloorDiv/Mod should be preferred. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/dmlc/tvm/issues/3478#issuecomment-508561158