View source: R/operation_setsymdiff.R
setsymdiff | R Documentation |
Returns the symmetric difference of two objects inheriting from class Set
.
setsymdiff(x, y, simplify = TRUE)
x %-% y
x, y |
Set |
simplify |
logical, if |
The symmetric difference, aka disjunctive union, of two sets, X, Y
, is defined as the set
of elements that exist in set X
or in Y
but not both,
\{z : (z \epsilon X \cup z \epsilon Y) \\ \cap \\ \neg(z \epsilon X \cap z \epsilon Y)\}
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.
An object inheriting from Set
containing the symmetric difference of elements in both x
and y
.
Other operators:
powerset()
,
setcomplement()
,
setintersect()
,
setpower()
,
setproduct()
,
setunion()
# 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)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.