Dr. Soumyadip Bandyopadhyay
Assistant Professor · Ashoka University · IIT Kharagpur Ph.D. · Formal Methods & AI
Hello! I am Soumyadip Bandyopadhyay, currently working as an Assistant Professor in the Department of Computer Science at Ashoka University. My research interests span Formal Methods, Software Engineering, Industrial Automation, and Neurosymbolic AI. My current work focuses on formal verification, AI-assisted software engineering, and building trustworthy AI systems.
I earned my Ph.D. from IIT Kharagpur, specializing in Formal Methods and Software Engineering. My professional journey began with a Postdoctoral Research Fellowship at the Hasso Plattner Institute, Germany, followed by serving as an Assistant Professor at BITS Pilani, K. K. Birla Goa Campus. I then joined NVIDIA as a Senior Formal Verification Engineer, where I worked on Data Path Verification using VC Formal and JasperGold. Subsequently, I worked as a Research Scientist at the ABB Corporate Research Center, India, conducting research on PLC program verification, validation of Generative AI outputs, and LLM-driven software engineering.
Outside my professional life, I enjoy following world politics, listening to folk music, writing poetry, and performing recitations.
Education & Work Experience
Indian Institute of Technology, Kharagpur
West Bengal, India · CSE · Formal Verification Research Group
Thesis: Path Based Equivalence Checking of Petri Net Representation of Programs for Translation Validation View Thesis
West Bengal University of Technology, Kolkata
West Bengal, India · Computer Science and Engineering
Research Interests & Projects
CodeGenAI
- Generation of control logic using ABB control libraries and notations.
- Generation of test code to improve quality and save FAT efforts.
- Streamlined UI for control engineers to interact with GenAI.
GenAI4SamaTulyata
- Tool for equivalence checker for software migration and evolution.
- Model constructor by LLM, verified using formal verification tools.
- LLM hallucination detection via automated reasoning methods.
"APP based learning for Python program"
"Modelling and Verification of Bio-Inspired System"
"AES: Automated Evaluation Systems for Programming Course"
"SamaTulyata: Automated Evaluation for Programming Course"
Publications
Tools & Talks
Achievements & Professional Activities
Reviewer
- CAV 2014
- EMSOFT 2015
- DAC 2020
- ACM TOSEAM
- IEEE Software
- Acta Informatica
Program Committee
- ISEC 2018–2025
- ICSOFT 2018–2023
- VLSI D 2023-2025
- MPM4CPS 2021–2023 (co-located MODELS)
- ModeVa 2023–2026 (co-located MODELS)
- PERR 2026 (co-located CAV 2026)
Organizer
- PERR 2022 (co-located CAV 2022)
- PEQ 2022 (co-located ISEC 2022)
- SE4AI 2021 (co-located ISEC 2021)
- SE4AI 2020 (co-located ISEC 2020)
- CTiCPS 2020 ↗
Memberships
- IEEE Member
- ACM Member
Teaching
Operating Systems Lab
Course materials, lecture slides, lab resources, and reading materials.
Introduction to Operating Systems
Introduction to OS concepts, system software, and the role of Linux in the OS laboratory.
Linux Basics & Shell Commands
Essential Linux commands, files, directories, permissions, pipes, and shell interaction.
Processes & Process Management
Process creation, execution, termination, process states, and basic process-management commands.
CPU Scheduling
Scheduling concepts and practical understanding of common CPU scheduling algorithms.
Concurrency & Parallelism
Concurrency, parallelism, synchronization concepts, and practical examples.
CPU Read & Write Cycles
Basic CPU and memory interaction, read/write cycles, and related OS-level concepts.