Teaching Assistant
Principles of Digital Forensics (CSD1001).
I’m a PhD student in the Security and Privacy Group at the School of Informatics, University of Edinburgh, where I’m fortunate to be supervised by Damiano Abram and Rahul Santhanam. Previously, I was a predoctoral researcher at the Trust Lab, IIT Bombay, and a research assistant at CISPA. I completed my integrated Master’s degree at VIT Bhopal University, where I worked on my thesis under the supervision of Matteo Campanelli. I’m broadly interested in theoretical computer science, mainly cryptography, computational complexity, and pseudorandomness.
No publications match your search.
@misc{EPRINT:ADDR26,
author = {Damiano Abram and Agni Datta and Archisman Dutta and Lawrence Roy},
howpublished = {Cryptology {ePrint} Archive, Paper 2026/2367},
title = {Simple Extremely Lossy Functions from Small-Exponent Hashing},
url = {https://eprint.iacr.org/2026/2367},
year = {2026},
}
@misc{EPRINT:BenDatYog26,
author = {Shany Ben-David and Agni Datta and Eylon Yogev},
howpublished = {Cryptology {ePrint} Archive, Paper 2026/2227},
title = {A {Fiat}-{Shamir} Transformation for Private-Coin Protocols},
url = {https://eprint.iacr.org/2026/2227},
year = {2026},
}
@misc{EPRINT:CamDat24,
author = {Matteo Campanelli and Agni Datta},
howpublished = {Cryptology {ePrint} Archive, Paper 2024/1645},
title = {{Fiat}-{Shamir} Goes Rational},
url = {https://eprint.iacr.org/2024/1645},
year = {2024},
}
Principles of Digital Forensics (CSD1001).
I sometimes write notes as I work through results and techniques, both old and new, that catch my interest, explaining their proofs in the way that feels most natural to me. I share some of my more carefully revised notes, hoping that other researchers will find them useful. I occasionally leave out formal details to make the ideas easier to follow, and as always, any errors are my own.
A short note explaining how the simplex method moves between vertices of a feasible polytope in search of an optimal linear objective. The note is meant to make the geometric picture behind pivoting explicit before turning to the algebraic form of the algorithm. Written during my undergraduate studies.
A short introduction to the Karush-Kuhn-Tucker conditions for constrained optimization. The note explains how stationarity, feasibility, and complementary slackness combine to certify optimality under the usual regularity assumptions. Written during my undergraduate studies.
A note on how Gomory cuts strengthen a linear relaxation by adding inequalities that exclude a fractional solution while preserving all integral feasible points. The goal is to show why cutting planes are a natural bridge between linear programming and integer programming. Written during my undergraduate studies.
An expository note on the Goldwasser-Sipser protocol and the set-size lower-bound problem that it captures. The note focuses on the probabilistic idea behind the protocol and how hashing is used to turn a counting gap into an interactive proof.
A short note deriving the Schrödinger equation from the basic correspondence between energy, momentum, and wave behavior. The emphasis is on the meaning of the equation and the role played by the wavefunction, rather than on physical formalism alone. Written during my undergraduate studies.
A list of books, courses, and links I return to. Useful if you are starting out in TCS or looking for a reference.
The standard graduate text.
Complements Arora-Barak with a more conceptual treatment.
Older but still a solid reference for NP-completeness and space complexity.
Broad view of TCS and its connections to mathematics.
Connects bounded arithmetic and propositional proof complexity via two-sorted logic.
The standard undergraduate introduction to automata, computability, and complexity.
The classical reference on formal languages and automata.
The standard reference for classical computability theory and degree structures.
Survey of average-case complexity and its connections to cryptography and derandomization.
The standard reference on Kolmogorov complexity and algorithmic information theory.
Logical characterizations of complexity classes via finite model theory.
The main reference for proof complexity.
More advanced; connects model theory and forcing to proof complexity.
Good coverage of circuit complexity and space complexity at the graduate level.
Thorough treatment of circuit complexity and lower bounds.
The standard reference for Fourier analysis on the Boolean cube.
Covers machine models, circuits, and complexity from first principles.
The classical text on randomized algorithms.
More accessible than Motwani-Raghavan; good first text on randomized algorithms.
Comprehensive treatment of pseudorandomness, expanders, and derandomization.
Monograph on pairwise independence and its applications to derandomization.
Standard graduate text on approximation algorithms.
Collected chapters on approximation and inapproximability.
Modern graduate text on approximation algorithms.
The standard algorithms reference.
Game theory and mechanism design from a TCS perspective.
Modern treatment of communication complexity.
The original graduate text on communication complexity; still widely used.
Rigorous and widely used graduate introduction.
Thorough theoretical treatment.
Modern and comprehensive; covers both theory and practice.
Concise graduate-level lecture notes with a rigorous definitional style.
Rigorous graduate introduction to algebraic coding theory.
Modern treatment oriented toward TCS; covers list decoding and connections to complexity.
The definitive reference on the probabilistic method.
Combinatorial tools used throughout TCS.
Mathematical foundations for computer science.
The standard graduate reference on graph theory.
The standard survey on expander graphs.
Standard introductory text on first-order logic and model theory.
Rigorous introduction to axiomatic set theory.
Classical graduate text; strong on proof theory and recursion theory.
Standard graduate introduction to model theory; useful for finite model theory connections.
The standard reference for finite model theory; closely connected to descriptive complexity.
The standard textbook.
More informal and broader in scope; good complement to Nielsen-Chuang.
Rigorous treatment of quantum Shannon theory; second edition freely available.
Graduate-level notes on complexity and foundations.
Notes on complexity, cryptography, and foundations.
Graduate complexity course notes; broad and philosophically oriented.
Concise notes covering the standard complexity curriculum.
Broad undergraduate introduction to TCS; accessible and wide-ranging.
Mathematical tools for TCS.
Full lecture series to accompany the book.
Graduate course notes on algebraic and combinatorial coding theory.
Lecture notes on algebraic algorithms: FFT, polynomial identity testing, and coding.
Early version of what became the Guruswami-Rudra-Sudan text; freely available.
Lecture notes on pseudorandomness, extractors, and derandomization.
A widely used online introduction to modern cryptography.
Covers techniques and results in program obfuscation.
Cryptography in the quantum setting.
Lecture notes on quantum information theory.
Lecture and seminar series covering spectral graph theory, high-dimensional expansion, constructions, and applications to codes and PCPs.
A graduate course covering combinatorial, topological, and group-theoretic notions of high-dimensional expansion, together with applications to coding and complexity.
Preprints in computational complexity.
General preprint server for TCS and cryptography.
Preprints in cryptography.
Q&A for TCS researchers and students.
Q&A for cryptography.
Catalogue of complexity classes.
Bibliography database for CS.
Diamond open-access TCS journal.
Open-access conference proceedings in informatics.
Scott Aaronson on quantum computing and complexity theory.
Dick Lipton and Ken Regan on complexity theory.
Boaz Barak on complexity, cryptography, and ML theory.
Lance Fortnow and Bill Gasarch on complexity theory.
Luca Trevisan on complexity, pseudorandomness, and combinatorics.
Goldreich's curated reading list.
Aggregates posts from TCS blogs.
Online seminar series with recorded talks.
Recorded workshops and talks from the Simons Institute.
ACM Special Interest Group on Algorithms and Computation Theory.
International Association for Cryptologic Research.