Stanly Samuel

Stanly Samuel

Senior Research Fellow |
Indian Institute of Science

Curriculum Vitae: cv.pdf


Last updated: 04/09/2023

About

My research focuses on designing algorithms and building scalable tools in the domain of reactive synthesis using ideas from program verification, theory of infinite games, and logic. Broadly, my interests lie in the fine intersection between theory and practice, especially in the umbrella area of algorithmic program synthesis. More specifically, my research investigates efficient and scalable techniques for the automated synthesis of maximally permissive controllers for infinite state systems using symbolic constraint solvers. Nowadays, I am also interested in neurosymbolic AI and applications of formal methods to blockchains and smart contracts

Current

PhD candidate at CSA, Indian Institute of Science

August 2016 - 2023

Research: Efficient Controller Synthesis Techniques for Logical LTL Games
Advisors: Prof. K. V. Raghavan and Prof. Deepak D'Souza

Courses Taken: Program Synthesis meets Machine Learning, Program Analysis and Verification, Formal Methods in Software Engineering, Programming Languages Design and Implementation, Principles of Programming, Topicsin Program Analysis, Design and Analysis of Algorithms, Automata Theory and Computability

Internships

RnD Engineer Intern at Veridise Inc., University of Texas at Austin

Aug 2022 - Nov 2022

Mentors: : Benjamin Mariano and Andreea Buterchi

Worked with Prof. Isil Dillig’s group on OrCa, Veridise’s automated fuzzing tool that uses temporal logic for smart contracts'.

Won the Ethereum India hackathon 2022 (representing Veridise) for our tool ETHGuard, which was a responsive VSCode plugin for detecting smart contract bugs at runtime. The tool sacrificed formal guarantees for efficiency by using machine learning.

Research Intern at Max Planck Institute for Software Systems, Kaiserslautern, Germany

Sep 2019 - Nov 2019

Hosted by: Daniel Neider and Rupak Majumdar
Collaborators: Kaushik Mallik, Anne-Kathrin Schmuck and Daniel Neider

Worked with Prof. Rupak Majumdar’s Rigorous Software Engineering (RSE) group in the domain of correct-by-construction controller synthesis. Formulated and solved the problem Resilient Abstraction-Based Controller Design that applied reactive synthesis techniques to the domain of cyber-physical systems to synthesize resilient controllers

Projects and Research

Towards Efficient Controller Synthesis Techniques for Logical LTL Games

Jan 2017 - ongoing

Keywords: Reactive Synthesis, Two-player Games, Symbolic Algorithms


GenSys paper | GenSys-LTL paper | GenSys Video | GitHub

Joint work with Deepak D'Souza and Raghavan Komondoor, Indian Institute of Science, Bangalore

The first work deals with the synthesis of maximal controllers for logical LTL games with safety specifications; this work was accepted in the tool demonstrations track at ESEC/ FSE 2021.

The second work extends the above work to handle general LTL specifications; this work was accepted in the research papers track at ASE 2023.

Resilient Abstraction-Based Controller Design

Sep 2019 - March 2020

Keywords: Reactive Synthesis, Control Theory, Synthesis for Continuous Dynamical Systems


arXiv | Video | RESCOT Tool | Poster

Joint work with Max Planck Institute for Software Systems, Kaiserslautern, Germany.

This work has been accepted for poster presentation at the 23rd ACM International Conference on Hybrid Systems: Computation and Control (HSCC), 2020.

This work has been accepted for full paper presentation at the 59th Conference on Decision and Control (CDC), 2020

Interprocedural Null Dereference Analysis using the Iterative approach

Aug 2018 - Dec 2018

Platform: Java; Analysis tool: IBM WALA


In this project, we implement a Null Dereference analysis which uses the Iterativeapproach for interprocedural points to analysis. In the iterative approach, weessentially compute the summary functions for each procedure iteratively. We de-couple the propagation of function rows and maintain a table of values representingthe summary function for each program point in a procedure.

Flow sensitive and Flow insensitive Intraprocedural May Points-to Analyses

Aug 2017 - Dec 2017

Platform: Java; Analysis tool: IBM WALA


Flow-sensitive pointer analysis computes for each program point what memorylocations pointer expressions may refer to. In this project, we use Kildall’s algorithmover a suitable Abstract Interpretation framework for computing this points-toinformation at every point.

Flow-insensitive pointer analysis computes what memory locations pointer ex-pressions may refer to, at any time in program execution. In this project, weuse Anderson’s algorithm over a suitable Abstract Interpretation framework forcomputing this points-to information at every point.

Total ordering atomic broadcast protocol using token ring

March 2017 - April 2017

Technologies used: C


Record and Replay of Concurrent Programs in Java

August 2016 - December 2016

Platform: Java; Analysis Tool: Soot Framework; Solver: Z3 by Microsoft


In this project, a Record and Replay tool based on the PLDI’ 13 paper ’CLAP:Recording Local Executions to Reproduce Concurrency Failures’ was implemented.Record and Replay tools are fundamental to dynamic program analysis.

More specifically, concurrency bugs are reproduced as follows. In the first step,thread local execution paths are logged at runtime. This step uses the BallLarus profiling technique (Efficient Path Profiling, MICRO’ 96) to record the pathconstraints and program order constraints. In the second step, we also add interthread constraints and feed it to the constraint solver Z3 to get a global schedulethat reproduces the bug. This step is computed offline.

Aranca Website

Feb 2015 - May 2015

Technologies used: Craft CMS, Virtual Box using Laravel Homestead, Git, Grunt, Sass


Worked on a four month project for Aranca, a leading provider of customized investment research, business research, intellectual property research and valuation services to global clients. My work involved designing and developing the front end architecture. The highlight of this project was working with Web Components on the front end. We had to design modules which could be placed anywhere on the website without breaking the site.

Virtual Air Guitar

September 2011 - May 2012

Technology used: MATLAB


My final year augmented reality project based on color detection, image processing and sound processing techniques.

Education

Indian Institute of Science, Bangalore

PhD in Computer Science, 2016 - ongoing

Mumbai University

BE-Computer Engineering, 2008-2012

Work Experience - Teaching

Lecturer at St. Francis Institute of Technology, Mumbai

July 2013 - June 2014

Subjects taught: Mobile Computing and Theoretical Computer Science for fourth year and second year engineeering students respectively.

Lecturer at Xavier Institute of Engineering, Mumbai

January 2013 - May 2013

Subjects taught: Internet Programming and Software Engineering for second year and third year students engineeering respectively.

Co-Curricular Activities

Talks given

  1. "Declarative programming using Alloy" at the 6th Undergraduate Summer School at CSA, IISc. Watch video here.
  2. "Music programming using Chuck" at the CSA Open day 2018 at CSA, IISc. Chuck is an on-the-fly music programming language developed at Stanford.
  3. "Declarative programming using Alloy" at the 5th Undergraduate Summer School at CSA, IISc. Watch video here.
  4. "Declarative programming using Alloy" at the CSA Open day 2017 at CSA, IISc.
  5. "Verifying C programs using VCC" at the CSA Open day 2017 at CSA, IISc.

Talks/Workshops/Conferences/Schools attended

  1. Selected for “ACM's Winter School in Software Engineering” at Tata Research Development and Design Centre (TRDDC) , Pune, December 2017
  2. Selected for First Indian SAT+SMT workshop” at Tata Institute of Fundamental Research (TIFR), Mumbai, December 2016
  3. Attended a two week ISTE Workshop on Computer Programming for faculty held by the Indian Institute of Technology Bombay in May, June 2014

Positions of Responsibility

  1. Member of Web System admin team, CSA since August 2016
  2. Member of Student Council Security Committee, Indian Institute of Science since April 2018
  3. Digital Marketing for CSA Open day 2018 at CSA, IISc
  4. Digital Marketing for CSA Open day 2017 at CSA, IISc
  5. Digital Marketing and Logo Overhaul for Rhythmica, IISc

Key Skills

  • Teaching
  • Theoretical Computer Science
  • Operating Systems
  • Program Analysis
  • Algorithms
  • Program Verification
  • Program Synthesis
  • Research
  • Digital Marketing
  • Decision Making
  • Negotiations

Work Experience - the other side

Founder at Stanly Classes, Mumbai

January 2015 - May 2017

This was my solo venture where I tuaght the following subjects:
'Theoretical Computer Science / Automata Theory', 'Operating Systems' and 'Systems Programming and Compiler Construction'.
The venture ended its fourth (and final) season in May 2017 with a total of 100+ satisfied students.

Freelance Web Engineer / Trainer

August 2014 - March 2016

  • Workshop on Front end technologies(HTML5, CSS3, JS and Bootstrap), St. Francis Institute of Technology, Mumbai, March 2016
  • Workshop (Virtual Session) on Bootstrap, Atharva College of Engineering, Mumbai, Feb 2016
  • Workshop on MEAN Stack, Mumbai, June 2015
  • Project - Aranca Website, Feb 2015 - May 2015
  • Workshop on MEAN Stack, Goa, January 2015

Founder at Gnostopedia

January 2014 - August 2014

Gnostopedia (Gnosis + Pedia = Collection of Knowledge) was my online educational startup where I worked as a content developer. I started with video explanations for various technical questions which were asked in the GATE exam organized by the Indian Institute of Technologies. I developed, created and recorded contents using simple tools. The subjects were part of the undergraduate curriculum of Computer Science. Solving a particular problem in depth, designing its teaching methodology, flow, pattern and finally explaining the problem accurately (by eliminating potential doubts), was a challenging task. This channel recieved good reviews from students all over India.

Informal Teaching Experience

  1. Systems Programming and Compiler Construction - May 2017
  2. Theoretical Computer Science- - May 2017
  3. Systems Programming and Compiler Construction- Jan 2016 - June 2016
  4. Theoretical Computer Science- January 2016 - June 2016
  5. GATE Prep- March 2016 - April 2016
  6. Derivatives- March 2016 - April 2016
  7. Operating Systems- August 2015 - November 2015
  8. Derivatives and Integration- April 2015
  9. Theoretical Computer Science- January 2015 - June 2015
  10. IIT-JEE Mathematics Prep- August 2014 – November 2014
  11. Engineering Mathematics 3 (Electronics and Telecommunication)- August 2014-December 2014
  12. Theoretical Computer Science Crash Course- August 2014-December 2014
  13. Theoretical Computer Science- August 2014-December 2014
  14. [Peer] GRE Basics of Verbal
  15. Engineering Mathematics 4 (Civil)- January 2013- May 2013
  16. [Peer] GATE Concepts on Analysis of Algorithms, Theoretical Computer Science, Computer Networks, Database Systems, Mathematics, Operating Systems- February 2013
  17. Digital Signal and Image Processing Crash Course- November 2012
  18. Overview of Microprocessors- November 2012
  19. Theoretical Computer Science Crash Course- November 2012
  20. Engineering Mathematics 1 crash course (Computer and Mechanical commons like eigen and complex)- August 2012-December 2012
  21. Engineering Mathematics 3 (Civil)- August 2012- December 2012
  22. Engineering Mathematics 2 (Civil)- Jan 2012- May 2012
  23. [Peer] Digital Signal and Image Processing-October 2011-December 2011
  24. Engineering Mathematics 1 (Civil)- August 2011- December 2011
  25. Grade 12 Mathematics- August 2011- February 2012
  26. Grade 12 Mathematics- August 2010- February 2011

Extra-Curricular Activities

Music Experience, Skills and Achievements

  1. Part of Rhythmica, IISc. Check our band videos here!
  2. A guitarist who plays rhythm, lead and bass by ear
  3. Plays percussive instruments: Congo, Bongo, Djembe and Shakers
  4. Amateur drummer
  5. Conducted a guitar workshop at Xavier Institute of Engineering, Mumbai in 2011
  6. Conducted a guitar workshop at St. Francis Institute of Technology, Mumbai in 2014
  7. Taught guitar to 10+ students from 2008-2012
  8. Played with 3 bands and have performed with them at various locations in India
  9. Secured first place in the instrumental competition “Make some noise” held at Xavier Institute of Engineering in February 2012 for playing ‘Drifting’ by Andy Mckee on the acoustic guitar
  10. Secured second place as a band in “Amateur Night” held by in February 2012

Interests and Hobbies

Travelling – Bike rides, Trekking, Adventure Sports; Cooking and tasting different cuisines; Sports- Table tennis, Carom, Chess, and Football; Solving puzzles and Rubix Cube; keeping abreast with the latest technology.