People of ACM Features CS Alum Sanjiva Prasad




Sanjiva Prasad is Professor and Head of the Department of Computer Science and Engineering at the Indian Institute of Technology (IIT) Delhi. His research interests include formal methods, programming languages and their semantics, network security, computational biology and medical applications of computing.

He was the Coordinator of the Amar Nath and Shashi Khosla School of Information Technology at IIT Delhi from 2011 to 2015. Prior to IIT Delhi, Prasad worked at the European Computer-Industry Research Centre (ECRC GmbH) in Munich, and at Odyssey Research Associates (ORA Corporation) in Ithaca, New York. He was a visiting Lektor at BRICS, Aarhus University from 1998 to 1999. His PhD is from Stony Brook University, New York, and he earned a BTech in Computer Science and Engineering from the Indian Institute of Technology Kanpur.

Prasad was recently named Editor-in-Chief of ACM Books.

How did your core interests in formal methods and programming languages lead to your recent work in biology and medicine?

I became interested in systems biology around 2004 or 2005 when I realized that the kind of pathway analysis on Kohn diagrams was exactly the kind of question being asked about Petri nets. Around the same time, some people were working on stochastic process calculi to model biological systems. I did not think that approach scaled well, and I was fortunate to have a couple of talented undergrads who were able to model stoichiometry and then rate dynamics in a far better way than stochastic process algebraic techniques did. Unfortunately, we never got around to completing that work.

I’ve come back to looking at basic questions in computational biology. Currently, I am co-guiding a PhD student working on sequence assembly to reconstruct bacterial and virus genomes from millions of short reads, with the objective of providing good theoretical explanations and probabilistic guarantees on the quality of results. I was intrigued by the use of deBruijn graphs in sequencing, though we’ve developed and use a quite different data structure. Another student is working on a related problem, using learning techniques to determine which regions in a DNA sequence contain precursors to miRNA sequences.

Getting into medical applications was more serendipitous. I was hanging around hospitals a lot some 15 to 20 years ago, when my father was seriously ill. Some senior cardiologists and neurosurgeons asked me to help advise them on their computational requirements and in vetting the software specifications for their hospital and research facilities. Over the years we got to discussing research issues and writing joint proposals, particularly in neurosurgery, where they have a bootstrapping issue in the effective training of surgeons. My computer science colleagues, especially those in vision, graphics and embedded systems came on board. We continue to explore a lot of interesting problems in this area, since every surgery is performed under magnification and with multiple cameras in the operating room.

We have also started to look at the use of formal methods in medical applications: operations are complicated orchestrations with hard real-time requirements, and there is ample scope for the entire gamut of formal verification techniques to be employed in both modelling and reasoning about procedures.

What are the unique challenges and opportunities in working in an interdisciplinary area such as the intersection of computing and medicine?

Working with really smart and dedicated doctors at the All-India Institute of Medical Services in New Delhi (AIIMS) makes us realize how little we have achieved so far as computer scientists, and how much more can be done to make things better (as Atul Gawande, the doctor and popular author, would urge us to do). India, with its diversity and sheer numbers, provides our medical colleagues far more experience and insight into disease than better-funded hospitals in the west can hope to see. A continuing challenge is not to be overwhelmed by the complications and the suffering of patients. The hard part is to understand what the really important issues and problems are. This requires understanding of the context in which a doctor works—the decisions they have to make during an operation, the temporal, spatial and physical constraints, etc. Fortunately, computational thinking has made us pretty good diagnosticians, with the ability to organize information, reason and plan. We hope that some of the work we’ve started will make a significant difference to healthcare.

We’ve also done some modest but extremely useful app development work. What we thought would be a small development effort in building an e-partograph (for accurately mapping the 12 hours of labor and its sequelae) turned into a much more intricate exercise, with field trials revealing user interface issues, leading to real-time modelling, and better information organization and presentation.

What really interests me is developing good models for managing health information, particularly issues such as security, integrity, provenance and privacy of the information collected. I think we need to develop much better formal models in which we can understand policies and their implications.

In the 2018 paper “Lightweight Classification of IoT Malware Based on Image Recognition,” you and your co-authors proposed a method using convolutional neural networks to identify distributed denial of service (DDoS) attacks in IoT environments. Why do these new AI-based approaches hold promise for better network security?

Security in IoT is a major issue. I personally advocate the use of formal models in the design of IoT systems and verified translations for the generation of implementations. That said, formal methods are a rather heavy hammer. In any case, we still need to monitor the systems operating in an adversarial environment, and to do so in resource-challenged devices. Pattern recognition techniques, such as those used in the paper you’ve mentioned, help us understand the adversarial environment better.

What are your goals as the incoming Editor-in-Chief of ACM Books?

The ACM Books initiative addresses the shrinking space for high-quality research monographs. The ACM Turing Award series is also a great idea—I liken it to “the canon.” I wish to compliment my predecessor as Editor-in-Chief, Tamer Özsu, and the area editors on their stellar work. Going forward, I would like to strengthen the connection between ACM Books and the ACM membership, which has become more international and includes many software professionals. Another priority for us is greater diversity—in the choice of authors, areas of coverage, and in the target readership. This would also require greater integration with the Digital Library, and broadening the scope of what constitutes a book.

Given the nature of the ACM membership, I am also keen on developing books for working professionals—not manuals, but books that stay with one throughout a professional lifetime. I’d also like ACM Books to have a closer relationship with the various ACM Special Interest Groups (SIGs) for publishing primers and monographs in current research areas. Once ACM Books establishes itself as a major publisher, I would also like to build a deeper engagement with ACM’s curricular development activities. Our goal would be to develop high-quality and accessible undergraduate texts that are internationally available and low-cost.