Publications

Trustworthy and Deployable Machine Learning

  • Stateful detection of model extraction attacks (PDF)

Soham Pal, Yash Gupta, Aditya Kanade, Shirish Shevade

VarDetect

  • ActiveThief: Model extraction using active learning and unannotated public data (PDF, Supplement)

Soham Pal, Yash Gupta, Aditya Shukla, Aditya Kanade, Shirish Shevade, Vinod Ganapathy

AAAI Conference on Artificial Intelligence (AAAI), 2020

ActiveThief

  • Scalable neural learning for verifiable consistency with temporal specifications (Draft)

Sumanth Dathathri, Johannes Welbl, Krishnamurthy Dj Dvijotham, Ramana Kumar, Aditya Kanade, Jonathan Uesato, Sven Gowal, Po-Sen Huang, Pushmeet Kohli

September 2019

Machine Learning for Software Engineering

  • Learning and evaluating contextual embedding of source code (PDF, Supplement)

Aditya Kanade, Petros Maniatis, Gogul Balakrishnan, Kensen Shi

International Conference on Machine Learning (ICML), 2020

CuBERT

ETHPy150Open dataset

  • Neural attribution for semantic bug-localization in student programs (PDF, Supplement)

Rahul Gupta, Aditya Kanade, Shirish Shevade

Neural Information Processing Systems (NeurIPS), 2019

NBL

  • Neural program repair by jointly learning to localize and repair (PDF)

Marko Vasic, Aditya Kanade, Petros Maniatis, David Bieber, Rishabh Singh

International Conference on Learning Representations (ICLR), 2019

  • Deep reinforcement learning for syntactic error repair in student programs (PDF)

Rahul Gupta, Aditya Kanade, Shirish Shevade

AAAI Conference on Artificial Intelligence (AAAI), 2019

RLAssist

  • Greybox fuzzing as a contextual bandits problem (PDF)

Ketan Patil, Aditya Kanade

Technical report, June 2018.

Bandit AFL

Ishan Rastogi, Aditya Kanade, Shirish Shevade

Artificial Intelligence in Education (AIED), 2018.

  • DeepFix: Fixing common C language errors by deep learning (PDF)

Rahul Gupta, Soham Pal, Aditya Kanade, Shirish Shevade

AAAI Conference on Artificial Intelligence (AAAI), 2017.

DeepFix

  • Semi-supervised verified feedback generation (PDF)

Shalini Kaleeswaran, Anirudh Santhiar, Aditya Kanade, Sumit Gulwani

Foundations of Software Engineering (FSE), 2016.

CoderAssist

  • Mining unit tests for discovery and migration of math APIs (PDF)

Anirudh Santhiar, Omesh Pandita, Aditya Kanade

ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 24(1), 2014.

MathFinder

  • MintHint: Automated synthesis of repair hints (PDF)

Shalini Kaleeswaran, Varun Tulsian, Aditya Kanade, Alessandro Orso

International Conference on Software Engineering (ICSE), 2014.

MintHint, Teaser video

  • MUX: Algorithm selection for software model checkers (PDF)

Varun Tulsian, Aditya Kanade, Rahul Kumar, Akash Lal, Aditya Nori

Mining Software Repositories (MSR), 2014.

  • Discovering math APIs by mining unit tests (PDF)

Anirudh Santhiar, Omesh Pandita, Aditya Kanade

Fundamental Approaches to Software Engineering (FASE), 2013.

MathFinder

Concurrency and Distribution

  • Event-based concurrency: Applications, abstractions and analyses (Link)

Aditya Kanade

Invited book chapter, Advances in Computers, Volume 112, 2019

  • Efficient computation of happens-before relation for event-driven programs (PDF)

Pallavi Maiya, Aditya Kanade

International Symposium on Software Testing and Analysis (ISSTA), 2017.

EventTrack, Proofs

  • Static deadlock detection for asynchronous C# programs (PDF)

Anirudh Santhiar, Aditya Kanade

Programming Language Design and Implementation (PLDI), 2017.

DeadWait, Practical impact, Semantics

  • Efficient race detection in the presence of programmatic event loops (PDF)

Anirudh Santhiar, Shalini Kaleeswaran, Aditya Kanade

International Symposium on Software Testing and Analysis (ISSTA), 2016.

SparseRacer, Practical impact

  • Partial order reduction for event-driven multi-threaded programs (PDF)

Pallavi Maiya, Rahul Gupta, Aditya Kanade, Rupak Majumdar

Tools and Algorithms for the Construction and Analysis of Systems (TACAS), 2016.

EM-Explorer

  • Rely/guarantee reasoning for asynchronous programs (PDF)

Ivan Gavran, Filip Niksic, Aditya Kanade, Rupak Majumdar, Viktor Vafeiadis

Concurrency Theory (CONCUR), 2015.

  • Race detection for Android applications (PDF)

Pallavi Maiya, Aditya Kanade, Rupak Majumdar

Programming Language Design and Implementation (PLDI), 2014.

DroidRacer

Program Analysis and Verification

  • Asynchrony-aware static analysis of Android applications (PDF)

Ashish Mishra, Aditya Kanade, Y. N. Srikant

Formal Methods and Models for System Design (MEMOCODE), 2016.

  • P3: Partitioned path profiling (PDF)

Mohammed Afraz, Diptikalyan Saha, Aditya Kanade

Foundations of Software Engineering (FSE), 2015.

  • Non-deterministic transducer models of retransmission protocols over noisy channels (PDF)

Jay Thakkar, Aditya Kanade

Information Processing Letters (IPL), Volume 115(9), 2015.

  • Transducer-based algorithmic verification of retransmission protocols over noisy channels (PDF)

Jay Thakkar, Aditya Kanade, Rajeev Alur

Formal Techniques for Distributed Systems (FORTE), 2013.

  • Static analysis for checking data format compatibility of programs (PDF)

Pranavadatta Devaki, Aditya Kanade

Foundations of Software Technology and Theoretical Computer Science (FSTTCS), 2012.

  • A logic for correlating temporal properties across program transformations (PDF)

Aditya Kanade, Amitabha Sanyal, Uday P. Khedker

Technical Report, September 2012.

  • Representation dependence testing using program inversion (PDF)

Aditya Kanade, Rajeev Alur, Sriram Rajamani, G. Ramalingam

Foundations of Software Engineering (FSE), 2010.

  • Generating and analyzing symbolic traces of Simulink/Stateflow models (PDF)

Aditya Kanade, Rajeev Alur, Franjo Ivančić, S. Ramesh, Sriram Sankaranarayanan, K.C. Shashidhar

Computer Aided Verification (CAV), 2009.

Prototype tool

  • Validation of GCC optimizers through trace generation (PDF)

Aditya Kanade, Amitabha Sanyal, Uday P. Khedker

Software Practice and Experience (SPE), Volume 39(6), 2009.

SPOTS

  • Symbolic analysis for improving simulation coverage of Simulink/Stateflow models (PDF)

Rajeev Alur, Aditya Kanade, S. Ramesh, K.C. Shashidhar

Embedded Software (EMSOFT), 2008.

ACM SIGBED EMSOFT best paper award

  • Ranking automata and games for prioritized requirements (PDF)

Rajeev Alur, Aditya Kanade, Gera Weiss

Computer Aided Verification (CAV), 2008.

  • Structuring optimizing transformations and proving them sound (PDF)

Aditya Kanade, Amitabha Sanyal, Uday P. Khedker

Electronic Notes in Theoretical Computer Science (ENTCS), Volume 176(3), 2007.

SPOTS

  • A PVS based framework for validating compiler optimizations (PDF)

Aditya Kanade, Amitabha Sanyal, Uday P. Khedker

Software Engineering and Formal Methods (SEFM), 2006.

SPOTS

  • Heterogeneous fixed points with application to points-to analysis (PDF)

Aditya Kanade, Uday P. Khedker, Amitabha Sanyal

Asian Symposium on Programming Languages and Systems (APLAS), 2005.