In mathematics, more specifically in linear algebra, the spark of a
m
×
n
{\displaystyle m\times n}
matrix
A
{\displaystyle A}
is the smallest integer
k
{\displaystyle k}
such that there exists a set of
k
{\displaystyle k}
columns in
A
{\displaystyle A}
which are linearly dependent. If all the columns are linearly independent,
s
p
a
r
k
(
A
)
{\displaystyle \mathrm {spark} (A)}
is usually defined to be 1 more than the number of rows. The concept of matrix spark finds applications in error-correction codes, compressive sensing, and matroid theory, and provides a simple criterion for maximal sparsity of solutions to a system of linear equations.
The spark of a matrix is NP-hard to compute.
Contents
Definition
Formally, the spark of a matrix
A
{\displaystyle A}
is defined as follows:
where
d
{\displaystyle d}
is a nonzero vector and
‖
d
‖
0
{\displaystyle \|d\|_{0}}
denotes its number of nonzero coefficients (
‖
d
‖
0
{\displaystyle \|d\|_{0}}
is also referred to as the size of the support of a vector). Equivalently, the spark of a matrix
A
{\displaystyle A}
is the size of its smallest circuit
C
{\displaystyle C}
(a subset of column indices such that
A
C
x
Example
Consider the following matrix
A
{\displaystyle A}
.
A
=
[
1
2
0
1
1
2
0
2
1
2
0
3
1
0
−
3
4
]
{\displaystyle A={\begin{bmatrix}1&2&0&1\\1&2&0&2\\1&2&0&3\\1&0&-3&4\end{bmatrix}}}
The spark of this matrix equals 3 because:
There is no set of 1 column of
A
{\displaystyle A}
which are linearly dependent.
There is no set of 2 columns of
Properties
If
n
≥
m
{\displaystyle n\geq m}
, the following simple properties hold for the spark of a
m
×
n
{\displaystyle m\times n}
matrix
A
{\displaystyle A}
:
s
p
a
r
k
(
A
)
=
m
+
1
⇒
r
a
n
k
(
A
)
=
m
Criterion for uniqueness of sparse solutions
The spark yields a simple criterion for uniqueness of sparse solutions of linear equation systems.
Given a linear equation system
A
x
=
b
{\displaystyle A\mathbf {x} =\mathbf {b} }
. If this system has a solution
x
{\displaystyle \mathbf {x} }
that satisfies
‖
x
‖
0
<
s
p
a
r
k
(
A
)
2
{\displaystyle \|\mathbf {x} \|_{0}<{\frac {\mathrm {spark} (A)}{2}}}
, then this solution is the sparsest possible solution. Here
‖
x
Lower bound in terms of dictionary coherence
If the columns of the matrix
A
{\displaystyle A}
are normalized to unit norm, we can lower bound its spark in terms of its dictionary coherence:
s
p
a
r
k
(
A
)
≥
1
+
1
μ
(
A
)
{\displaystyle \mathrm {spark} (A)\geq 1+{\frac {1}{\mu (A)}}}
.
Here, the dictionary coherence
μ
(
A
)
{\displaystyle \mu (A)}
is defined as the maximum correlation between any two columns:
μ
Applications
The minimum distance of a linear code equals the spark of its parity-check matrix.
The concept of the spark is also of use in the theory of compressive sensing, where requirements on the spark of the measurement matrix are used to ensure stability and consistency of various estimation techniques. It is also known in matroid theory as the girth of the vector matroid associated with the columns of the matrix. The spark of a matrix is NP-hard to compute.



