Mistake Clinic
Module-Specific Mistake Radar
| Mistake | Counterexample or diagnostic | Repair |
|---|---|---|
| Nested loops imply quadratic time | Doubling inner index yields logarithmic iterations | Sum actual iterations |
| Two evaluations classify an arbitrary recurrence | Functions can agree on sampled sizes and differ later | Use symbolic assumptions and prove the bound |
| Recursion depth equals total cost | Binary tree has logarithmic depth and linear leaves | Count every node's work |
| Empty capacity 1 has potential2*size-capacity equal0 | It equals-1 | Include the correct initial potential or shift it |
| Amortized3 means every append costs at most3 | The 17th doubling append costs17 | Report total and maximum separately |
| Any equal key satisfies lower_bound | [2,2] needs index 0 | Preserve the first qualifying candidate |
| A decreasing positive real proves termination | Repeated halving never reaches zero exactly | Use a well-founded rank or another valid argument |
| Count-optimal greedy is value-optimal | Two value 1 short jobs lose to one value 5 long job | Re-prove the changed objective |
| Overshoot pruning works with signed items | 5 plus-2 reaches target 3 | Bound possible completions under stated domains |
| A DP recurrence alone proves implementation complexity | Linear predecessor search at every state is quadratic | Count state, transition, setup, and recovery costs |
| Two variables mean constant bit storage | Exact Fibonacci values grow in bit length | Distinguish slots from bits |
| Oracle agreement proves all inputs correct | Both programs can share endpoint mistakes | Validate the oracle and retain a separate proof |
Practice Mistake Checks
After A, justify an exact sum and a matching lower bound. After B, explain why lo=mid can fail to progress and why lexicographic order allows later coordinates to increase. After C, state exactly what an exchange preserves and why the weighted objective breaks that reasoning.
Keep the original failure, a minimal input, hidden assumption, correction, and fresh transfer attempt. Use solutions after attempting the repair. Log real mistakes; do not manufacture errors to meet a quota. Critical errors in the rubric must be repaired even if the code checker passes.