complexity: Number of combinations at a given complexity layer

Description Usage Arguments Details Value Author(s) References Examples

View source: R/complexity.R

Description

This function calculates the number of all possible combinations of conditions (including all levels for each condition), at a given complexity layer.

Usage

1
complexity(n, layers, noflevels)

Arguments

n

Numeric scalar, the number of input conditions.

layers

Numeric vector, the complexity layer(s) with values from 1 to n.

noflevels

Numeric vector containing the number of levels for each of the n conditions.

Details

These are the number of combinations which the CCubes algorithm (Dusa, 2018) checks to determine the prime implicants from a minimization process.

In the bottom-up approach, CCubes first checks for single conditions (combinations of both presence and absence, or more levels if multi-value), then all possible combinations of levels for two conditions etc.

The precise equation that partitions the search space into complexity layers is:

∑_{c = 1}^{k} {k\choose c} ∏_{s = 1}^{c} l_s

where l stands for the number of levels for each combination of c conditions out of k.

Value

A numeric vector.

Author(s)

Adrian Dusa

References

Dusa, A. (2018) “Consistency Cubes: A Fast, Efficient Method for Boolean Minimization”, R Journal, DOI: 10.32614/RJ-2018-080

Examples

1
2
3
complexity(3) # all layers from 1 to 3

complexity(5, layers = 2)

QCA documentation built on Nov. 29, 2020, 3:01 p.m.

Related to complexity in QCA...