LinearSolve[m, b] finds an x which solves the matrix equation m.x==b.
LinearSolve works on both numerical and symbolic matrices.
The argument b can be either a vector or a matrix.
The matrix m can be square or rectangular.
For underdetermined systems, LinearSolve will return one of the possible solutions; Solve will return a general solution.
For sparse systems of linear equations, it will usually be much more efficient to use Solve than LinearSolve.
If you need to solve the same approximate numerical linear system many times, it is usually more efficient to use LUDecomposition and LUBackSubstitution.
LinearSolve[m, b, Modulus -> n] takes the matrix equation to be modulo n.
LinearSolve[m, b, ZeroTest -> test] evaluates test[ m[[i, j]] ] to determine whether matrix elements are zero. The default setting is ZeroTest -> (# == 0 &).
A Method option can also be given. Possible settings are CofactorExpansion, DivisionFreeRowReduction and OneStepRowReduction. The default setting of Automatic switches between these methods depending on the matrix given.
See The Mathematica Book: Section 3.7.8.
Implementation Notes: see section A.9.4 and A.9.4.
See also: Inverse, PseudoInverse, Solve, NullSpace.
Related package: LinearAlgebra`Tridiagonal`.