- Remove accidental browser
- Fixes bug that set all comparisons to empty sets as
TRUE
when using$equals
- Patch for R devel
- Imported ooplah
- Containedness checks for 'n' dimensional sets no longer require same length vectors if power is "n"
- Fixed bug preventing
Logicals
from being deep cloned
- Bugfix in setcomplement (#65)
- Impossible intervals containing only one elements with type not equal to
[]
are now equal to the empty set - Default
ConditionalSet
condition
argument nowfunction(x) TRUE
- Print method for
ConditionalSet
now omits RHS if only"TRUE"
- UniversalSet renamed Universal, old class will be removed in v0.4.0.
- LogicalSet renamed Logicals, old class will be removed in v0.4.0.
Complex
now inherits fromSet
, incorrect methods forisSubset, equals
have been removed.- Add
Multiset
for sets with non-unique elements but no ordering - Small speed improvements in
Tuple
andFuzzyTuple
- For consistency most methods now return a
list
unless single elements requested - Printing of
ConditionalSet
is fixed Rationals
and child-classes now error on calls tocontains, isSubset, equals
as any prior results were likely wrong/misleading- Removed erroneous complex boundaries in
Interval
class
- Patch for R-devel
- Critical patch
- Bugfix in set operation cleaner
- Bugfix causing
Interval$contains
to returnTRUE
for tuples - Bugfix in union sets incorrectly unwrapping products
- Added variable length
ExponentSet
s
- Added
LogicalSet
, the set of${TRUE, FALSE}$ - Added
as.Set.numeric
andas.Tuple.numeric
- Speed performance improvements for
$contains
method forInterval
andSet
.Rcpp
now used forInterval
. - Now for any
Interval
if not bounded above andupper
is$Inf$ thenmax = .Machine$double.xmax
, analogously forlower
. - Default universe of
Interval
is nowExtendedReals
- Added default
as.Set
andas.Interval
S3 methods
- Added assertion for testing if a set is countably finite
- Slight speed improvements to operations - still require a lot of work
- Fixed bug in
UnionSet
cardinality calculation - Fixed bug in
UniversalSet
countability
- Updated documentation to be compatible with roxygen2
- Fixed bug in typed Complex sets
- Added universe assertion check to
Set
constructor - Bug fix in
setunion
causing some intervals not to be combined correctly -
Interval$isSubset
now compares sets usingmax
andmin
instead ofupper
andlower
- Calculation of
min
andmax
inInterval
now uses1e-15
instead of.Machine$double.xmin
-
$elements
now always returns alist
- Add
$add
public method to sets, which mutates sets by adding given elements, and coercing to the typed-set class if appropriate - Add
$remove
public method to sets, which mutates sets by removing given elements. - Add assertion for checking if elements contained in a set,
test/check/assertContains
. - Add assertion for checking if sets are subsets of another,
test/check/assertSubset
.
absComplement
method is now deprecated, instead usesetcomplement
and omit they
argument- Fixed error in
contains
default caused by%inset%
- Improved printing of
SpecialSet
s whenzero == TRUE
- Added
UniversalSet
for the set containing all elements - Changed default
universe
of sets toUniversalSet
- Coercions now error instead of producing a message when they fail
- On construction,
Set
s no longer guess the set class, instead an extraclass
argument is added to give a set thetyped
property - The internal
Set
structure is slightly changed so that set elements are now stored in lists by default, which is only changed if the set istyped
- Added
element
argument toSet
constructor, which takes alist
. This is more efficient if passing lists of lists or lists of multiple types, and in line with theFuzzySet
constructor - Improved printing of
ConditionalSet
s - Updated
powerset
to always return aSet
ofSet
s (even if input isTuple
) - Fixed bug in
Properties
causing an error if cardinality was too large - Updated documentation
- Reduced
Set
constructor bottleneck by adding 'typed' sets - Changed
use_unicode
default tol10n_info()$UTF-8
set6
upgrades thesets
package to R6. Many forms of mathematical sets are implemented, including (countably finite) sets, tuples, intervals (countably infinite or uncountable), and fuzzy variants. Wrappers extend functionality by allowing symbolic representations of complex operations on sets, including unions, (cartesian) products, exponentiation, and differences (asymmetric and symmetric).- See the website for more details and the project readme
- See getting started vignette for a short tutorial and introduction
set6
is currently 'maturing', so whilst no major updates are planned they may happen. Constant minor updates should be expected.