# UnateQ

UnateQ[bexpr,{x1,x2,}]

tests whether the Boolean expression bexpr is positive unate in the variables x1, x2, .

UnateQ[bexpr,{¬x1,¬x2,}]

tests whether the Boolean expression bexpr is negative unate in the variables x1, x2, .

# Details

• A positive unate Boolean function is also known as a Boolean increasing function.
• A negative unate Boolean function is also known as a Boolean decreasing function.
• The Boolean expression bexpr is positive unate in the variable xi if Boole[bexpr/.xi->False]Boole[bexpr/.xi->True] for all values of other variables.
• The Boolean expression bexpr is negative unate in the variable xi if Boole[bexpr/.xi->False]Boole[bexpr/.xi->True] for all values of other variables.
• Any combination of variables and their negation can be used.
• UnateQ[bf,{ind1,ind2,}] tests whether the Boolean function bf is unate in variable k according to the indicator indk.
• The indicators indk can take the following values:
•  True,1 test for positive unate False,0 test for negative unate _ do not test for unateness

# Examples

open allclose all

## Basic Examples(2)

Test if a Boolean expression is positive unate:

 In[2]:=
 Out[2]=
 In[3]:=
 Out[3]=

Test if a Boolean expression is negative unate:

 In[1]:=
 Out[1]=
 In[2]:=
 Out[2]=