Boolean Computation

Building on its core symbolic architecture, the Wolfram Language gives immediate access to the latest in industrial-strength Boolean computation. With highly general symbolic representations of Boolean functions, with full support for "don't-care" arguments and values, the Wolfram Language provides state-of-the-art Boolean function transformation, minimization, elimination, satisfiability, and analysis, making possible verification, testing, and other applications involving hundreds to hundreds of thousands of variables.

Basic Boolean Operators

And(&&,)  ▪  Or(||,)  ▪  Not(!,¬)  ▪  Nand()  ▪  Nor()  ▪  Xor() Xnor()  ▪  Implies()  ▪  Equivalent()  ▪  Majority

True, False symbolic truth values

Boole convert symbolic truth values to 0 and 1

Special Boolean Functions

BooleanCountingFunction out of variables true

BooleanConsecutiveFunction consecutive out of variables true

General Boolean Functions

BooleanFunction general Boolean function (from IDs, mappings with "don't cares", ...)

BooleanMinterms, BooleanMaxterms combinations of minterms, maxterms

Conjunction, Disjunction AND, OR with respect to a list of variables (cf. , )

Predicates on Lists

AllTrue  ▪  AnyTrue  ▪  NoneTrue

Boolean Structure

BooleanTable create a truth vector or general truth table

BooleanVariables find the variables in a Boolean expression

UnateQ test whether a Boolean expression is unate (monotone)


RulePlot visualize a Boolean function

Conversion & Minimization

BooleanConvert convert to a specified format (CNF, DNF, ESOP, NOR, BFF, ...)

BooleanMinimize find a minimal Boolean form

Boolean Function Testing

SatisfiableQ test whether any input to a function can give True

SatisfiabilityCount count how many possible inputs give True

SatisfiabilityInstances find instances of inputs that give True

TautologyQ test whether all possible inputs give True

Predicate Calculus

ForAll (), Exists () quantify over Boolean variables

Resolve eliminate quantified variables from a Boolean expression

LogicalExpand expand expressions involving Boolean operators and equations

Iterated Boolean Systems »

CellularAutomaton  ▪  TuringMachine  ▪  SubstitutionSystem  ▪  ShiftRegisterSequence

Bit Vector Operations »

BitAnd  ▪  BitOr  ▪  BitXor  ▪  BitLength  ▪  BitShiftLeft  ▪  BitSet  ▪  ...

Numerical Boolean Computation

Nearest, FindClusters operate on Boolean vectors

HammingDistance  ▪  MatchingDissimilarity  ▪  ...

Minimize, Maximize Boolean optimization