Theory Card 051 — Invariants / Breakdown
Research lens
An invariant is a condition that remains true throughout an algorithm or system process and anchors correct reasoning. In the Breakdown stage of BASIC, the goal is to decompose the prompt into named parts. That makes this concept especially relevant here, because it shapes how much mental work the candidate is trying to carry at once and what gets made explicit.
Why it matters in SWE interviews
They are crucial in binary search, sliding windows, heaps, queues, and distributed workflows alike. Structure is where invariants become explicit, which makes implementation safer and explanation clearer. In practice, Breakdown is where the candidate should ask: What exactly is the problem asking, what are the constraints, and what is the shape of the input and output? That question acts like a cognitive boundary. It protects the answer from turning into an unstructured search.
BASIC move
A strong move here is to split the problem before trying to solve it. For Invariants, that means deliberately naming the important units instead of juggling them implicitly. The interviewer sees cleaner reasoning, and the candidate benefits from prevents premature solutioning and keeps working memory from being flooded too early.
Common miss
The miss is coding pointer moves or state transitions without naming what must remain true after each step. When that happens, the candidate usually feels busy, but the answer is actually becoming less inspectable.
Practice prompt
“While practicing, pause at the Breakdown step and explain how Invariants changes the way you would handle the prompt.”