Binary relations and matrix extensions library targeting netstandard2.0 Provides a bunch of extension methods for binary matrices including:
Operations
- Reverse
- SymmetricDifference
- Difference
- Union
- Intersection
- Complementation
- Dual
- Narrowing
- TransitiveClosure
- ReflexiveClosure
- SymmetricClosure
- GetDiagonalRelation - a diagonal matrix
Matrix properties check
- IsTotalRelation (full relation)
- IsAntiDiagonalRelation
- IsDiagonalRelation
- IsReflexive
- IsAntireflexive
- IsSymmetric
- IsAsymmetric
- IsAntisymmetric
- IsTransitive
- IsNonTransitive
- IsNegativeTransitive
- IsAcyclic
- IsConnex
and derived methods ...
Extremums
- HasMaximum() <-> HasMinimum()
- HasMajorant() <-> HasMinorant()
and corresponding getters ...
Helpers (for one and two dimentional arrays)
- Cast<R,T>
- Fill<T>(T value)
- PrintThrough<T>
- IsReferenceSequenceEqualTo<T>(T[] array)
For arrays, vectors and numbers
- Multiply
- MultiplyRecursively
- Add
- Subtract
- Power
- Transpose
Getters and setters for collumns and rows
- GetRow<T>
- SetRow<T>
- GetCol<T>
- SetCol<T>
- Randomize
- AllocateRandomSquareMatrix
- AllocateRandomVector
- CartesianProduct
- CartesianProductDistinctPairs