Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Find alternative Boolean expressions using a given set of operators
ResourceFunction["FindBooleanAlternative"][expr, ops] finds an alternative expression for a Boolean expression expr in terms of the operators in the list ops. | |
ResourceFunction["FindBooleanAlternative"][expr, ops, n] returns up to n alternative expressions. |
Find alternative Boolean expressions for Nand and Implies:
In[1]:= |
Out[1]= |
In[2]:= |
Out[2]= |
Find three Boolean alternative expressions for Implies in terms of Nand:
In[3]:= |
Out[3]= |
Find all Boolean alternative expressions:
In[4]:= |
Out[4]= |
Express Majority in terms of And and Or:
In[5]:= |
Out[5]= |
Transform a BooleanFunction:
In[6]:= |
Out[6]= |
The "MaxSize" option specifies the maximum size of expressions to search for (default is 8):
In[7]:= |
Out[7]= |
Specify a larger "MaxSize":
In[8]:= |
Out[8]= |
FindBooleanAlternative is able to find the same forms of expressions as BooleanConvert:
In[9]:= |
Out[9]= |
In[10]:= |
Out[10]= |
FindBooleanAlternative is able to find different alternatives, not necessary the canonical one:
In[11]:= |
Out[11]= |
In[12]:= |
Out[12]= |
For Boolean expressions not representable using a provided set of operators, FindBooleanAlternatives will try to find one until maximum expression size is reached, which may take a long time:
In[13]:= |
Out[13]= |
This work is licensed under a Creative Commons Attribution 4.0 International License