Disclosure: I work on GTU Hero. We count how often topics repeat in Gujarat Technological University exam papers. This note is about one counting rule that looks trivial and still breaks dashboards when you get it wrong.
The rule
A topic counts once per paper, even if that paper asks it twice (compulsory + OR, or two different sub-parts).
Why: students care about "will this idea show up in my paper?", not "how many times can the setter stamp the same idea". If Green's theorem is Q.1(c) and also hides inside an OR elsewhere, that is still one paper that tested Green's.
For Mathematics-2 (3110015) that rule turned into a clean table across 9 official papers (Summer 2022 to Summer 2026): Green's, Fourier integral, Laplace IVP, variation of parameters, undetermined coefficients, Euler-Cauchy and power series all landed at 9/9.
A tiny counter
from collections import defaultdict
def count_topics(papers):
"""papers: list of (paper_id, list_of_topic_tags_including_ORs)"""
per_paper = defaultdict(set)
for paper_id, tags in papers:
for t in tags:
per_paper[paper_id].add(t) # set = once per paper
totals = defaultdict(int)
for tags in per_paper.values():
for t in tags:
totals[t] += 1
n = len(per_paper)
return {t: (c, n) for t, c in sorted(totals.items(), key=lambda x: -x[1])}
# demo shaped like the Maths 2 guide
demo = [
("S2024", ["green", "laplace_ivp", "green"]), # green twice -> once
("W2025", ["green", "fourier_integral", "vop"]),
("S2026", ["green", "laplace_ivp", "power_series"]),
]
for topic, (c, n) in count_topics(demo).items():
print(f"{topic}: {c}/{n}")
Run that and green prints 3/3, not 4/3. The duplicate tag inside S2024 is ignored on purpose.
What we also had to watch
- Subject code, not subject name. Maths 2 is 3110015 on the older scheme and BE02000011 / BE02R00011 on the newer one. Mixing them inflates or dilutes counts.
- OR options still count. Students can pick the OR side, so the topic is "in the paper".
- Say when text extraction failed. Under-counts should be labelled, not hidden.
None of this is clever. It is the difference between "Green's came in 9 of 9 papers" and a number nobody can defend.
The published Maths 2 table (after these checks) is on GTU Hero.
Top comments (0)