ShannonTree.BestVariableOrder
Back to table
/*
Shannon-Tree
ShannonTree.BestVariableOrder
[var() varList]=ShannonTree.BestVariableOrder(LogicFunction F);
F : a logic function
varList : a list of indexes indicates the sequential order of the variables
Estimate the best variable order for generating the BDD.
Since the uniqueness of the variable's order cannot be proved, the solution here is only a recommended result.
*/
//-------------------------------------------------------------------
// examples
f = AndOr()
{
2,4;
1,-3;
-1,2,3;
-1,2,3,4;
-2,-4;
}
g=ShannonTree.BestVariableOrder(f);
Print(f,g);
//-------------------------------------------------------------------
// result
Analysis IsBiUnateFunction IsSelfAntiDualFunction IsSymmetricFunction IsThresholdFunction AndOr BDD Binary OneComplement bool ToROBDD Dimacs Equiv Get long minterm MantissaToPositiveInteger MostSignificantDigit PositiveIntegerToMantissa Radixes object() One To2LayerOrAnd To2LayerAndXor Solve ToStateTransitionTable SimpleCover TimingChart CreateDummyLogicFunction Zero