예제 #1
0
        /// <summary>
        /// Performs a scalar multiplication, if possible.
        /// </summary>
        /// <param name="ModuleElement">Module element.</param>
        /// <param name="Scalar">Scalar element.</param>
        /// <returns>Result, if understood, null otherwise.</returns>
        public virtual IRightModuleElement MultiplyScalarRight(IRightModuleElement ModuleElement, IRingElement Scalar)
        {
            IModuleElement E = ModuleElement as IModuleElement;

            if (E == null)
            {
                return(null);
            }
            else
            {
                return(this.MultiplyScalar(Scalar, E));
            }
        }
예제 #2
0
        /// <summary>
        /// Performs a scalar multiplication, if possible.
        /// </summary>
        /// <param name="Scalar">Scalar element.</param>
        /// <param name="ModuleElement">Module element.</param>
        /// <returns>Result, if understood, null otherwise.</returns>
        public virtual ILeftModuleElement MultiplyScalarLeft(IRingElement Scalar, ILeftModuleElement ModuleElement)
        {
            IModuleElement E = ModuleElement as IModuleElement;

            if (E is null)
            {
                return(null);
            }
            else
            {
                return(this.MultiplyScalar(Scalar, E));
            }
        }
예제 #3
0
 /// <summary>
 /// Performs a scalar multiplication, if possible.
 /// </summary>
 /// <param name="ModuleElement">Module element.</param>
 /// <param name="Scalar">Scalar element.</param>
 /// <returns>Result, if understood, null otherwise.</returns>
 public virtual IModuleElement MultiplyScalar(IRingElement Scalar, IModuleElement ModuleElement)
 {
     return(ModuleElement.MultiplyScalar(Scalar));
 }
예제 #4
0
 /// <summary>
 /// Performs a scalar multiplication, if possible.
 /// </summary>
 /// <param name="ModuleElement">Module element.</param>
 /// <param name="Scalar">Scalar element.</param>
 /// <returns>Result, if understood, null otherwise.</returns>
 public override IModuleElement MultiplyScalar(IRingElement Scalar, IModuleElement ModuleElement)
 {
     return(ModuleElement.MultiplyScalar(Scalar));
 }