- Implement matrix creation (e.g., from an array or zeros)
- Implement matrix printing (output in a readable format)
- Implement matrix addition (element-wise)
- Implement matrix subtraction (element-wise)
- Implement matrix scalar multiplication (multiply each element by a constant)
- Implement matrix scalar division (divide each element by a constant)
- Implement matrix transposition (swap rows and columns)
- Implement matrix equality check (compare if two matrices are equal)
- Implement matrix resizing (expand or shrink the matrix)
- Implement matrix determinant calculation (for small square matrices, e.g., 2x2 and 3x3)
- Implement matrix multiplication (standard matrix product)
- Implement matrix inversion (for invertible square matrices)
- Implement matrix rank (using Gaussian elimination or similar techniques)
- Implement matrix trace (sum of diagonal elements)
- Implement matrix diagonalization (for certain square matrices)
- Implement matrix identity creation (returning an identity matrix of size n)
- Implement matrix row and column operations (e.g., swapping rows/columns, scaling rows/columns)
- Implement Matrix eigen values (for smaller square matrix such as 2 , 3, 4)