A binary relation \(R\) is total (or strong complete), iff for all \(x\), \(y\) we have \(xRy\) or \(yRx\).
rel_is_total(R)rel_closure_total_fair(R)
an object coercible to a 0-1 (logical) square matrix, representing a binary relation on a finite set.
rel_is_total returns a single logical value.
rel_closure_reflexive returns a logical square matrix.
dimnames of R are preserved.
Note that each total relation is also reflexive,
see rel_is_reflexive.
rel_is_total determines if a given binary relation
R is total.
The algorithm has \(O(n^2)\) time complexity,
where \(n\) is the number of rows in R.
If R[i,j] and R[j,i] is NA
for some \((i,j)\), then the functions outputs NA.
The problem of finding a total closure or reduction is not well-defined in general.
When dealing with preorders, however, the following
closure may be useful, see (Gagolewski, 2013).
Fair totalization of \(R\), performed by
rel_closure_total_fair, is the minimal superset \(R'\) of \(R\)
such that if not \(xRy\) and not \(yRx\)
then \(xR'y\) and \(yR'x\).
Even if R is transitive, the resulting relation
may not necessarily fulfill this property.
If you want a total preorder,
call rel_closure_transitive afterwards.
Missing values in R are not allowed and result in an error.
Gagolewski M., Scientific Impact Assessment Cannot be Fair, Journal of Informetrics 7(4), 2013, pp. 792-802.
Gagolewski M., Data Fusion: Theory, Methods, and Applications, Institute of Computer Science, Polish Academy of Sciences, 2015, 290 pp. isbn:978-83-63159-20-7
Other binary_relations: check_comonotonicity,
pord_nd, pord_spread,
pord_weakdom, rel_graph,
rel_is_antisymmetric,
rel_is_asymmetric,
rel_is_cyclic,
rel_is_irreflexive,
rel_is_reflexive,
rel_is_symmetric,
rel_is_transitive,
rel_reduction_hasse