I am the maintainer of approx. We are currently having a conversation about which default epsilon value to use when performing approximate comparisons. Similarly to f64 and f32, the core::time::Duration type has MAX and Zero consts but no EPSILON const. Most modern HPET devices have a ~100ns uncertainty. And then there are all kinds of operating system interrupts, etc. that can occur.
My question is this: What would be a sensible default that you as an end-user of the approx crate would expect? Let me know.
What is the purpose if the comparisons? Is it for debugging, to compare actual and expected result? In that case, what are the allowed operations that produce the actual result? Depending on how the actual result is achieved, the deviation from expectation can be anything.