BooleanConsecutiveFunction

BooleanConsecutiveFunction[k,n]

represents a Boolean function of n variables that gives True if k consecutive variables are True.

BooleanConsecutiveFunction[{k,True},n]

treats the variable list as cyclic.

BooleanConsecutiveFunction[{k1,k2,,kd},{n1,n2,,nd}]

represents a Boolean function of n1 n2 nd variables that gives True if all variables in a block of the variable array are True.

BooleanConsecutiveFunction[{{k1,k2,,kd},{c1,c2,,cd}},{n1,n2,,nd}]

treats the i^(th) level of the variable array as cyclic if ci is True.

BooleanConsecutiveFunction[spec,{a1,a2,}]

gives the Boolean expression in variables ai corresponding to the Boolean consecutive function specified by spec.

BooleanConsecutiveFunction[spec,{a1,a2,},form]

gives the Boolean expression in the form specified by form.

Details

Examples

open allclose all

Basic Examples  (3)

Create a consecutive-2-out-of-3 Boolean function:

Convert to explicit form:

Use BooleanConsecutiveFunction in ReliabilityDistribution:

Compute the survival function:

Use BooleanConsecutiveFunction in FailureDistribution:

Compute the survival function:

Scope  (10)

Linear Model  (4)

BooleanConsecutiveFunction stays unevaluated:

Use BooleanConvert to expand it:

Define a two-dimensional function, shaped as a grid:

Variables can also be given in a flat list:

A system works if at least three out of four consecutive components on a line work:

BooleanConsecutiveFunction can be used in a structure:

A system fails if at least three out of four consecutive components on a line fail:

BooleanConsecutiveFunction can be used in a structure:

Circular Model  (4)

BooleanConsecutiveFunction stays unevaluated:

Use BooleanConvert to expand it:

Define a two-dimensional function, in the shape of a torus:

Variables can also be given in a flat list:

A system fails if at least three out of four consecutive components in a circle fail:

BooleanConsecutiveFunction can be used in a structure:

A system works if at least three out of four consecutive components in a circle work:

BooleanConsecutiveFunction can be used in a structure:

Mixed Model  (2)

Wrapping can be different in different dimensions. Define a cylinder:

Use BooleanConvert to expand it:

Connected cylinders stacked inside each other:

Use BooleanConvert to expand it:

Applications  (2)

A chain of 10 radio towers fails if two neighboring towers fail:

Each tower has an exponential lifetime distribution with an expected lifetime of 10 years:

The survival function for communication from one end of the tower chain to the other:

The probability of functioning communication after five years without maintenance:

Cameras are arranged in an overlapping grid. All areas are covered until a 2×2 grid fails:

Each camera has an expected lifetime of six years:

The lifetime distribution of a complete camera system is modeled with FailureDistribution:

To cover the same area with minimal overlap, four cameras are needed:

The overlapping structure has a higher reliability, but uses more cameras:

Use the same amount of cameras in standby mode instead:

Depending on mission time, a standby setup has higher reliability than an overlapping grid:

Properties & Relations  (2)

Lower dimensions are special cases of higher dimensions:

A ReliabilityDistribution with a BooleanConsecutiveFunction is equal to the negated corresponding Boolean expression in a FailureDistribution:

Neat Examples  (1)

Simulate a linear consecutive-k-out-of-n system:

When requiring four out of 10 components to fail for the system to fail, with failure rate :

Introduced in 2012
 (9.0)