Utility.Substitute
Back to table
/*
Logic-Function-Analysis
Utility.Substitute
[LogicFunction g]=Utility.Substitute(LogicFunction F1, LogicFunction F2);
F1 : a logic function as a target
F2 : a logic function as a factor.
Compute $g=F_1(F_2) \ge F_1*F_2$.
For example, suppose that $F1=x1*x2$, and $F2=x2$. If $F2=TRUE$, then $g=F1*F2=x1*x2$. However, if $F2=x2=ONE$, then $g=F1*F2=x1$. Therefore, we can see that under the condition $F2=TRUE$, where we can regard it as a pre-condition $F2=ONE$ (under the condition $F2$ always be TRUE), so we get that $g=x1 \ge F1*F2$.
*/
//-------------------------------------------------------------------
// examples
[f]=AndXor()
{
1;2;3;
}
[g]=Utility.Substitute(f,And(2));
Print(f,g);
//-------------------------------------------------------------------
// result
IsCovering IsNegativeUnateFunctionTo bool ToDualFunction ToNotFunction Diagram FeedbackDiagram list() minterm Radixes Print real SAT Sequential OutputAndStateBasedly To2layerOrAnd Simplification HuffmanMealy ShannonTree BestVariableOrder Canonical MultiCover string() GetPositiveLogicFunction EnlargeLogicFunction ShrinkLogicFunction var() Xor XORP Zero