complexity: Number of combinations at a given complexity layer

View source: R/complexity.R

complexityR Documentation

Number of combinations at a given complexity layer

Description

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

Usage

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.

...

Other arguments, mainly for internal use.

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:

\sum_{c = 1}^{k} {k\choose c} \prod_{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, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.32614/RJ-2018-080")}

Examples

complexity(3) # all layers from 1 to 3

complexity(5, layers = 2)

QCA documentation built on Sept. 18, 2023, 9:08 a.m.

Related to complexity in QCA...