Skip to main content

Retainium research · An interactive essay

Learning mathematics is a structured data problem.

Mathematics is unusually well structured. Concepts depend on each other in ways you can write down, and questions test small truths: a definition, a rule, a procedure.

Treat that structure as data and two things follow.

  1. You can find where a student's trouble really starts, and
  2. you can derive the practice to fix it.
  1. Part oneKnowledge is a graph, not a list
  2. Part twoQuestions are derived from truths
  3. Part threeLearning is a loop, not a line

October 202612 minute read

Scroll to begin

Part one

Knowledge is a graph, not a list

Where should a student practice?

When a student gets stuck solving a linear congruence, the problem may be earlier: they may not know when an inverse exists, or how to find a GCD with the Euclidean algorithm. Most learning software can't see that, because it decides what comes next from a list. But if we replace the list with a map of what depends on what, we can track where a struggle really starts.

01The shape of knowing

Courses are lists

Here is a modular arithmetic unit the way we normally see it: four modules, one after another. Finish one, unlock the next.

The order is real, but it's an overview. It says nothing about the individual concepts and skills a student will need to master.

Integer Foundations90%Divisibility & Factors88%Congruences85%Modular Arithmetic82%

Four modules in the order a course teaches them. Nothing here says what is inside them, or which ideas depend on which.

Open the modules up and draw the dependencies between the concepts inside them, and the list falls apart. The four modules are still there, but now they sit among fourteen concepts, and the order between them is no longer a line.

Each concept is a node. Each arrow runs from a prerequisite to the concept that needs it. That is a knowledge graph.

Division algorithm90%Divisibility88%Primes86%Prime factorization83%GCD84%LCM81%Euclidean algorithm51%Bézout’s identity44%Congruence mod n85%Modular arithmetic82%Powers mod n78%Modular inverses38%Linear congruences20%Chinese remainders58%
  • Course module
  • Concept inside it

Tap a concept to light up what it stands on (solid) and what stands on it (dashed).

Look at where the arrows meet. Mastering a concept relies on a myriad of previous concepts, but we grade students on their overall performance: can they score high enough on an exam? It tells us very little about all the small struggles they might be having that are masked by their overall grade, and passing a test doesn't mean the knowledge will last.

A student who struggles with algebra may really be struggling with fractions, years after they were "done" with them. And they might manage to get a passing grade even when they struggle, but a passing grade isn't enough when the concepts they don't fully understand become the foundation of the next step.

Division algorithm90%Divisibility88%Primes86%Prime factorization83%GCD84%LCM81%Euclidean algorithm51%Bézout’s identity44%Congruence mod n85%Modular arithmetic82%Powers mod n78%Modular inverses38%Linear congruences20%Chinese remainders58%
  • Selected
  • Stands on
  • Needed for

Linear congruences sits where several branches meet. It stands on Bézout’s identity, Congruence mod n, Divisibility, Division algorithm, Euclidean algorithm, GCD, Modular arithmetic, Modular inverses, so a gap in any of them can surface here.

02Zooming in

Inside a concept

A course-level idea is too big to practice. Every node in the graph has smaller skills to practice, and just like the larger graph, some skills depend on another skill.

A student who loses track of the remainder in $\gcd(252, 105)$ isn't stuck on number theory as a whole. They are stuck on one unit, and the graph knows which one.

Division algorithm90%Divisibility88%Primes86%Prime factorization83%GCD84%LCM81%Euclidean algorithm51%Bézout’s identity44%Congruence mod n85%Modular arithmetic82%Powers mod n78%Modular inverses38%Linear congruences20%Chinese remainders58%

Concept breakdown

Euclidean algorithm

2 practice skills

  1. 1

    Repeat Division with Remainder

    Replace the pair with the divisor and the new remainder

  2. 2

    Stop at the Final Nonzero Remainder

    Recognize when the last nonzero remainder is the GCD

    Builds on Repeat Division with Remainder

Builds on GCD.

Euclidean algorithm is open. Select another concept to explore it.

03Diagnosis

Follow the struggle upstream

Now give the graph a student. Every answer they give updates their mastery - not just what they got wrong but how they got it wrong.

Anything under 60% is red. A student's weakest concept is easy to trace, and the obvious move is to give them more practice on it.

Division algorithm90%Divisibility88%Primes86%Prime factorization83%GCD84%LCM81%Euclidean algorithm51%Bézout’s identity44%Congruence mod n85%Modular arithmetic82%Powers mod n78%Modular inverses38%Linear congruences20%Chinese remainders58%
  • Below 60%
  • 60% or above

Simulated student 1. Each bar shows how well they know a concept.

The weakest concept is where a student notices the problem. It is rarely where the problem started. So walk backwards. From the weakest concept, follow its prerequisites, and keep going only while they are weak too. The last weak concept the walk reaches is the likely root cause.

Division algorithm90%Divisibility88%Primes86%Prime factorization83%GCD84%LCM81%Euclidean algorithm51%Bézout’s identity44%Congruence mod n85%Modular arithmetic82%Powers mod n78%Modular inverses38%Linear congruences20% · weakestChinese remainders58%
  • Below 60%
  • 60% or above

Walking back from Linear congruences…

04Mapping

Courses already know what they teach

A graph is only useful if it knows what a student has been taught. Every course is already an outline: modules, pages, review sessions. If we tie each page to the units it introduces, then at any moment the system knows what has been covered and what hasn't.

Division algorithm2 unitsDivisibilityPrimesPrime factorizationGCDLCMEuclidean algorithmBézout’s identityCongruence mod nModular arithmeticPowers mod nModular inversesLinear congruencesChinese remainders

Division & Remainders introduces The Division Algorithm (Division algorithm), Interpreting Remainders (Division algorithm).

Pick a page. The graph lights up the concepts it teaches. Each page is tied to specific units, and that link is what connects a course to the graph.

That link, from page to unit, is what turns a course from a reading order into something the system can reason about.

Part two

Questions are derived from truths

What should they practice with?

Knowing where to practice only helps if there is something to practice with, and a lot of it. Hand-written question banks run out, and students who practice heavily can start memorizing them.

The thing worth writing down isn't the question. It's what the question tests: a unit of truth.

Write a truth once, mark where it can go wrong, and the questions follow: blanks, choices, true or false, worked steps. Every wrong option is a specific misreading of that truth, so a wrong answer says which one.

Where a truth comes from is a separate question from what kind it is. Definitions are stipulated; rules and procedures can be given or proved. The formula $\operatorname{lcm}(a,b) = ab / \gcd(a,b)$ follows from prime factorization, then is used like any other rule.

And one truth can be asked about in more than one way. “What does $a \equiv b \pmod n$ mean?” asks a student to recall it. “Find $(17 \cdot 8) \bmod 5$” asks them to apply modular arithmetic. Recall and application are different skills, and one truth yields both kinds of question.

  • Rules

    Multiplication is commutative: $ab = ba$. If $a \equiv b$ and $c \equiv d \pmod n$, then $a+c \equiv b+d \pmod n$.

    Includes general properties and conditional rules; ask when and how each applies.

  • Definitions

    An integer $a$ divides $b$ if $b = ak$ for some integer $k$.

    Fix what a word means, so each part can be blanked or swapped.

  • Procedures

    Find the GCD, use it to get the LCM, then add that repeat interval to the start time.

    Ordered steps, so each step can be asked on its own.

05Truth · A rule

One rule, endless questions

A rule

Demo · paused
An integer leaves the same remainder as its digit sum when divided by 3, so it is divisible by 3 exactly when its digit sum is.

Instance 1 of 6 · parameters hundreds = 6, tens = 0, units = 5

What is the remainder when $605$ is divided by $3$?

Choose an answer. Every wrong choice is a mistake students commonly make.

A template fixes the rule and varies the numbers. The divisibility test for three says an integer leaves the same remainder as its digit sum, so it is divisible by three exactly when its digit sum is. Every new integer is a fresh question with a known answer.

The wrong answers matter as much as the right one. Each distractor is a specific mistake: checking only the last digit instead of the digit sum, adding the digits and never reducing the sum, using the test for nine, or reporting the quotient instead of the remainder. When a student picks one, the choice says which mistake they made.

For divisibility, the traps expose specific confusions between digits, sums, and remainders. Switch to products modulo $n$ and the mistakes change. Same idea, different mistakes.

06Truth · A definition

Every definition is a quiz waiting to happen

A definition

Demo · paused

Study item 1 of 17

Choose a study item

Fill in the blank

An integer $a$ divides $b$ if $b = \underline{\qquad}$ for some integer $k$

17 study items from one definition: 9 questions and 8 flashcards, interleaved. Blanks, choices and false versions are built from its marked regions.

A rule states a relationship that holds under given conditions. A definition fixes what a word means, and every course is full of them. Take one: “$a$ divides $b$ if $b=ak$ for some integer $k$.” There is nothing to vary, but there is still plenty to ask.

Mark the parts that carry the meaning and that one definition turns into more than a dozen questions and flashcards.

An integer $a$divides an integer $b$ if b = $ak$ for some integer $k$

2 marked regions

Multiple choice

2

Fill in the blank

2

True / false

5

Flashcards

8

9 questions and 8 flashcards from one definition.

Each region gives a fill-in-the-blank and a multiple-choice question. Reword a region equivalently and you get a true statement; swap in a distractor and you get a false one, which a student has to catch. And many questions can also be represented as flashcards - same content, different format.

One definition, more than a dozen ways to check that it stuck.

07Truth · Rules in a proof

A proof is a chain of truths

Rules, chained in a proof

Demo · paused

A divisor divides the product

Prove that if $a$ divides $b$, then $a$ divides $bc$ for every integer $c$.
Step 1 of 5
    Since $a$ divides $b$, $b = ak$ for some integer $k$

    Which reason justifies this step?

    A proof is a list of claims, and every claim rests on a truth. The closure of the integers under multiplication is a rule a proof can rely on. Knowing which rule applies is often the whole skill. Make the reasons explicit, and a student can check a proof one link at a time, and the system can ask about any single link.

    Each step makes one claim for one reason, on purpose, and the panel asks for that reason. The wrong justifications on offer are the rules students actually reach for: closure under addition instead of multiplication, or commutativity instead of associativity.

    08Truth · A procedure

    A procedure, one step at a time

    A procedure

    Demo · paused

    When the Signals Meet Again

    Two signals flash together at 12:55. One repeats every 6 minutes and the other every 10 minutes.

    Step 1 of 4
    1. (a)

      Find the greatest common divisor of the two intervals.

      Work: $\gcd(6, 10) = 2$

      Answer: 2 minutes

      definitionA common divisor divides both intervals

    A procedure is a fixed order of steps, and each step leans on a truth of its own. Take two signals that flash together, then repeat every few minutes. When do they next flash together?

    Written out, the answer is four steps. Each step is a question on its own, with its own rule attached. A student who gives the wrong time might have slipped in any of the four steps. Asked as one question, those look the same. Asked step by step, they don't.

    Part three

    Learning is a loop, not a line

    What happens when you have both?

    Each idea is useful alone. A graph without generated questions can point a student at divisibility, but someone still has to write the practice. A generator without a graph can produce endless questions, but it can't decide which ones a student needs.

    09Try it

    Close the loop

    Start the simulation and watch the loop run: find the node to study, answer a question, and see the graph update based on your answer.

    1. Find the target

    2. Answer a question

    3. Interpret the answer

    4. Update and retrace

    The graph

    Start the simulation to find the first practice target.

    The graph is ready.

    The graph picks a target, you answer, and the map updates after every answer.

    The questions

    Each round lights up the part doing the work: the graph finds a target, a question tests it, your answer is read for its mistake, and the graph updates.

    A right answer raises mastery. A wrong answer lowers it a little, and its distractor points to the specific mistake. The graph uses each answer to choose the next question.

    10Retainium

    Where this goes

    None of these ideas is new on its own. Prerequisite graphs have powered adaptive platforms for decades, question templates have generated homework problems for just as long, and good teachers have always written wrong answers that reveal a misconception. What's been missing is putting them in one loop, built from the course an instructor already teaches.

    Retainium already helps people write and organize study material, and Prep turns notes into cheat sheets and quizzes. Both ideas would sit underneath that work: we build the graph, courses and study materials are linked to it, and the generators turn it into practice.

    You can try what exists today in Prep or the educator workspace.

    Teaching a course and want to test this with real students?

    Talk to us