Function obeys_partial_cmp_spec_properties
Source pub open spec fn obeys_partial_cmp_spec_properties<T: PartialOrd>() -> bool
Expand description
{
&&& forall |x: T, y: T| {
#[trigger] x.partial_cmp_spec(&y) == Some(Ordering::Equal) <==> x.eq_spec(&y)
}
&&& forall |x: T, y: T| {
#[trigger] x.partial_cmp_spec(&y) == Some(Ordering::Less)
<==> y.partial_cmp_spec(&x) == Some(Ordering::Greater)
}
&&& forall |x: T, y: T, z: T| {
x.partial_cmp_spec(&y) == Some(Ordering::Less)
&& #[trigger] y.partial_cmp_spec(&z) == Some(Ordering::Less)
==> #[trigger] x.partial_cmp_spec(&z) == Some(Ordering::Less)
}
&&& forall |x: T, y: T, z: T| {
x.partial_cmp_spec(&y) == Some(Ordering::Greater)
&& #[trigger] y.partial_cmp_spec(&z) == Some(Ordering::Greater)
==> #[trigger] x.partial_cmp_spec(&z) == Some(Ordering::Greater)
}
&&& obeys_eq_spec_properties::<T>()
}