std::experimental::ranges:: StrictWeakOrder
From es.cppreference.net
<
cpp
|
experimental
|
ranges
|
Definido en el encabezado
<experimental/ranges/concepts>
|
||
|
template
<
class
R,
class
T,
class
U
>
concept bool StrictWeakOrder = Relation < R, T, U > ; |
(1) | (ranges TS) |
El concepto
StrictWeakOrder<R, T, U>
especifica que la
Relation
R
impone un ordenamiento estricto débil sobre sus argumentos. Una relación
r
es un ordenamiento estricto débil si
-
es irreflexiva: para todo
x,r(x, x)es falso; -
es transitiva: para todo
a,byc, sir(a, b)yr(b, c)son ambos verdaderos entoncesr(a, c)es verdadero; -
sea
e(a, b)igual a!r(a, b) && !r(b, a), entoncesees transitiva:e(a, b) && e(b, c)implicae(a, c).
Bajo estas condiciones, se puede demostrar que
e
es una relación de equivalencia, y
r
induce un orden total estricto en las clases de equivalencia determinadas por
e
.
Notas
La distinción entre
Relation
y
StrictWeakOrder
es puramente semántica.