ShannonTree.Fast
Back to table
/*
Shannon-Tree
ShannonTree.Fast
[BDD tree]=ShannonTree.Fast(LogicFunction F);
F : a logic function
tree : a logic function in the BDD form
Create the tree of the given logic-function with the fast algorithm.
The result very depends on the selection of the first few variables. Hence, sometimes it returns some unexpected terrible result.
*/
//-------------------------------------------------------------------
// examples
f = AndOr()
{
2,4;
1,-3;
-1,2,3;
-1,2,3,4;
-2,-4;
}
g=ShannonTree.Fast(f);
Print(f,g);
//-------------------------------------------------------------------
// result
IsPositiveFunction IsSymmetricFunction IsThresholdFunction And ToBinary PureBinary binary binaryioset ToNotFunction ToXORP FeedbackDiagram long Nor Radixes object Print real() To2LayerAndOr To2LayerAndXor Solve StateVariables CreateCompactTableWithFullSimplification Canonical MultiCover string TruthTable Utility CreateDummyLogicFunction Normalization Zero