mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[poincare/multiplication] shallowBeautify builds Power only if necessary
This commit is contained in:
committed by
Émilie Feral
parent
94bad10ddb
commit
9cbbffcdd6
@@ -383,13 +383,17 @@ Expression Multiplication::shallowBeautify(ExpressionNode::ReductionContext redu
|
||||
||
|
||||
CanSimplifyUnitProduct(
|
||||
unitsExponents, unitsMetrics,
|
||||
entryUnitExponents, entryUnitNorm, Power::Builder(entryUnit, Rational::Builder(-1)), -1,
|
||||
entryUnitExponents, entryUnitNorm, entryUnit, -1,
|
||||
bestUnit, bestUnitExponent, bestRemainderExponents, bestRemainderMetrics
|
||||
);
|
||||
}
|
||||
if (bestUnit.isUninitialized()) {
|
||||
break;
|
||||
}
|
||||
assert(bestUnitExponent == 1 || bestUnitExponent == -1);
|
||||
if (bestUnitExponent == -1) {
|
||||
bestUnit = Power::Builder(bestUnit, Rational::Builder(-1));
|
||||
}
|
||||
const int position = unitsAccu.numberOfChildren();
|
||||
unitsAccu.addChildAtIndexInPlace(bestUnit, position, position);
|
||||
unitsExponents = bestRemainderExponents;
|
||||
|
||||
Reference in New Issue
Block a user