Everything below lives in 2 dimensions unless a prompt says otherwise: one skew basis {e1,e2} drawn on a flat plane. Keeping it 2D lets us see every projection.
Every prompt below is a claim. The reveal says T/F and why — the "why" is the point.
A vector v has different covariant and contravariant components, so it is really two different vectors.
False.v is one geometric arrow that ignores coordinates; vi and vi are two readings of the same arrow (v=viei=viei), like giving one point both polar and Cartesian addresses.
If the basis is orthonormal, covariant and contravariant components are identical.
True. Then gij=ei⋅ej=δij, so lowering vi=gijvj does nothing and vi=vi. This is why school never mentions the distinction.
The metric gij is always the identity matrix.
False. It is the identity only for an orthonormal basis. For a skew or stretched basis its off-diagonal entries ei⋅ej (i=j) are nonzero and its diagonal entries encode axis lengths.
gij is symmetric because the dot product is commutative.
True.gij=ei⋅ej=ej⋅ei=gji, so a real inner-product metric is always symmetric. In our 2D setting that means only 3 of its 4 entries are independent (g12=g21).
The covariant components vi are the contravariant components of v in the dual basis.
True. Since v=viei, the numbers vi are literally the parallel-expansion coefficients along {ei}. "Covariant" and "contravariant" are the same idea viewed against two different bases.
Raising and then lowering an index gets you back your original components.
True.gij(gjkvk)=(gijgjk)vk=δikvk=vi because gij is defined as the inverse of gij and δik acts as the index filter. The two operations are exact inverses.
gij is a genuinely new object you must compute separately from gij.
Half-false.gij is fully determined by gij — it is its matrix inverse (gikgkj=δji). It is not independent data; it is the same geometry read the other way (and it only exists because the basis is non-degenerate).
Each line states a plausible but wrong move. The reveal names the flaw and the fix.
"To get the expansion coefficients of v, just compute v⋅ei."
Wrong in a skew basis.v⋅ei=vi gives the covariant (perpendicular/shadow) numbers, not the expansion coefficients vi. To get vi solve viei=v or raise: vi=gijvj.
"The squared length is vivi (sum both components squared)."
Wrong. Summing two up-indices secretly assumes gij=δij. The invariant is ∣v∣2=vivi=gijvivj — one up paired with one down.
"Covariant components transform inversely to the basis, because 'co' means opposite."
Wrong.Covariant transforms with the basis (matrix A: v~i=Ajivj); contravariant transforms with A−1, against the basis. The prefix describes behaviour under change of basis, and it is the reverse of the intuitive guess.
"Since indices are just labels, I can write viwi and sum it."
Wrong. Only an up–down contraction viwi is coordinate-free (a true scalar). viwi changes value when you change basis, so it is not a meaningful invariant — always keep the staircase, one up + one down.
"The gradient of a scalar is a contravariant vector, since it 'points' somewhere."
Wrong.∂if=∂f/∂xi carries a lower index — it is naturally a covector. To make it a contravariant displacement-type vector you must raise it: (∇f)i=gij∂jf (see General relativity — raising and lowering indices).
"In polar coordinates the covariant and contravariant gradient are the same, like in Cartesian."
Wrong. In curvilinear coordinates the metric is not the identity (gθθ=r2), so raising an index rescales entries. The Cartesian coincidence is special, not general.
"gijvivj and gijvivj give different lengths."
Wrong. Both equal ∣v∣2. Since vi=gijvj, substitution shows gijvivj=gijgikvkgjlvl=δkjgjlvkvl=gijvivj. Same scalar (the δ filters j→k).
Why do we even need two kinds of components for one vector?
Because in a non-orthonormal basis "how much e1 is in v" has two honest answers — slide-along-axes (parallel) vs cast-a-shadow (perpendicular) — and they disagree. Orthonormal bases hide this because both agree.
Why is the dot product ei⋅ej the right thing to name "the metric"?
Because when you lower an index the substitution vi=(vjej)⋅ei=vj(ej⋅ei) makes ei⋅ej appear unavoidably. It is exactly the data (lengths and angles) needed to convert up-indices to down-indices.
Why must an invariant scalar pair one up with one down index?
Under a basis change the up-index transforms with A−1 and the down-index with A; their product cancels (A−1A=I, i.e. δ), leaving a number that all observers agree on. Two same-height indices do not cancel.
Why are the names "contra" and "co" attached to the components and not the vector?
The vector is fixed; only its numbers respond to a basis change. "Contra" describes numbers that move opposite the basis to keep v fixed; "co" describes numbers that move along with it.
Why does the dual basis vector e1 point perpendicular to e2?
Because e1⋅e2=δ21=0 forces perpendicularity, and e1⋅e1=1 fixes its length. This is precisely what makes vi=v⋅ei the coefficients along {ei}.
Why does the whole covariant/contravariant machinery matter physically?
In curved spacetime and curvilinear frames the metric is genuinely non-trivial, so raising/lowering is the only correct way to build coordinate-independent quantities like lengths, energies, and physical laws.
What happens to the covariant/contravariant distinction as the basis becomes orthonormal?
It collapses smoothly: off-diagonal gij→0 and diagonal →1, so vi→vi and gij→gij→δij. The two readings merge into the single "school" component.
What if the two basis vectors point in nearly the same direction (almost parallel)?
The basis becomes nearly degenerate: detg→0, so gij blows up and contravariant components become huge and numerically unstable. Geometrically, a small change in the arrow needs enormous coefficients along near-parallel axes.
What if two basis vectors are actually parallel (linearly dependent)?
Then it is not a basis at all: g is singular, g−1 does not exist, and you cannot raise indices. Some vectors have no expansion and others have infinitely many — the whole framework requires a genuine basis.
For a zero vector, what are its covariant and contravariant components?
All zero in both, in any basis: 0=0⋅gij=gij⋅0. The zero vector is the one case where "which projection?" never matters.
If a basis is orthogonal but not normalized (axes perpendicular but different lengths), does vi=vi?
No. Then gij is diagonal but not the identity (gii=∣ei∣2=1), so vi=giivi rescales each component. Orthogonality kills the off-diagonal mixing but not the length rescaling.
In one dimension, is there any difference between covariant and contravariant?
Yes if the single basis vector isn't unit length: g11=∣e1∣2, so v1=g11v1. The distinction survives even in 1D whenever the axis is stretched.
Recall Final gut-check
Say in one breath: contravariant = parallel projection = index up = transforms against the basis (A−1); covariant = perpendicular projection = index down = transforms with the basis (A); the metric gij walks you down the staircase and gij walks you up.