Пример #1
0
        /// <summary>
        /// Compute <c>this * factor</c> (overwrite <c>this</c>).
        /// </summary>
        ///
        /// <param name="Factor">The factor</param>
        public override void MultiplyThisBy(IGFElement Factor)
        {
            if (!(Factor is GF2nPolynomialElement))
            {
                throw new Exception();
            }
            if (!mField.Equals(((GF2nPolynomialElement)Factor).mField))
            {
                throw new Exception();
            }
            if (Equals(Factor))
            {
                SquareThis();
                return;
            }

            polynomial = polynomial.Multiply(((GF2nPolynomialElement)Factor).polynomial);
            ReduceThis();
        }