This page is a gym . The parent note built the rules; here we exercise them against every kind of case the notation can throw at you — different index counts, the delta's substitution, the epsilon's signs, degenerate/zero inputs, a limiting case, a word problem, and an exam-style trap. Every symbol used here was defined in the parent; if you need a refresher, the links at the bottom point to it.
Intuition How to read every example
Before you touch algebra, do two things: count the free indices (0 = number, 1 = vector, 2 = grid) and find the doubled index (that's the secret "add them all up"). If you do those two glances first, you already know the shape of the answer before computing it.
Definition The dimension symbol
n
Throughout this page n is the range each index runs over — the dimension of the space. In physics that's usually n = 3 (indices 1 , 2 , 3 ), and that is our default. A couple of examples deliberately use a different range (e.g. Ex 3 works with 2 × 2 matrices, so there n = 2 ); each such example states its n explicitly at the point of use. When you see n in a formula, just substitute whatever range that particular problem declared.
Every problem in index notation falls into one of these cells. The examples below are labelled with the cell they hit, and together they cover the whole table.
#
Case class
What makes it tricky
Example
A
0 free indices (scalar out)
make sure nothing survives
Ex 1
B
1 free index (vector out)
one letter must match both sides
Ex 2
C
2 free indices (matrix out)
two survivors, order matters
Ex 3
D
Kronecker substitution
delta "eats" a repeated index
Ex 4
E
Levi-Civita signs, all cases
even/odd/repeated permutations
Ex 5
F
Degenerate / zero input
repeated vector, parallel vectors → 0
Ex 6
G
epsilon–delta master identity
collapse a double cross product
Ex 7
H
Real-world word problem
translate physics → indices → number
Ex 8
I
Exam-style trap
illegal 3-times index / free-index mismatch
Ex 9
J
Limiting / dimension case
δ ii = n , behaviour as n grows
Ex 10
Range of every index is 1 , 2 , 3 (so n = 3 ) unless a problem says otherwise.
a i b i for a = ( 2 , − 1 , 3 ) , b = ( 4 , 0 , − 2 ) .
Forecast: the index i appears twice, so it is summed away; zero letters survive → the answer is a single number. Guess its sign: the last components (3 and − 2 ) fight the first components (2 and 4 ), so it's a tug-of-war — hold that guess and see who wins.
Step 1 — expand the implied sum. Why this step? A doubled index is a hidden ∑ , so we write it out:
a i b i = a 1 b 1 + a 2 b 2 + a 3 b 3 .
Step 2 — plug numbers. Why this step? Now it is ordinary arithmetic:
= ( 2 ) ( 4 ) + ( − 1 ) ( 0 ) + ( 3 ) ( − 2 ) = 8 + 0 − 6 = 2.
Reconcile the forecast: the tug-of-war was real — the negative piece ( 3 ) ( − 2 ) = − 6 pulled hard, but the positive piece ( 2 ) ( 4 ) = + 8 was bigger, so the winner is a small positive number, + 2 . Lesson: never trust a sign guess from one axis alone; the dot product sums all the pulls, and the largest-magnitude product decides. Here + 8 beat − 6 .
Verify: This is exactly the Dot product a ⋅ b . Independent check: a ⋅ b = 8 + 0 − 6 = 2 . ✔ Scalar out, as forecast (one number, no free index).
A = 1 0 4 2 1 0 0 3 1 , x = ( 1 , 2 , 3 ) , find y i = A ij x j .
Forecast: j is doubled (in A ij and x j ) → summed; i appears once each side → survives . One free index ⇒ the answer is a vector of length 3.
Step 1 — fix i , sum over j . Why this step? The rule "for each fixed i , add A ij x j over j " is just row i dotted with x .
y 1 = A 11 x 1 + A 12 x 2 + A 13 x 3 = ( 1 ) ( 1 ) + ( 2 ) ( 2 ) + ( 0 ) ( 3 ) = 5.
Step 2 — repeat for i = 2 , 3 . Why this step? The free index must be run over its whole range:
y 2 = ( 0 ) ( 1 ) + ( 1 ) ( 2 ) + ( 3 ) ( 3 ) = 11 , y 3 = ( 4 ) ( 1 ) + ( 0 ) ( 2 ) + ( 1 ) ( 3 ) = 7.
Verify: y = ( 5 , 11 , 7 ) . Sanity check by ordinary Matrix multiplication : multiply A x directly — same result. ✔ One free index → vector, exactly as forecast.
A ij and B j k as 2 × 2 matrices A = ( 1 3 2 4 ) , B = ( 5 7 6 8 ) , compute C ik = A ij B j k .
Forecast: j repeats → summed (the "shared middle" of Matrix multiplication ); i and k each appear once → both survive . Two free indices ⇒ a matrix . Here every index ranges over { 1 , 2 } , i.e. the dimension n = 2 for this example (not the usual 3 ).
Step 1 — write the entry formula. Why this step? Two free indices mean we must produce n 2 = 2 × 2 = 4 numbers; each is a sum over j (running 1 , 2 ):
C ik = A i 1 B 1 k + A i 2 B 2 k .
Step 2 — fill the grid. Why this step? Run i and k over { 1 , 2 } :
C 11 = 1 ⋅ 5 + 2 ⋅ 7 = 19 , C 12 = 1 ⋅ 6 + 2 ⋅ 8 = 22 ,
C 21 = 3 ⋅ 5 + 4 ⋅ 7 = 43 , C 22 = 3 ⋅ 6 + 4 ⋅ 8 = 50.
Verify: C = ( 19 43 22 50 ) , the standard product A B . ✔ Two free indices → grid, as forecast. Order matters: A ij B j k = B ij A j k in general.
δ ij δ j k a k and then evaluate for a = ( 7 , − 2 , 5 ) , reading off component i = 2 .
Forecast: each delta "eats" one repeated index. First δ j k a k → a j , then δ ij a j → a i . So the whole thing should collapse to just a i .
Step 1 — apply the inner delta. Why this step? The substitution rule δ j k a k = a j (only k = j survives the sum) replaces k by j :
δ ij δ j k a k = δ ij a j .
Step 2 — apply the outer delta. Why this step? Same rule again, δ ij a j = a i :
= a i .
Step 3 — read component i = 2 . Why this step? i is the surviving free index; picking i = 2 gives one number:
a 2 = − 2.
Verify: Two deltas chained is δ ik (from the parent's δ ij δ j k = δ ik ), and δ ik a k = a i . Same collapse. Component 2 of a is indeed − 2 . ✔
ε 123 , ε 231 , ε 213 , ε 321 , and ε 223 .
Forecast: ( 1 , 2 , 3 ) is the base ordering (+1). Each swap of two entries flips the sign. Any repeated index kills it to 0 .
Step 1 — the identity. Why this step? ( 1 , 2 , 3 ) is by definition an even permutation:
ε 123 = + 1.
Step 2 — cyclic shift. Why this step? ( 2 , 3 , 1 ) is a cyclic rotation of ( 1 , 2 , 3 ) = two swaps = even:
ε 231 = + 1.
Step 3 — single swap. Why this step? ( 2 , 1 , 3 ) swaps the first two → odd:
ε 213 = − 1.
Step 4 — reverse. Why this step? ( 3 , 2 , 1 ) swaps the ends of ( 1 , 2 , 3 ) → one swap → odd:
ε 321 = − 1.
Step 5 — repeated index. Why this step? Two indices equal (2 appears twice) → 0 :
ε 223 = 0.
Verify: Read the orientation wheel below. The three amber arrows run 1 → 2 → 3 → 1 : following the arrows (the cyclic order) gives the even permutations, each worth + 1 . The cyan dashed arrow runs against the amber flow (2 → 1 ): going backwards is a single swap, an odd permutation worth − 1 . A vertex label repeated (like the two 2 's in ε 223 ) has no place on the wheel at all — that's the 0 case. Cross-check with a determinant: ε ij k equals the sign of the permutation, matching all five values. ✔
( a × a ) i = ε ij k a j a k for any a .
Forecast: cross product of a vector with itself should be 0 (a vector is parallel to itself, zero enclosed area). We prove it purely from index symmetry — a degenerate input the notation handles automatically.
Step 1 — spot the symmetry clash. Why this step? The product a j a k is symmetric under swapping j ↔ k (since a j a k = a k a j ), while ε ij k is antisymmetric (ε ij k = − ε ik j ). Summing a symmetric object against an antisymmetric one always gives zero.
Step 2 — rename to prove it. Why this step? Rename dummies j ↔ k (legal — dummy names are free):
ε ij k a j a k = ε ik j a k a j = − ε ij k a j a k .
A quantity equal to its own negative must be zero:
( a × a ) i = 0.
Verify: Numerically, a = ( 2 , − 1 , 3 ) : the cross product a × a = ( 0 , 0 , 0 ) . ✔ This is the general degenerate case : any two parallel vectors (b = λ a ) give a × b = λ ( a × a ) = 0 too. (See Cross product , Levi-Civita symbol .)
Worked example Prove the BAC–CAB rule
a × ( b × c ) = b ( a ⋅ c ) − c ( a ⋅ b ) , then check numerically.
Forecast: the inner cross gives a vector, the outer cross a vector — one free index survives. The epsilon–delta identity should turn two epsilons into two delta-terms → two Dot product s.
Step 1 — write both crosses. Why this step? Component i of the whole thing, using the parent's cross-product formula twice:
[ a × ( b × c ) ] i = ε ij k a j ε k l m b l c m .
Step 2 — make the shared index first. Why this step? The epsilon–delta identity ε ij k ε i l m = δ j l δ k m − δ j m δ k l requires the summed index (here k ) to sit in the leading slot of both epsilons. In the second epsilon ε k l m it already leads; in the first, k is in the last slot, so we cyclically rotate ε ij k → ε k ij (a cyclic shift of a permutation leaves its sign unchanged, so this is an equality, not a sign flip). Now both epsilons start with k :
= ε k ij ε k l m a j b l c m = ( δ i l δ j m − δ im δ j l ) a j b l c m .
Step 3 — let the deltas substitute. Why this step? Each delta renames an index (Cell D power):
= a j b i c j − a j b j c i = b i ( a j c j ) − c i ( a j b j ) .
Step 4 — read the indices back as vectors. Why this step? a j c j = a ⋅ c , a j b j = a ⋅ b , and free index i marks a vector:
a × ( b × c ) = b ( a ⋅ c ) − c ( a ⋅ b ) .
Verify: Take a = ( 1 , 0 , 0 ) , b = ( 0 , 1 , 0 ) , c = ( 0 , 0 , 1 ) : LHS is b × c = ( 1 , 0 , 0 ) , so a × ( 1 , 0 , 0 ) = ( 0 , 0 , 0 ) ; RHS is b ( 0 ) − c ( 0 ) = ( 0 , 0 , 0 ) . They match. A non-degenerate numeric case (a = ( 1 , 2 , 3 ) etc.) is confirmed in the machine checks. ✔ (See Vector calculus identities .)
F = ( 3 , 0 , 4 ) N acts at position r = ( 0 , 2 , 0 ) m from a pivot. The torque is τ = r × F , i.e. τ i = ε ij k r j F k . Find τ and its magnitude.
Forecast: one free index i → torque is a vector (N·m). r points along + y , F mostly along + z and + x ; expect a torque with components perpendicular to both.
Step 1 — component i = 1 . Why this step? Fix i = 1 ; only non-repeated j , k survive ε 1 j k (ε 123 = + 1 , ε 132 = − 1 ):
τ 1 = r 2 F 3 − r 3 F 2 = ( 2 ) ( 4 ) − ( 0 ) ( 0 ) = 8.
Step 2 — component i = 2 . Why this step? ε 2 j k picks ε 231 = + 1 , ε 213 = − 1 :
τ 2 = r 3 F 1 − r 1 F 3 = ( 0 ) ( 3 ) − ( 0 ) ( 4 ) = 0.
Step 3 — component i = 3 . Why this step? ε 3 j k picks ε 312 = + 1 , ε 321 = − 1 :
τ 3 = r 1 F 2 − r 2 F 1 = ( 0 ) ( 0 ) − ( 2 ) ( 3 ) = − 6.
Step 4 — magnitude. Why this step? ∣ τ ∣ = τ i τ i (a Cell-A scalar):
∣ τ ∣ = 8 2 + 0 2 + ( − 6 ) 2 = 100 = 10 N⋅m .
Verify: τ = ( 8 , 0 , − 6 ) N⋅m . Units: m × N = N⋅m ✔. Perpendicularity check τ ⋅ r = ( 8 ) ( 0 ) + ( 0 ) ( 2 ) + ( − 6 ) ( 0 ) = 0 ✔ (torque ⟂ position, as a cross product must be).
Spot the error(s): a student writes "w k = δ ij a i b i ." Fix it and give the correct scalar for a = ( 1 , 2 , 2 ) , b = ( 2 , 0 , 1 ) .
Forecast: two red flags — a free-index mismatch (w k has free k , the right side has none) and an illegal index (i appears three times: δ ij , a i , b i ).
Step 1 — diagnose the illegal i . Why this step? A repeated index means one pairwise sum; three copies of i have no unique pairing (parent's forbidden case). The delta already carries indices i , j , so it must pair with distinct letters.
Step 2 — the student clearly meant δ ij a i b j . Why this step? Reading intent: contract a and b through the delta. Now i appears twice (δ ij , a i ) and j twice (δ ij , b j ) — both legal dummies, zero free indices.
Step 3 — collapse the delta. Why this step? δ ij b j = b i (substitution), leaving:
δ ij a i b j = a i b i = a ⋅ b .
So the left side must be a scalar , not w k . Correct statement: w = a i b i .
Step 4 — evaluate. Why this step? Now just a Cell-A dot product with a = ( 1 , 2 , 2 ) , b = ( 2 , 0 , 1 ) :
w = a i b i = ( 1 ) ( 2 ) + ( 2 ) ( 0 ) + ( 2 ) ( 1 ) = 2 + 0 + 2 = 4.
Verify: a ⋅ b = 2 + 0 + 2 = 4 , so w = 4 (a single scalar, as the corrected free-index count demands). ✔ Two lessons: free indices must match both sides, and no index may appear more than twice.
δ ii , δ ij δ ij , and ε ij k ε ij k in n = 3 dimensions, and describe how each behaves as n grows.
Forecast: these are fully contracted (no free indices) → each is a single number that depends on the dimension n . δ ii counts the diagonal, so expect n = 3 .
Step 1 — the trace of the delta. Why this step? δ ii = ∑ i δ ii = 1 + 1 + 1 : one for each dimension:
δ ii = n = 3.
Step 2 — delta squared. Why this step? Collapse one delta first: δ ij δ ij = δ ii (substitute j → i ), then Step 1:
δ ij δ ij = δ ii = n = 3.
Step 3 — epsilon fully contracted. Why this step? Apply the master identity ε ij k ε i l m = δ j l δ k m − δ j m δ k l with the choice l = j and m = k (this contracts the second pair of indices too, leaving nothing free):
ε ij k ε ij k = δ j j δ k k − δ j k δ k j .
Now evaluate each delta contraction using Steps 1–2: δ j j = n and δ k k = n (each is a trace), while δ j k δ k j = δ j j = n (the two deltas collapse to one trace). Substituting:
ε ij k ε ij k = n ⋅ n − n = n 2 − n = 3 2 − 3 = 6.
Reconcile the forecast & limiting behaviour: δ ii = n grows linearly with dimension (double the space, double the trace), while ε ij k ε ij k = n ( n − 1 ) grows quadratically — for large n the epsilon-count dwarfs the delta-trace. At n = 3 they give 3 and 6 ; at n = 4 they would give 4 and 12 ; the gap widens without bound.
Verify: 6 is exactly the number of non-zero entries of ε in 3D (the 3 ! = 6 permutations), each contributing ( ± 1 ) 2 = 1 . ✔ (See Determinants , Tensors .)
Recall Quick self-test across all cells
Count free indices of A ij x j ::: 1 (it's a vector).
Simplify δ ij δ j k a k ::: a i .
Why is a × a = 0 from indices? ::: symmetric a j a k against antisymmetric ε ij k ⇒ 0.
Value of ε ij k ε ij k in 3D ::: 6.
Why is δ ij a i b i illegal? ::: index i appears three times — no unique pairing.
Mnemonic Case-hunting habit
"Count survivors, find the twin." Survivors (free indices) = the shape of the answer; the twin (doubled index) = what you add. Do both glances before arithmetic and you'll never mis-shape an answer.