The shortest route from a new account to a graded Mathleagues submission.
1 · create an account
Open the welcome page and choose sign in or sign up. Authentication is handled by Firebase; your public profile starts with an Elo rating of 1200.
2 · choose a problem
From the dashboard, use the random-problem action or open the problem library. The problem carries its own rating and tells the client which solving mode and response shape to render.
the three modes
answer-only gives one final answer. guided breaks a solution into marked steps. free-response accepts a full written solution.
3 · submit and review
The timer records solve duration. On submission, the server grades the response, stores the result, and returns feedback plus the solution when grading is complete. Deterministic and eligible non-flagged AI grades can update Elo. Flagged or manual-review work is held with no Elo impact; a human reviewer later finalizes the grade. Finalized grades can be appealed from submission history. Read reviews and appeals for the complete workflow.
the client-facing flow
open problem
→ render sanitized prompt and response UI
→ submit response to the server
→ receive marks, feedback, solution, and Elo result
A short first session with the parts of the product that matter most.
1 · open the dashboard
Sign in at /welcome and continue to your dashboard.
2 · start a problem
Choose a random problem or open one from the library.
3 · read the response shape
Check whether the problem expects a choice, number, expression, or written work.
4 · show the right work
Guided problems expose ordered steps; free-response problems use a mixed prose and structured-math editor.
5 · submit once ready
Review marks, feedback, the solution, and any eligible Elo change.
remember
A partial score is still a real score. For guided and rubric-based work, the fraction of marks earned becomes the actual Elo score input rather than a simple win/loss flag.
problems
problem types
Schema v2 keeps the solving experience, the student input, and the server-side evaluation strategy separate.
mode
student sees
response kinds
grading
answer-only
One final answer.
Multiple choice, numeric, or expression.
Deterministic.
guided
Ordered steps with marks.
Any response kind per step.
Per-step strategy; partial credit.
free-response
Full written solution.
Mixed prose and structured math in MathMarkdown.
AI rubric or manual review.
three independent layers
mode selects the solving flow. response.kind selects the input component.grading.strategy selects how the server evaluates it. They are related, but they are not interchangeable fields.
Every question has one home in the subject tree, plus only the extra concepts and facets that it genuinely assesses.
why this exists
The taxonomy keeps the library browsable and makes future topic progress meaningful. It is a Mathleagues learning map, not a claim that there is one perfect way to organize all of mathematics.
one path, a few facets
level
what it means
example
subject
A broad branch of mathematics.
Calculus
unit
A coherent group within a subject.
Integral Calculus
topic
A specific leaf learning objective.
Area Between Curves
tag
How the question is approached or presented.
tag.task.proof
Subjects and units are parents, not labels that authors attach directly to a question. A question chooses one primary topic and may choose additional assessed topics. The parent subject and unit are derived from those topic IDs.
the stored contract
Questions store stable IDs rather than labels. The catalog supplies the labels you see in the library, solve view, and future topic tree.
The primary topic is the question's main intended learning objective. It determines where the question appears in the browse tree. Assessed topics are additional concepts that the question materially tests; the primary topic is always included in that list.
Do not list every prerequisite. A calculus question that uses ordinary arithmetic does not automatically assess arithmetic. This keeps one solved problem from lighting up half the tree.
progress is exploration, not instant mastery
The topic tree can show unavailable, unseen, attempted, explored, and coverage states. One correct solution is evidence that a learner explored a topic, not a complete mastery claim. Multi-topic coverage counts unique problem IDs.
tags are controlled filters
Tags are deliberately small and orthogonal to the subject tree. They can describe a task, a central technique, a meaningful representation, or a substantive context.
task · prooftechnique · factorization
A tag is not a second topic. The question mode, source, and problem Elo already have their own fields, so tags such as mode.guided, source.contest, or elo.hard are not used. Representation and context are defined facets, but v1 does not yet contain active tags in those facets.
why the labels stay consistent
IDs are immutable; labels are curated display text. Labels and aliases are compared after Unicode normalization, trimming, whitespace collapsing, and locale-stable lowercasing. That means calculus andCalculus resolve to one catalog entry rather than becoming two filters.
Authors select from the catalog instead of typing free-form topics. If no existing topic fits, the question goes through taxonomy review so a new node can be defined once and reused.
when no topic fits
In a saved question draft, choose can't find a suitable topic? to propose a governed path. Reuse an existing subject and unit where possible, or propose the missing unit and subject as needed. Every request must end in a proposed topic and include a definition, rationale, examples, and non-examples. The builder shows normalized label and alias matches before the request can be saved.
supported request paths
existing subject → existing unit → proposed topic
existing subject → proposed unit → proposed topic
proposed subject → proposed unit → proposed topic
A new unsaved question must be saved first, so the request always has a real problem ID. Proposed labels remain in the request record and never become placeholder IDs in the question classification.
request state
what it means
taxonomy request draft
The author may revise or withdraw it.
awaiting taxonomy review
The complete question is in review, but it has no canonical primary topic.
changes requested
Reviewer feedback returned the request and question to the author.
mapped to an existing topic
A reviewer atomically assigned a real active catalog topic.
accepted for catalog change
The proposal is valid, but no active topic exists yet.
rejected or withdrawn
The audit remains; revision, replacement, or canonical selection is explicit.
accepted is not active
A catalog-accepted request does not create a selectable topic and cannot make the question publishable. After a reviewed source-code catalog change is deployed, a reviewer must map the request to that real active topic. Publication is a separate strict review action.
Authors see the request state and user-visible history in the editor, preview, and question list. Reviewers use the taxonomy request queue to inspect the full question, proposed path, evidence, similar catalog entries, and history. Mapping preserves unrelated question content and always includes the primary topic among assessed topics.
a worked example
A question asking for the area enclosed by a parabola and a line belongs underCalculus → Integral Calculus → Area Between Curves, with Definite Integrals as an additional assessed topic when the question materially tests evaluation of the integral. The old strings calculus, integration, and area are not three peer tags.
for contributors
Choose the most specific existing leaf, include only genuinely assessed additional topics, and keep tags focused. Reviewers can request a taxonomy change when no existing node is appropriate; they do not create one-off labels on individual questions.
problems · answer-only
answer-only
One response, one deterministic grading result.
response kinds
response.kind
use it for
typical strategy
multiple-choice
A/B/C/D/E selection.
exact
numeric
Integers or decimals, optionally within a tolerance.
numeric
expression
Algebraic or symbolic answers.
equivalence
what the server checks
The public response specification describes the input shape. Correct choices and values live ingrading on the server and are removed before a problem is sent to the client.
The client receives the prompt and public response shape. The server reads the full grading spec, evaluates the submission, and only then returns correct-answer display data.
problems · guided
M/A/R checkpoints
Guided problems break a worked solution into ordered steps. Each step can award method, answer, or reasoning marks.
the three marks
mark
name
awarded for
M
Method
Using the correct technique or approach.
A
Answer
Getting the correct value at the step.
R
Reasoning
Providing valid justification for a non-obvious step.
step dependencies
Each step has its own prompt, response, grading strategy, mark type, and mark count. OptionaldependsOn and allowFollowThrough fields describe how a later step can build on earlier work.
Full solutions are graded against an explicit rubric rather than a single scalar answer.
when to use it
Free-response problems are intended for proofs, open-ended derivations, and work that does not fit a fixed sequence of input fields. The usual strategy is rubric-ai; manual is used for work that needs a human decision. Reviewers finalize flagged work through the separate submission-review workflow.
rubric items
A rubric item describes what the grader should assess, how many marks it carries, its M/A/R type, the criteria, and evidence to look for. Optional examples and common errors help calibrate grading.
ai-graded means the AI result was returned without a review flag.
flagged means the result needs human review and does not apply Elo yet.
manually-graded means an authorized reviewer finalized or revised the grade.
Appeals use a separate pending, upheld, or revised state without erasing the underlying final grading status.
sanitized by default
Rubric criteria, grading guidance, correct values, and solutions stay server-side until the grading result is ready to return. Learn how a solver can track and challenge a decision in reviews and appeals.
grading · human decisions
reviews and appeals
Submission review resolves solver work that automated grading cannot safely finalize. A grade appeal asks a reviewer to reconsider a finalized result. Question review is a separate publication workflow.
when a submission is flagged
A solution may be flagged because the problem requires manual grading, the AI grader reported low confidence or ambiguity, the work was unreadable, or the response needs judgment that automation should not make. While you wait, submission history shows under review, the provisional marks and feedback, and no Elo change.
An authorized reviewer sees the problem’s private marking material and your submitted work. When the reviewer finalizes the grade, submission history shows the final marks, breakdown, feedback, Elo effect, and a user-visible audit entry.
submission review lifecycle
flagged or manual grading
→ reviewer checks the full marking scheme and solver work
→ final human grade and feedback
→ Elo and solved status applied exactly once
appealing a finalized grade
Open profile → submissions, choose a finalized submission, and use appeal this grade. A submission still waiting for its initial review cannot be appealed, and only the submission owner can file the appeal. There is no filing deadline in the current policy.
Explain the specific mark, rubric item, calculation, or feedback you believe should be reconsidered. “I disagree” is not enough context; point to the mathematical work and the decision you want the reviewer to inspect. Submission history shows appeal pending until a reviewer decides.
decision
what it means
rating effect
upheld
The original final grade remains in force.
No additional Elo or solved-count change.
revised
A reviewer replaces the final grade, breakdown, and feedback.
Only the difference from the previously applied result is reconciled.
how delayed decisions affect Elo
A flagged submission starts with zero applied rating effect. Its submission-time user rating, problem rating, re-attempt status, maximum marks, and formula version are stored. When the human grade becomes final, Mathleagues calculates the target effect from that original context and applies it to the current ratings as a delayed adjustment.
If an appeal revises a result, the application does not replay the full Elo change. It applies:
Current rating bounds still apply, so the audit history records both the target difference and the effective adjustment after clamping. See the Elo system for the underlying formula.
private review material
Solvers see the decision, user-visible explanation, grades, and rating summary. Internal reviewer notes, correct-answer guidance, private marking criteria, other users’ work, and raw AI provider data remain private.
question review is different
Question review publishes contributed problem drafts; it does not grade solver submissions. A contributor creates a draft, submits it for publication review, receives requested changes when needed, edits and resubmits, and sees the question’s publication status. Reviewers use thequestion reviews queue for that workflow and the submission reviews queue for solver work and appeals.
where to go
Solvers manage grades from profile → submissions. Contributors manage drafts from my questions. Reviewer access is assigned through the trusted staff workflow.
★ interactive · walkthrough
grading walkthrough
Advance through a small guided example and see how each available mark is awarded.
guided example · integration by parts
guided
step 1
MA
Let I = ∫ x·eˣ dx. Apply integration by parts with u = x and dv = eˣ dx.
The technique is correct, so the method mark is awarded. No final value has been found yet.
step 2
A
Then du = dx and v = eˣ, so I = x·eˣ − ∫ eˣ dx.
step 3
M
∫ eˣ dx = eˣ, with the constant carried into the final expression.
step 4
AR
Therefore I = x·eˣ − eˣ + C = eˣ(x − 1) + C.
live score
1/6
17% of available marks
marks earned
M
legend
M method — correct technique
A answer — correct value
R reasoning — valid justification
★ interactive · playground
solve a problem
A local answer-only sandbox. Click begin to start the timer.
sandbox-001answer-onlyproblem Elo 1480
00:00
Find the smallest positive integer n such that n² + 1 is divisible by 41.
sandbox only
This page uses the production Elo calculation locally, but it never writes a submission or changes your real profile. See the Elo docs for the formula.
input
MathMarkdown and math input
Write sentences normally and insert structured math when you need it. The default editor manages source delimiters for you.
try the visual editor
1
loading structured math editor…
2
3
display math
loading structured math editor…
rendered preview
Let f(x)=x2. The area is:
∫01x2dx=31
three kinds of text
kind
where it appears
what you do
MathMarkdown
questions, steps, solutions, and written work
Write prose and insert math nodes visually.
Raw expression
expression answers and grading expressions
Use one structured math field; no delimiters.
Plain text
labels, titles, IDs, names, and source metadata
Type ordinary text; taxonomy topics and tags are controlled catalog selections.
visual first, source second
Use insert inline math inside a sentence and insert display math between paragraphs. Inline math stays in the prose row while display math gets its own full-width row. Fractions, roots, powers, subscripts, matrices, sums, and integrals are spatial structures. Arrow keys and Tab move through their slots. On touch devices, focusing a math field opens MathLive's math keyboard.
Source mode is optional and intended for experts. Canonical inline math uses $...$; display delimiters use $$ on separate lines. A literal dollar sign is \$. Code spans and fenced code treat dollars literally.
Mathleagues format
math-markdown-v1 is a Mathleagues-specific, versioned dialect: a restricted CommonMark subset plus KaTeX-compatible math. It is not a general Markdown, LaTeX, or external published standard.
safe and accessible
Raw HTML, MDX, Markdown images, unsafe links, macros, packages, TikZ, and external-resource commands are rejected. Read-only math includes MathML for assistive technology; editor controls have screen-reader labels and keyboard access.
source example
canonical MathMarkdown source
Use **substitution** in $x^2+1$.
$$
\int_0^1 x^2\,dx=\frac{1}{3}
$$
The fee is \$5.
★ interactive · cheatsheet
structured math cheatsheet
Try the same delimiter-free expression field used for expression answers and correct-answer grading values.
loading structured math editor…
21
common structures
structure
renders as
behavior
fraction
ba
numerator and denominator slots
square root
x
cursor enters the radicand
power
xn
structured exponent
subscript
an
structured subscript
sum
∑i=1ni
lower and upper limits
integral
∫01xdx
bounded integral
matrix
(1001)
two-dimensional cells
stored value
This expression field stores raw KaTeX-compatible TeX without $ delimiters. Mixed prose fields serialize math nodes with delimiters automatically.
rating
Elo system
Mathleagues treats a submission as a match between a user and a problem. Both ratings react to the result.
the formula
expected score
E=1+10(Rp−R)/4001
user update
ΔR=round(K(S−E))
R is the user rating, R_p is the problem rating, and S is marks awarded divided by marks available.
user K-factors
user Elo
K
purpose
below 1400
32
Faster calibration for developing ratings.
1400–2000
20
Standard competitive volatility.
above 2000
12
More stable expert ratings.
partial credit and re-attempts
A score of 4/6 is S = 0.667, not a binary loss. When a user submits a problem they have attempted before, their K-factor is halved. The problem uses a fixed K-factor of 10 and updates from 1 − S.
worked example
user Elo = 1200
problem Elo = 1333
score = 4 / 6 = 0.667
K = 32
user delta ≈ +11
problem delta ≈ -4
when Elo applies
Deterministic auto-graded results and non-flagged ai-graded results can update both ratings. Flagged work initially receives zero Elo impact. A human decision later applies the target effect from the stored submission-time context. A revised appeal applies only the difference between the revised target and the previously applied target. See reviews and appeals.
rating bounds
User Elo is clamped between 100 and 3000. New users start at 1200.
★ interactive · simulator
Elo simulator
Set a starting user rating, a problem rating, a success rate, and a number of rounds. The simulation uses the same pure Elo functions as production.
parameters
initial round
expected score0.240
user K32
on success+24
on failure-8
rating trace · 50 rounds
30 success · 20 failure
final user
1400
user delta
+200
final problem
1344
reading the chart
The gold line is the user rating and the muted line is the problem rating. This simulation changes both ratings after every round; real submissions use the same formulas but are not deterministic by success-rate pattern.
reference
keyboard shortcuts
Keyboard behavior available in the current visual editors.
app and docs navigation
Ctrl / ⌘ + B
Toggle the current sidebar.
/ or Ctrl / ⌘ + K
Focus documentation search.
A–E
Select a matching multiple-choice option while solving.
structured math
sqrt
Create a radical and place the cursor inside.
pi / theta
Insert the corresponding mathematical symbol.
Tab / Shift+Tab
Move through structure slots and into neighboring prose when no slot remains.
← / →
Move spatially into and out of fractions, roots, scripts, and neighboring content.
Backspace
Delete according to the current mathematical structure.
mixed prose
Ctrl / ⌘ + M
Insert inline math at the current prose caret.
Ctrl / ⌘ + Shift + M
Insert display math at the current prose caret.
← / →
Move seamlessly between a prose boundary and the neighboring math field.
Backspace / Delete
Cross the neighboring prose/math boundary in the deletion direction. Backspace in an empty selected math field removes that math node.
Enter
Create a clearly separated prose line; Backspace at the start of a line joins it to the previous line.
The same actions are available as labeled toolbar buttons. Source mode remains optional for authors who want to edit canonical delimiters directly.
The editor stores prose and x2 as one versioned source string.
reference
glossary
The terms used across the docs and the solving interface, in plain language.
answer-only
A problem with one final response, graded deterministically.
guided
A problem split into ordered steps, each with its own response and marks.
free-response
A problem where the student writes a complete solution, usually against a rubric.
response.kind
The input shape rendered for a student: multiple-choice, numeric, expression, or text.
grading.strategy
The server-side evaluation method: exact, numeric, equivalence, rubric-ai, or manual.
M / A / R
Method, Answer, and Reasoning marks used for guided steps and rubric items.
Elo
A rating that estimates a user or problem’s current competitive level.
re-attempt
A later submission for the same problem; the user K-factor is halved.
flagged
A grading result held for human review, with Elo deferred.
submission review
Human grading of flagged or manual solver work. This is separate from question publication review.
grade appeal
A solver’s request for a reviewer to reconsider a finalized grade.
upheld
An appeal decision that leaves the existing final grade unchanged.
revised
An appeal decision that replaces the final grade and reconciles only the rating difference.
sanitized problem
The public problem payload with correct answers, grading specs, and solutions removed.
source of truth
The public docs describe the current schema and behavior. Implementation details may change as the product evolves. See reviews and appeals for the human-grading lifecycle.