By topic | By date

Machine and Deep Learning for Programs

  • Greybox fuzzing as a contextual bandits problem [draft]
    Ketan Patil, Aditya Kanade
    Bandit AFL
  • Deep reinforcement learning for programming language correction (draft)
    Rahul Gupta, Aditya Kanade, Shirish Shevade
  • Active learning for efficient testing of student programs
    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.
  • Semi-supervised verified feedback generation (PDF)
    Shalini Kaleeswaran, Anirudh Santhiar, Aditya Kanade, Sumit Gulwani
    Foundations of Software Engineering (FSE), 2016.
  • 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.
  • 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.

Concurrency and Distribution

  • Event-based concurrency: Applications, abstractions and analyses
    Aditya Kanade
    Invited book chapter, Advances in Computers, Volume 112, 2018.
  • 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.
  • 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.

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, CoRR abs/1209.5152, 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.
  • 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.
  • A PVS based framework for validating compiler optimizations (PDF)
    Aditya Kanade, Amitabha Sanyal, Uday P. Khedker
    Software Engineering and Formal Methods (SEFM), 2006.
  • 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.