Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

S. Purushothaman Iyer

dblp:i/SPurushothamanIyer · also S. Purushothaman · DBLP profile ↗
← Back
32ranked-venue papers
7as first author
0since 2021 · last 2007
—ORCID · conflict

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 16 · 4 first-authorTheory of computation · 13Systems, architecture and hardware · 4 · 2 first-authorComputer networks · 2 · 1 first-authorArtificial intelligence and machine learning · 1 · 1 first-authorSecurity and privacy · 1Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Theoretical computer science
7 papers
Automata and formal languages · 99% Distributed computing theory · 1%
Software engineering, system software, and programming languages
6 papers
Program verification · 69% Program analysis · 27% Concurrent programming · 4%
Network and information security
1 paper
Cryptographic protocols and secure computation · 100%

Topics — the 14 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Automata and formal languages › infinite-state systems › channel systems
lossy channel systems
0.122005
Simulating perfect channels with probabilistic lossy channels · Inf. Comput. 2005
Unreliable Channels are Easier to Verify Than Perfect Channels · Inf. Comput. 1996
Program verification
model checking
0.112005
An Approach to Unfolding Asynchronous Communication Protocols · FM 2005
Automata and formal languages › infinite-state systems
channel systems
0.112005
Simulating perfect channels with probabilistic lossy channels · Inf. Comput. 2005
Automata and formal languages
petri nets
0.012000
Unfoldings of Unbounded Petri Nets · CAV 2000
Program verification
unreliable channels
0.011996
Unreliable Channels are Easier to Verify Than Perfect Channels · Inf. Comput. 1996
Program analysis
data flow analysis
0.021991
Data Flow Analysis of Communicating Finite State Machines · ACM Trans. Program. Lang. Syst. 1991
Towards Dataflow Analysis of Communicating Finite State Machines · PODC 1989
Program analysis
static analysis
0.021991
Data Flow Analysis of Communicating Finite State Machines · ACM Trans. Program. Lang. Syst. 1991
Towards Dataflow Analysis of Communicating Finite State Machines · PODC 1989
Automata and formal languages › infinite-state systems › channel systems
FIFO channel systems
0.011994
Duplication, Insertion and Lossiness Errors in Unreliable Communication Channels · SIGSOFT FSE 1994
Distributed systems
distributed coordination
0.011991
Data Flow Analysis of Communicating Finite State Machines · ACM Trans. Program. Lang. Syst. 1991
Automata and formal languages › infinite-state systems › channel systems
communicating finite state machines
0.011989
Towards Dataflow Analysis of Communicating Finite State Machines · PODC 1989
Concurrent programming
concurrency theory
0.011987
Reasoning About Probabilistic Behavior in Concurrent Systems · IEEE Trans. Software Eng. 1987
Internet architecture and protocols
protocol specification
0.011994
Duplication, Insertion and Lossiness Errors in Unreliable Communication Channels · SIGSOFT FSE 1994
Automata and formal languages
finite automata
0.011991
Data Flow Analysis of Communicating Finite State Machines · ACM Trans. Program. Lang. Syst. 1991
Distributed computing theory
distributed algorithms
0.011989
Towards Dataflow Analysis of Communicating Finite State Machines · PODC 1989

Methods — techniques the papers use, named apart from their topics

unfolding · 0.1model checking · 0.1net unfolding · 0.0reachability analysis · 0.0flow equations · 0.0approximation algorithm · 0.0probabilistic modeling · 0.0algebraic calculus · 0.0
YearPublicationVenuePosition
2007 Analyzing network traffic to detect self-decrypting exploit code
abstract
Remotely-launched software exploits are a common way for attackers to intrude into vulnerable computer systems. As detection techniques improve, remote exploitation techniques are also evolving. Recent techniques for evasion of exploit detection include polymorphism (code encryption) and meta-morphism (code obfuscation). This paper addresses the problem of detecting in network traffic polymorphic remote exploits that are encrypted, and that self-decrypt before launching the intrusion. Such exploits pose a great challenge to existing malware detection techniques, partly due to the non-obvious starting location of the exploit code in the network payload.We describe a new method for detecting self-decrypting exploit codes. This method scans network traffic for the presence of a decryption routine, which is characteristic of such exploits. The proposed method uses static analysis and emulated instruction execution techniques. This improves the accuracy of determining the starting location and instructions of the decryption routine, even if self-modifying code is used. The method outperforms approaches that have been previously proposed, both in terms of detection capabilities, and in detection accuracy.The proposed method has been implemented and tested on current polymorphic exploits, including ones generated by state-of-the-art polymorphic engines. All exploits have been detected (i.e., a 100% detection rate), including those for which the decryption routine is dynamically coded, or self-modifying. The false positive rate is close to 0%. Running time is approximately linear in the size of the network payload being analyzed.
Douglas S. Reeves, Peng Ning, S. Purushothaman Iyer
AsiaCCS4
2007 Error Report Driven Post-Mortem Analysis
abstract
Regulatory agencies, such as US FDA, and other third party reviewers of software have the task of comprehending apiece of software in the event of its failure. Program slicing is the preferred technique to analyze software failures. However, program slicing might yield extremely large slices and also demand that an user have intimate knowledge of the software (by specifying a slicing criterion). In this paper we propose solutions to ameliorate both of these problems. The main hypothesis of the paper is that error reports can be used to generate slicing criteria, thus allowing a third-party reviewer to use slicing without any knowledge of the system being analyzed. The first contribution of the paper is a study of how error reports can be formalized and how execution sequences (called error traces) that satisfy an error report can be identified, which can then be sliced. A primary feature of this work is that incomplete error reports could be dealt with. The second contribution of the paper is a scheme for using abstract interpretation in the generation of error traces and (potential) slicing criteria from error reports. These "abstract" error traces can be sliced, much like in dynamic/conditional slicing, with respect to the criteria generated, allowing for inputs to be used to reduce the size of slices. Furthermore, being abstract in nature, they are shorter than exact execution sequences and also allow for easier comprehension. We finally present a case study involving a medical device that illustrates how our approach can aid with program comprehension.
Yi Zhang 0051, S. Purushothaman Iyer
ICPC2
2006 A Formal Approach to Pre-Market Review for Medical Device Software
abstract
In this paper we explore a method for carrying out pre-market analysis of software designs and implementations, based on formal-methods techniques, to aid the process of reviewing software in medical devices. We discuss a methodology to validate medical device software with the help of formal methods based usage models, and test cases derived from such models. We present a case study involving the design and verification of a generic infusion pump usage model, detailing how the various stages of our approach can be carried out. Finally, we present experimental results and effort estimates to show that the proposed methodology is effective and feasible
Raoul Praful Jetley, S. Purushothaman Iyer, Paul L. Jones, William Spees
COMPSAC (1)2
2006 Using Abstraction-driven Slicing for Postmortem Analysis of Software
abstract
Post-mortem analysis - the process of tracing software failure to source code - is an important means for maintenance engineers and regulatory reviewers for establishing the cause of an error. Historically, static slicing techniques have been used for aiding post-mortem fault analysis. However, the slices obtained in this manner can often be too large and may not give a clear understanding of the code when dealing with complex reactive systems. We propose using model abstraction in conjunction with slicing to ameliorate the problem of understanding large slices. Combining slicing with abstraction provides the analyst with an integrated cognition model, leading to a better understanding of the code, and consequently more efficient error analysis. We formalize this concept through the notion of abstraction-driven slicing, and use it to develop CAdS, an automated tool to aid postmortem error detection in C programs using abstraction-driven static slicing. We list our experiences with CAdS and illustrate how it can be used to reduce effort involved in the postmortem analysis process
Raoul Praful Jetley, Yi Zhang 0051, S. Purushothaman Iyer
ICPC3
2005 An Approach to Unfolding Asynchronous Communication Protocols
Yu Lei 0001, S. Purushothaman Iyer
FM2
2005 Simulating perfect channels with probabilistic lossy channels
Parosh Aziz Abdulla, Christel Baier, S. Purushothaman Iyer, Bengt Jonsson 0001
Inf. Comput.3
2005 Probabilistic temporal logics via the modal mu-calculus
Rance Cleaveland, S. Purushothaman Iyer, Murali Narasimha
Theor. Comput. Sci.2
2004 SAT-Solving the Coverability Problem for Petri Nets
Parosh Aziz Abdulla, S. Purushothaman Iyer, Aletta Nylén
Formal Methods Syst. Des.2
2004 Introductory paper
S. Purushothaman Iyer, David Hislop, Paul L. Jones, Jaime Lee, Frederick Pearce, Stephen Van Albert
Int. J. Softw. Tools Technol. Transf.1
2004 A case study on applying formal methods to medical devices: computer-aided resuscitation algorithm
Raoul Praful Jetley, Cohan Carlos, S. Purushothaman Iyer
Int. J. Softw. Tools Technol. Transf.3
2003 Well-abstracted transition systems: application to FIFO automata
Alain Finkel, S. Purushothaman Iyer, Grégoire Sutre
Inf. Comput.2
2002 C Wolf - A Toolset for Extracting Models from C Programs
Daniel C. DuVarney, S. Purushothaman Iyer
FORTE2
2000 Unfoldings of Unbounded Petri Nets
Parosh Aziz Abdulla, S. Purushothaman Iyer, Aletta Nylén
CAV2
2000 Reasoning about Probabilistic Lossy Channel Systems
Parosh Aziz Abdulla, Christel Baier, S. Purushothaman Iyer, Bengt Jonsson 0001
CONCUR3
2000 Well-Abstracted Transition Systems
Alain Finkel, S. Purushothaman Iyer, Grégoire Sutre
CONCUR2
1999 Probabilistic Temporal Logics via the Modal Mu-Calculus
Murali Narasimha, Rance Cleaveland, S. Purushothaman Iyer
FoSSaCS3
1996 Unreliable Channels are Easier to Verify Than Perfect Channels
Gérard Cécé, Alain Finkel, S. Purushothaman Iyer
Inf. Comput.3
1996 An Operational Semantics of Sharing in Lazy Evaluation
Jill Seaman, S. Purushothaman Iyer
Sci. Comput. Program.2
1995 Optimality in Abstractions of Model Checking
Rance Cleaveland, S. Purushothaman Iyer, Daniel Yankelevich
SAS2
1994 Duplication, Insertion and Lossiness Errors in Unreliable Communication Channels
abstract
We consider the problem of verifying correctness of finite state machines that communicate with each other over unbounded FIFO channels that are unreliable. Various problems regarding verification of FIFO channels that can lose messages have been considered by Finkel [10], and by Abdulla and Johnson [1, 2]. We consider, in this paper, other possible unreliable behaviors of communication channels, viz. (a) duplication and (b) insertion errors. Furthermore, we also consider various combinations of duplication, insertion and lossiness errors.Finite state machines that communicate over unbounded FIFO buffers is a model of computation that forms the backbone of ISO standard protocol specification languages Estelle and SDL. While an assumption of a perfect communication medium is reasonable at the higher levels of the OSI protocol stack, the lower levels have to deal with an unreliable communication medium; hence our motivation for the present work.The verification problems that are of interest are reachability, unboundedness, deadlock, and model-checking against CTL. All of these problems are undecidable for machines communicating over reliable unbounded FIFO channels. So, it is perhaps surprising that some of these problems become decidable when unreliable channels are modeled. The contributions of this paper are: (a) An investigation of solutions to these problems for machines with insertion errors, duplication errors, or a combination of duplication, insertion and lossiness errors, and (b) A comparison of the relative expressive power of the various errors.
Gérard Cécé, Alain Finkel, S. Purushothaman Iyer
SIGSOFT FSE3
1993 Experiments in Data flow analysis of Communicating Finite State Machines
S. Purushothaman Iyer
FORTE1
1993 A Uniform Treatment of Order of Evalaution and Aggregate Update
M. Draghicescu, S. Purushothaman Iyer
Theor. Comput. Sci.2
1992 An Adequate Operational Semantics for Sharing in Lazy Evaluation
S. Purushothaman Iyer, Jill Seaman
ESOP1
1992 Analysis of a Class of Communicating Finite State Machines
Wuxu Peng, S. Purushothaman Iyer
Acta Informatica2
1991 Data Flow Analysis of Communicating Finite State Machines
abstract
Let ( F'l, Pz, . . . .Pm) be a network of n finite state machines, communicating with each other asynchronously using typed messages over unbounded FIFO channels, In this paper we present a data flow approach to analyzing these communicating machines for nonprogress properties (deadlock and unspecified reception).We set up flow equations to compute the set of pending messages in the queues at any given state of such a network, The central technical contribution of this paper is an algorithm to compute approximations to solutions for the ensuing equations We then show how these approximate solutions can be used to check that interactions between the processes are free of nonprogress errors.We conclude with a number of example protocols that our algorithm certifies to be free of nonprog-ess errors.Included in the examples is a specification of X25 call establishment/clear protocol,
Wuxu Peng, S. Purushothaman Iyer
ACM Trans. Program. Lang. Syst.2
1989 Analysis of communicating processes for non-progress
abstract
The problem of testing two processes (specified as finite-state machines) communicating asynchronously with each other using send and receive commands over a set of message types is considered for two forms of nonprogress: deadlock and unspecified reception. Since the nonprogress problem is undecidable, a dataflow approach is used to obtain sufficient conditions under which the two processes are free of deadlock and unspecified reception. The approximation analysis is based on weakening the receive operation. Polynomial time algorithms are presented to perform the analysis. This problem arises in the context of dataflow analysis of the processes that communicate by message passing and in the context of showing correctness of protocol specifications. Diagrams are provided for some networks that can be certified to be free of unspecified receptions using the algorithms. The problem of testing for deadlock in more than two processes still remains open.>
Wuxu Peng, S. Purushothaman Iyer
ICDCS2
1989 Towards Dataflow Analysis of Communicating Finite State Machines
Wuxu Peng, S. Purushothaman Iyer
PODC2
1989 Mechanical Certification of Systolic Algorithms
S. Purushothaman Iyer, P. A. Subrahmanyam
J. Autom. Reason.1
1988 Reasoning about Systolic Algorithms
S. Purushothaman Iyer, P. A. Subrahmanyam
J. Parallel Distributed Comput.1
1987 Reasoning About Modular Systolic Algorithms
S. Purushothaman Iyer
ICPP1
1987 Reasoning About Probabilistic Behavior in Concurrent Systems
abstract
Certain aspects of the behavior of concurrent systems are intrinsically probabilistic in nature, e.g., the behavior of imperfect communication media used in network protocols. We address the problem of expressing such behavior in an algebraic calculus for communicating systems. The introduction of probabilistic information in the calculus alleviates the problem of proving liveness, as proving liveness now amounts to proving that its probability is 1. A methodology for proving both safety and liveness is developed and used in proving the correctness of the Alternating Bit Protocol.
S. Purushothaman Iyer, P. A. Subrahmanyam
IEEE Trans. Software Eng.1
1986 On Synthesizing Systolic Arrays from Recurrence Equations with Linear Dependencies
Sanjay V. Rajopadhye, S. Purushothaman Iyer, Richard M. Fujimoto
FSTTCS2