Progression matrix
What this is
Section titled “What this is”This section shows what the dataset MATx Teacher actually runs on
really looks like. So far the study guide has worked with abstract
skill examples (linear_eq.*, arith.*); here we switch to data
curated by a practising math teacher.
The topic is «Defineerimine» (defining the unknown for a one-variable
expression), Grade 7. It is the step before solving an equation: given
an Estonian word problem, the student has to introduce x correctly
and describe the remaining quantities through it.
Matrix structure:
- 3 difficulty levels (TASE 1 / 2 / 3) — from abstract numbers to context to 3+ quantities.
- 3 relation types — additive (
+/−), multiplicative (×/÷) and mixed. - 9 micro-skills =
level × relation type. - 20 tasks, where each cell is:
- ★ — the task introduces a new micro-skill.
- ✓ — that micro-skill is a prerequisite to make sense of the task.
- — — not applicable.
The 20×9 matrix
Section titled “The 20×9 matrix”| # | level | T1 +/− | T1 ×/÷ | T1 ±· | T2 +/− | T2 ×/÷ | T2 ±· | T3 +/− | T3 ×/÷ | T3 ±· | task |
|---|---|---|---|---|---|---|---|---|---|---|---|
| MD-01 | L1 | ★ | — | — | — | — | — | — | — | — | One number is greater than another by 5. |
| MD-02 | L1 | ★ | — | — | — | — | — | — | — | — | One number is smaller than another by 8. |
| MD-03 | L1 | — | ★ | — | — | — | — | — | — | — | One number is 2 times greater than another. |
| MD-04 | L1 | — | ★ | — | — | — | — | — | — | — | One number is 3 times smaller than another. |
| MD-05 | L1 | ✓ | ✓ | ★ | — | — | — | — | — | — | Mixed examples |
| MD-06 | L1 | ✓ | ✓ | ★ | — | — | — | — | — | — | Mixed examples |
| MD-07 | L2 | ✓ | — | — | ★ | — | — | — | — | — | The sister is 3 years older than the brother. … |
| MD-08 | L2 | ✓ | — | — | ★ | — | — | — | — | — | The red car drives 40 km/h … |
| MD-09 | L2 | — | ✓ | — | — | ★ | — | — | — | — | The father is 4 times older than the son. … |
| MD-10 | L2 | — | ✓ | — | — | ★ | — | — | — | — | The book costs 3 times more … |
| MD-11 | L2 | ✓ | ✓ | — | ✓ | ✓ | ★ | — | — | — | Mixed examples |
| MD-12 | L2 | ✓ | ✓ | — | ✓ | ✓ | ★ | — | — | — | Mixed examples |
| MD-13 | L3 | ✓ | — | — | — | — | — | ★ | — | — | The 2nd number is 4 greater than the 1st. … |
| MD-14 | L3 | ✓ | — | — | ✓ | — | — | ★ | — | — | Uudo is 5 years older than Anna. … |
| MD-15 | L3 | — | ✓ | — | — | — | — | — | ★ | — | The 2nd number is 2 times greater than the 1st. … |
| MD-16 | L3 | — | ✓ | — | — | ✓ | — | — | ★ | — | Mari wrote 3 times … |
| MD-17 | L3 | ✓ | ✓ | — | — | — | — | — | — | ★ | The 2nd number is 3 times greater than the 1st. … |
| MD-18 | L3 | ✓ | ✓ | — | ✓ | ✓ | — | — | — | ★ | A banana costs 2 times less … |
| MD-19 | L3 | ✓ | ✓ | ✓ | — | — | — | ✓ | ✓ | ★ | The 2nd number is 2 times greater than the 1st. … |
| MD-20 | L3 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ★ | Bianca is 5 years older than Alexandra. … |
9 micro-skills and their prerequisites
define.t1.add— L1 — additive (+/−)define.t1.mul— L1 — multiplicative (×/÷)define.t1.mix— L1 — mixed ← define.t1.add, define.t1.muldefine.t2.add— L2 — additive (+/−) + context ← define.t1.adddefine.t2.mul— L2 — multiplicative (×/÷) + context ← define.t1.muldefine.t2.mix— L2 — mixed + context ← define.t1.add, define.t1.mul, define.t2.add, define.t2.muldefine.t3.add— L3 — additive (+/−) + 3+ quantities ← define.t1.add, define.t2.adddefine.t3.mul— L3 — multiplicative (×/÷) + 3+ quantities ← define.t1.mul, define.t2.muldefine.t3.mix— L3 — mixed + 3+ quantities ← define.t1.add, define.t1.mix, define.t1.mul, define.t2.add, define.t2.mix, define.t2.mul, define.t3.add, define.t3.mul
Prerequisite graph
Section titled “Prerequisite graph”The same 9 micro-skills, viewed as dependencies. Colour = level:
blue L1, yellow L2, red L3. An arrow A → B reads as “skill A must
be acquired before B”. Hover a node for a description; click
scrolls down to the matrix table.
graph LR classDef l1 fill:#bfdbfe,stroke:#1d4ed8; classDef l2 fill:#fde68a,stroke:#a16207; classDef l3 fill:#fecaca,stroke:#b91c1c;
T1A["L1<br/>additive (+/−)"]:::l1 T1M["L1<br/>multiplicative (×/÷)"]:::l1 T1X["L1<br/>mixed"]:::l1
T2A["L2<br/>(+/−) + context"]:::l2 T2M["L2<br/>(×/÷) + context"]:::l2 T2X["L2<br/>mixed + context"]:::l2
T3A["L3<br/>(+/−) + 3+ qty"]:::l3 T3M["L3<br/>(×/÷) + 3+ qty"]:::l3 T3X["L3<br/>mixed + 3+ qty"]:::l3
T1A --> T1X T1M --> T1X T1A --> T2A T1M --> T2M T1A --> T2X T1M --> T2X T2A --> T2X T2M --> T2X T1A --> T3A T2A --> T3A T1M --> T3M T2M --> T3M T1A --> T3X T1M --> T3X T1X --> T3X T2A --> T3X T2M --> T3X T2X --> T3X T3A --> T3X T3M --> T3X
click T1A "#matrix" "L1 additive (+/−): abstract 'a is 5 more than b'. No prerequisites." click T1M "#matrix" "L1 multiplicative (×/÷): abstract 'a is 3 times b'. No prerequisites." click T1X "#matrix" "L1 mixed: combines (+/−) and (×/÷) in one task, no context. Needs both L1." click T2A "#matrix" "L2 (+/−) + context: word problem, e.g. 'Kalle is 5 years older than Mari'. Needs L1 additive." click T2M "#matrix" "L2 (×/÷) + context: word problem, e.g. 'cat mass is 3× the kitten's'. Needs L1 multiplicative." click T2X "#matrix" "L2 mixed + context: word problem with both (+/−) and (×/÷). Needs L1 and L2 of both kinds." click T3A "#matrix" "L3 (+/−) + 3+ qty: three or more quantities, all additive. Needs L1 and L2 additive." click T3M "#matrix" "L3 (×/÷) + 3+ qty: three or more quantities, all multiplicative. Needs L1 and L2 multiplicative." click T3X "#matrix" "L3 mixed + 3+ qty: apex skill — combines everything, requires all 8 lower skills."The pyramid is recognisable: the right-most L3 mixed + 3+ qty is the apex skill that depends on everything else. This is not accidental — tasks 19–20 in the matrix are indeed marked ✓ in all 8 lower cells and ★ only on this apex. They are the final comprehensive tasks that test absolutely everything the teacher wanted the student to learn within this topic.
The selector uses this topology directly: a struggling student should not be served L3 before L2 is solid, and L2 should not come before L1 is acquired.
Where the data comes from
Section titled “Where the data comes from”Source: data/matx-define/source/MATx_Defineerimine_Maatriks_v3.xlsx
(task curator — Andri Suga, MATx). The matrix is parsed into three
JSON files (microskills.json, tasks.json, matrix.json) by
scripts/build-matx-define.py and is consumed simultaneously by:
- the backend MVP in
web/(via the symlinkweb/data/matx-define/), - this study guide section (the widgets above).
This is a single source of truth for the progression — no duplication between packages.
On the Selector simulator page you can pick a virtual student and watch which tasks the selector recommends after a series of correct and incorrect answers.