Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
VectorSpaceElement.cs
1using System.Collections.Generic;
3
5{
10 {
15 {
16 }
17
24 {
25 if (Scalar is IFieldElement FieldElement)
26 return this.MultiplyScalar(FieldElement);
27 else
28 return null;
29 }
30
37 {
38 if (Scalar is IFieldElement FieldElement)
39 return this.MultiplyScalar(FieldElement);
40 else
41 return null;
42 }
43
50 {
51 if (Scalar is IFieldElement FieldElement)
52 return this.MultiplyScalar(FieldElement);
53 else
54 return null;
55 }
56
63
67 public override ISet AssociatedSet => this.AssociatedVectorSpace;
68
73
78
83
88
93
98
103 {
104 get;
105 }
106
110 public abstract int Dimension
111 {
112 get;
113 }
114
118 public virtual ICollection<IElement> VectorElements => this.ChildElements;
119
125 public abstract IElement GetElement(int Index);
126
132 public abstract void SetElement(int Index, IElement Value);
133 }
134}
Base class for all types of field elements.
Definition: FieldElement.cs:10
Base class for all types of module elements.
Base class for all types of vector space elements (vectors).
override IModuleElement MultiplyScalar(IRingElement Scalar)
Tries to multiply a scalar to the current element.
override ISemiGroup AssociatedSemiGroup
Associated Semi-Group.
override ILeftModule AssociatedLeftModule
Associated Left-Module.
virtual ICollection< IElement > VectorElements
An enumeration of vector elements.
VectorSpaceElement()
Base class for all types of vector space elements (vectors).
override IRightModule AssociatedRightModule
Associated Right-Module.
override IAbelianGroup AssociatedAbelianGroup
Associated Abelian Group.
abstract IVectorSpace AssociatedVectorSpace
Associated Right-VectorSpace.
abstract void SetElement(int Index, IElement Value)
Sets an element in the vector.
override Sets.IModule AssociatedModule
Associated Module.
override ILeftModuleElement MultiplyScalarLeft(IRingElement Scalar)
Tries to multiply a scalar to the current element from the left.
abstract IElement GetElement(int Index)
Gets an element of the vector.
abstract IVectorSpaceElement MultiplyScalar(IFieldElement Scalar)
Tries to multiply a scalar to the current element.
override IRightModuleElement MultiplyScalarRight(IRingElement Scalar)
Tries to multiply a scalar to the current element from the right.
Basic interface for all types of elements.
Definition: IElement.cs:20
ICollection< IElement > ChildElements
An enumeration of child elements. If the element is a scalar, this property will return null.
Definition: IElement.cs:49
Basic interface for all types of field elements.
Basic interface for all types of left module elements.
Basic interface for all types of module elements.
Basic interface for all types of right module elements.
Basic interface for all types of ring elements.
Definition: IRingElement.cs:10
Basic interface for all types of module elements.
Basic interface for all types of abelian groups.
Basic interface for all types of groups.
Definition: IGroup.cs:10
Basic interface for all types of left modules.
Definition: ILeftModule.cs:10
Basic interface for all types of modules.
Definition: IModule.cs:10
Basic interface for all types of right modules.
Definition: IRightModule.cs:10
Basic interface for all types of semigroups.
Definition: ISemiGroup.cs:10
Basic interface for all types of sets.
Definition: ISet.cs:10
Basic interface for all types of modules.
Definition: IVectorSpace.cs:10