Pritam Roy, PhD
pritam.roy@gmail.com
(+1) 831 419 8973
Over 8 years of experience in
research, development and maintenance of Formal Verification algorithms
and tools. Good communication and writing skills. |
| |
Technical skill
Operating
Systems : Unix/Linux, Windows, Mac-OSX |
Languages : C, Lex, Yacc, Perl, Verilog, Matlab, Simulink,C++, Python, Java, Ocaml,
C#
|
Tools : CUDD, GLU, FSoft, CIL, SMV, YICES,PRISM
|
| |
Education
2004-2009 PhD in Computer Engineering, University of California, Santa Cruz,
USA.
Topic : Verification of large systems using abstraction-refinement
algorithms.
|
2002-2004 M.S. in Computer Science and Engineering, IIT, Kharagpur, India,
Topic : Development of Open-CTL Module Verifier and Stimulus Generation
Tool |
1998- 2002 B.Tech (Hons.) in Computer Science and Engineering, IIT Kharagpur,
India,
Topic : Mobile Hand-off and Channel Allocation Algorithm
|
| |
Professional experience
Jan 2010-Present Postdoctoral Researcher, Cyber-Physical Lab, UCLA
- Controller Synthesis
via Game-theoretic Algorithms.
- Developed and implemented
efficient, scalable algorithms to synthesize the controllers, implemented
symbolic algorithms for the tool Pessoa.
- Developed algorithms
to synthesize the controllers with respect to safe-Linear Temporal
Logic specifications
- Applied SPLAT test-generation
tool to create test-cases on the source code of Toyota engine controller
|
2004 – 2009 Graduate Researcher, UCSC
- explored new
algorithms for scalable verification techniques for non-probabilistic
and probabilistic systems.
- applied two-player game-semantics
to model the interactions among components as interface theory
- developed symbolic algorithms
for compatibility, and refinement, and implemented the algorithms in
the tool TICC.
- developed the wrapper
from Ocaml to C BDD/MDD
functions (CUDD, GLU).
- developed a novel symbolic
three-valued abstraction algorithm to solve transition systems
and two-player games with reachability or safety goals.
- Implemented three-valued
abstraction
algorithms in the tool TICC to show significant space savings as well as speedup
- developed a novel abstraction
technique, called magnifying-lens
abstraction
(MLA), to analyse reachability and safety
properties of MDPs.
- prototyped a python
implementation to show that
MLA can provide accurate answers, with savings in memory .
- provided a symbolic
version of algorithm MLA that combines the symbolic techniques with
the abstraction techniques to handle the space-explosion problem better.
- developed, implement,
and test a symbolic version (called SMLA) inside PRISM model checker.
|
July 2009-Sept 2009
Summer Intern, SRI International, USA
- Developed a tool that
type-checks, verifies,
generates tests for Simulink designs.
- Modeled the tele-surgery
robot M7 in Simulink/Matlab for the purpose of certification
- The type-checker accepts
expressive types such as measurement units as types, dependent types,
and refinement-types.
- Used SMT Solver YICES.
|
June 2007-Sept 2007
Summer Intern, NEC Research Lab, USA,
- Developed algorithms
to verify C library functions by summarizing functions via creating an interface (function
call graph)
- Computed an interface
graph to specify the safe (not leading the library to error) calls in
the library.
- applied purely modular
approach to create the interface graphs.
- developed and implemented symbolic
abstraction-refinement based algorithms by summarizing every function
in a purely modular approach.
- used the software model
checking tool FSoft, CIL
|
June 2005-Sept 2005, May 2007
Summer Intern, MSR Research, Redmond, USA,
- Developed algorithms to maximize the software testing coverage in online
testing in XRT, and Spec Explorer.
- implemented novel online-testing
algorithms based on Reinforcement Learning in Spec-Explorer and XRT
tools
- developed algorithms
to maximize the software testing coverage given the number of runs and number of steps in the
online testing.
- Developed probabilistic
learning algorithms in NModel open source tool.
|
Aug 2002- Aug 2004
Research Assistant, IIT Kharagpur, India,
- Developed a BDD-based
Open-RTCTL model checker with BLIF/ISCAS front-end.
- Used LEX/YACC to parse
hardware circuits, CUDD package for BDD manipulation
- worked on sequential
automatic test-pattern generation (ATPG) for hardware circuits
- directed test-bench
generation of hardware designs by assertion-based verification techniques.
- extended the basic philosophy
of the Open family of temporal logics to develop a language Stimulus
Generation Logic (SGL) for annotating specific behavioral properties
with input constraints
- used model checking
algorithms
to generate sequential input stimuli that satisfy the properties given
in SGL.
- implemented those algorithms
in the Stimulus Generation Tool (SGT)
|
May 2001- July 2001
Summer Intern, Dortmund University, Germany,
- Compiler Optimization
Tool for LANCE Embedded Processor,
- Worked on optimization
of the LANCE compiler project.
- Developed and tested
code optimization techniques for embedded processors.
|
Publications
- NFM 2010, SimCheck:
An Expressive Type System for Simulink, with N. Shankar.
- QEST 2008. Symbolic
Magnifying Lens Abstraction in Markov Decision Processes, with D.Parker,
G. Norman, L. deAlfaro.
- RTSS 2007, Adapting Futures: Scalability for Real-World Computing, with J. Helander, R.Serg, M. Veanes.
- CONCUR07, Solving
Games via Three-Valued Abstraction Refinement, with L. deAlfaro.
- CAV07, Magnifying-Lens
Abstraction for Markov Decision Processes, with L. de Alfaro.
- FATES/RV 06, Online
Testing with Reinforcement Learning, with M. Veanes, C. Campbell.
- CAV06, TICC:
A Tool for Interface Compatibility and Composition, with B. Adler, L.de
Alfaro, L. Dias Da Silva, M. Faella, A. Legay, V.Raman.
- IWAOM05, Behavioral Composition in Symbolic Domains, with W. Grieskamp, N. Kicillof, C. Campbell, W. Schulte, N. Tillman, M. Veanes.
- FROCOS05,Sociable
Interfaces, with L.de Alfaro, L. Dias Da Silva, M. Faella, A. Legay,M.
Sorea
- VDAT04,An
Assertion Based Language for Generating Test Sequences for Complex Temporal
Behavior,
with P.Dasgupta, P.P. Chakrabarti.
|
Software Tools/Projects
- SimCheck : Developer and maintainer of Simulink Type-checker tool
- SPLAT : Developer and maintainer of SPLAT test-case generation tool
for C
- Pessoa
: Developer
of the safe-LTL controller synthesis
- TICC : Developer and maintainer
of the game-based interface composition and compatibility tool.
- Stimulus Generator : Developer of the input generator of the hardware circuits with respect
to temporal assertions.
- OpenCTL Model Checker: Developer
of the model
checker for Open-Computation Tree Logic
- NModel
: Developer
of the open-source project NModel for maximization of coverage in model-based
software testing.
|
R & D Interests
- Model Checking : Formal
methods for hardware/software verification
- Testing
: Formal methods to create test-suites (offline/online), Model-based
Testing
- Controller Synthesis : Scalable
verification techniques as abstraction-refinement,
- Symbolic Data Structures : BDD/MDD/SMT-based
symbolic algorithm
- Game Theory : Application
of Game
theory to hardware and software systems
- Probabilistic System : Solving
practical verification problems Markov chains and MDPs
- Embedded Systems : Interface
theory for component based design, and verification
|
|