예제 #1
0
        /// <summary>
        /// Gets the inverted simplified base.
        /// </summary>
        /// <param name="newPower">The new power.</param>
        /// <param name="isRecursive">if set to <c>true</c> [is recursive].</param>
        /// <returns>IBase.</returns>
        private IBase getInvertedSimplifiedBase(IBase newPower, bool isRecursive)
        {
            newPower = newPower.ExtractSign(isRecursive);
            newPower.FlipSign();
            if (newPower.SignIsNegative() && !newPower.ValueIsNegative())
            {
                newPower = newPower.DistributeSign();
            }

            IBase newBase = SimplifyBase(newPower);

            newBase.ExtractSign(isRecursive);

            return(newBase);
        }