← The Invariant;

Subhajit Gorai

B.Tech Information Technology · IIEST Shibpur · 2023–2027

Final year undergraduate interested in the structural underpinnings of computation, where algebra and algorithms coincide, where a segment tree is a monoid, and where the assumptions hiding inside a physical model can be made precise. Competitive programmer. This blog is where those observations go when they are too long for a margin note.

Currently

Research Intern · Chennai Mathematical Institute · under Prof. Pranabendu Misra — streaming, deep learning, large language models
AEH Intern · Accenture · Oracle Cloud Infrastructure
Undergraduate Research Fellow · IIT(ISM) Dhanbad, NM-ICPS · CPS architecture for predictive mine safety, INR 1L grant
Web Development Lead · CODEIIEST, IIEST Shibpur

Selected Work

Computable PoetryDec 2025 – presentlivegithub

Formal Grammars · Graph Theory · Constraint Satisfaction

The question was whether Bangla prosody — mātrā counts, rhyme classes, semantic coherence across lines — could be expressed as a proper constraint satisfaction problem and solved without any ML. Two-level CFG (semantic grammar over POS grammar), k-hop Dijkstra on a layered semantic graph for cross-line coherence, inverted index over a tagged lexicon scraped from 300+ classical poems. It produces metrically correct verse. Whether what it produces is poetry is a separate question.

OpenCanvasDec 2024 – May 2026livegithub

MERN

ArXiv is too stiff, Medium is too loose, and there is nowhere to publish a half formed research idea to people who will actually understand it. OpenCanvas sits between a preprint and a tweet thread, a place for early stage work that is ideologically valuable but not yet polished. It also aggregates metadata from 22 institutions so you can browse papers without drowning in Google Scholar. Built over 1.5 years, 26,000+ lines. Stress-tested to 17,007 RPS on a 1.4M document database.

Competitive Programming

Codeforces Expert · peak rating 2029.

CodeChef 5-star · max rating 2026 · Global Rank 31, Starters 239 (Div. 2).

+
+
+
+