Scroll to navigation

std::equivalence_relation(3) C++ Standard Libary std::equivalence_relation(3)

NAME

std::equivalence_relation - std::equivalence_relation

Synopsis


Defined in header <concepts>
template< class R, class T, class U > (since C++20)
concept equivalence_relation = std::relation<R, T, U>;


The concept equivalence_relation<R, T, U> specifies that the relation R imposes an
equivalence relation on its arguments.


Semantic requirements


A relation r is an equivalence relation if


* it is reflexive: for all x, r(x, x) is true;
* it is symmetric: for all a and b, r(a, b) is true if and only if r(b, a) is
true;
* it is transitive: r(a, b) && r(b, c) implies r(a, c).

Notes


The distinction between relation and equivalence_relation is purely semantic.

2024.06.10 http://cppreference.com