Last chance! 50% off unlimited learning
Sale ends in
Returns the symmetric difference of two objects inheriting from class Set
.
setsymdiff(x, y, simplify = TRUE)x %-% y
Set
logical, if TRUE
(default) returns the result in its simplest form, usually a Set
or
UnionSet, otherwise a ComplementSet
.
An object inheriting from Set
containing the symmetric difference of elements in both x
and y
.
The symmetric difference, aka disjunctive union, of two sets,
The symmetric difference can also be expressed as the union of two sets minus the intersection.
Therefore setsymdiff
is written as a thin wrapper over these operations, so for two sets, A,B
:
A %-% B = (A | B) - (A & B)
.
The symmetric difference of fuzzy and crisp sets first coerces fuzzy sets to crisp sets by finding their support.
Other operators:
powerset()
,
setcomplement()
,
setintersect()
,
setpower()
,
setproduct()
,
setunion()
# NOT RUN {
# symmetrical difference compared to union and intersection
Set$new(1, 2, 3) %-% Set$new(3, 4)
(Set$new(1, 2, 3) | Set$new(3, 4)) - (Set$new(1, 2, 3) & Set$new(3, 4))
# ConditionalSets demonstrate the internal logic
ConditionalSet$new(function(x) x > 0) %-%
ConditionalSet$new(function(y) y == 0)
# }
Run the code above in your browser using DataLab