R: Power of a Set

setpower {set6} | R Documentation

## Power of a Set

### Description

A convenience wrapper for the n-ary cartesian product of a `Set` by itself, possibly multiple times.

### Usage

    setpower(x, power, simplify = FALSE, nest = FALSE)

    ## S3 method for class 'Set'
    x ^ power

### Arguments

`x` | Set
`power` | power to raise set to, if `"n"` then a variable dimension set is created, see examples.'
`simplify` | logical, if `TRUE` returns the result in its simplest (unwrapped) form, usually a `Set`, otherwise an `ExponentSet`.
`nest` | logical, if `FALSE` (default) returns the n-ary cartesian product, otherwise returns the cartesian product applied n times. Sets. See details and examples.

### Details

See the details of setproduct for a longer discussion on the use of the `nest` argument, in particular with regards to n-ary cartesian products vs. 'standard' cartesian products.

### Value

An R6 object of class `Set` or `ExponentSet` inheriting from `ProductSet`.

### See Also

Other operators: `powerset()`, `setcomplement()`, `setintersect()`, `setproduct()`, `setsymdiff()`, `setunion()`

### Examples

    # Power of a Set
    setpower(Set$new(1, 2), 3, simplify = FALSE)
    setpower(Set$new(1, 2), 3, simplify = TRUE)
    Set$new(1, 2)^3

    # Power of an interval
    Interval$new(2, 5)^5
    Reals$new()^3

    # Use tuples for contains
    (PosNaturals$new()^3)$contains(Tuple$new(1, 2, 3))

    # Power of ConditionalSet is meaningless
    ConditionalSet$new(function(x) TRUE)^2

    # Power of FuzzySet
    FuzzySet$new(1, 0.1, 2, 0.5)^2

    # Variable length
    x <- Interval$new(0, 1)^"n"
    x$contains(Tuple$new(0))
    x$contains(Tuple$new(0, 1))
    x$contains(Tuple$new(0, 1, 0, 0, 1, 1, 0))
    x$contains(list(Tuple$new(0, 2), Tuple$new(1, 1)))

[Package set6 version 0.2.1 Index]