I think it depends on whether you have a mathematician reading the docs. I'm not really a mathematician, but when I read PartialOrd
, I automatically assume "oh, that's a partial order" (as I have worked with partial orders in the past). I would think so even if the docs didn't use the term, but just because the trait is named "PartialOrd". It also helps me to understand that I can use PartialOrd
to implement a partial order, but it will confuse me if I'm suddenly surprised by >=
and <=
not acting accordingly. (And I was very confused from the discussion of this topic .)
I would say the mathematical terms should be mentioned in the docs, but only when and if they are correct. And sometimes it's difficult to judge about it because in the end, ==
is neither equality nor equivalence, but simply an operator in a programming language (Rust).
I would say it's okay to call PartialOrd
a partial order, but the docs deserve a warning that only <
and >
act accordingly (and <=
and >=
do not resemble the corresponding non-strict partial order, unless Eq
is implemented as well).
Not sure what to do with Ord
though. Currently the docs say it's a "total order".