I enabled creation of multiplication nodes with >2 children. But the DistributeMultOverPlus function ignores the third (and later) children.
git-svn-id: https://stp-fast-prover.svn.sourceforge.net/svnroot/stp-fast-prover/trunk/stp@958
e59a4935-1847-0410-ae03-
e826735625c1
output =
nf->CreateTerm(k, inputValueWidth, nonconstkids);
output = Flatten(output);
+ output = makeTower(k,output.GetChildren());
output = DistributeMultOverPlus(output, true);
output = CombineLikeTerms(output);
}
if (BVMULT != k)
return a;
+ assert(a.Degree() == 2);
+
ASTNode left = a[0];
ASTNode right = a[1];
Kind left_kind = left.GetKind();