+10 XP

Invertibility: Can You Decode?

Everything so far was building to one question the brain (and every AI) cares about: given the output, can you recover the input? That's invertibility — running the transformation backwards. It's exactly decoding: reading the stimulus back out of a neural response.

You can go backwards only if the map is one-to-one — every output came from exactly one input. The instant two different inputs produce the same output, you're stuck: you can't tell which one it was. And that's precisely what a null space bigger than a point does — it guarantees collisions.

Feel it below. With Q, drag r along the red null-space line: many inputs → one output → hopeless to reverse. With P, every input has its own private output → reverse it freely. In Python, np.linalg.inv(P) works; np.linalg.inv(Q) throws a "singular matrix" error — the math itself refuses, because there is no unique answer to hand back.

INPUT space — retinal activity rdrag me • r = (2.0, 1.0)OUTPUT space — LGN response g = Q · rg = (3.0, 3.0)

The red dashed line is the null space: every input on it lands on the same output. Drag r along it — the output g doesn't move! The output only ever lands on the green range line (rank 1). So given g, you can't tell which r it came from → not invertible, information lost.

A matrix is invertible exactly when all of these hold — they're the same fact said three ways:
• it's square and full rank (rank = number of columns),
• its null space is just the origin (dimension 0),
• the transformation doesn't change dimensionality (no squishing).

Any squish breaks all three at once — and kills your ability to decode.