Professor of Computer Science at Stevens Institute of Technology. Here's contact info and resume.
Spring 2014 CS 496/510 Principles of Programming Languages
Fall 2013 CS 115 Introduction to Computer Science
Spring 2013 CS 135 Discrete Structures
Fall 2012 CS 115 Introduction to Computer Science and CS 465/810 Category Theory for Computer Scientists
Spring 2012 CS 135 Discrete Structures
Fall 2011 CS 115 Introduction to Computer Science and CS 510 Principles of Programming Languages
Fall 2010 & Spring 2011: on sabbatical leave at Microsoft Research, Cambridge and at IMDEA Software Institute, Madrid
PhD positions available (to start Fall 2013 or later). For research on secure information flow in software: policies, static analysis, and runtime monitoring for Android and other platforms. Full funding is provided. (Supported by NSF and DHS.) The ideal candidates have background in programming language theory and implementation or formal methods. Details here.
For undergrad and MS students: Scholarships for Service.
Undergraduate summer research: Contact me early in Spring semester for projects, supported by NSF and the Stevens Scholars program.
Affiliated with: CASSIA, the Center for the Advancement of Secure Systems and Information Assurance.
Current and past PhD students: Mohammad Nikouei; Andrey Chudnov; Chunyu Tang (finished Fall 2013); Stan Rosenberg (finished Summer 2011); Qi Sun (finished Fall 2007).
I'm working with Anindya Banerjee (IMDEA Software), Gary Leavens (U. Central FL.), and others on Flexible and Practical Information Flow Assurance for Mobile Apps (NSF award 1228930) --see the FlowSpecs project.
With support from DHS I'm working on Tunable Information Flow with researchers at HRL Laboratories.
I'm working with Gary Leavens and others on the Java Modeling Language (JML), and with Leila Silva (UFS Brazil) and Augusto Sampaio (UFPE Brazil) on refactoring (NSF awards CNS-0708330 and CCF-0915611).
With support from Microsoft Research I worked with Andy Gordon and François Dupressoir on Verifying Cryptographic Code in C. And collaborated on the Spec#/Boogie software specification/verification project.
With support from NSF I worked with Anindya Banerjee on Access Control and Downgrading in Information Flow Assurance, collaborating with Tamara Rezk and Gilles Barthe (INRIA), Marco Pistoia (IBM), Qi Sun and Stan Rosenberg. See our Secure Information Flow Inferencer and Verifier for Region Logic.
With support from Telcordia and the U.S. Government I'm working with Susanne Wetzel and Chunyu Tang on high assurance for security in wireless networking
20th International Symposium on Formal Methods (FM) 2015
4th Conference on Principles of Security and Trust (POST) 2015
5th International Symposium on Unifying Theories of Programming (UTP) 2014 (PC chair)
Programming Languages and Analysis for Security (PLAS) 2014
5th International Conference on Runtime Verification, 2014
Workshop on Foundations of Computer Security (FCS) at LICS/CSF 2013
Verified Software: Theories, Tools, Experiments 2008, 2010, & 2013
1st ACM Workshop on Higher-Order Programming with Effects (HOPE) at ICFP 2012
ACM Principles of Programming Languages (POPL) 2011
ACM Conference on Computer and Communication Security (CCS) 2010
ECOOP Workshop on Formal Techniques for Java-like Programs (FTfJP) 2013
New Jersey Programming Languages Seminar (NJPLS) co-organizer, April 2010.
International Conference on Formal Engineering Methods 2009.
Brazilian Symposium on Formal Methods 2007, 2008, 2009, 2010, 2011 (also Steering Committee, and co-chair of PC 2012)
ACM Workshop on Program Analysis for Security (PLAS) 2008 & co-chair for PLAS 2009
Mathemetics of Program Construction 2004, 2010, 2012
Formal Methods for Security Engineering 2007 & 2008
European Symposium on Research in Computer Security 2007
IBM Programming Languages Day 2009, co-organizer
Formal Methods for Open Object-based Distributed Systems 2007 & 2008
IEEE/ACM Workshop on Automated Formal Methods (AFM) 2007, 2008, & 2009
European Symposium on Programming 2006 & 2008
Workshop on Foundations of Computer Security and Automated Reasoning for Security Protocol Analysis 2007
ECOOP International Workshop on Aliasing, Confinement and Ownership in object-oriented programming 2008
Int'l Symposium on Unifying Theories of Programming 2006, 2008, 2010, 2012
TOOLS Europe 2008
7th IFIP Int'l Conference on Theoretical Computer Science 2012
Workshop on Specification And Verification of Component-Based Systems 2007
14th Int'l Conference on Formal Methods 2006
Brazilian Symposium on Programming Languages 2004 -- 2008
I co-chaired (with Rohit Gheyi) the 15th
Brazilian Symposium on Formal Methods.
I co-chaired (with Stephen Chong) the 4th ACM SIGPLAN Workshop on
Programming Languages and Analysis for Security
I co-chaired (with Peter O'Hearn) the 2008 Theory Workshop of
the Second IFIP Working Conference on
Verified Software: Theories,
and I co-chaired the
I chaired the Theory Panel of the
Verified Software Initiative
and am a Corresponding Member of the
Verified Software Repository Network.
Editorial Board, The Journal of Object Technology
My stylish home page, speed limits for chumps, Lore-El Center for Women in Engineering and Science, air quality, life above 20 kHz, my Capoeira Angola master, news for nerds, quanta, the African diaspora, my Smyrneika, sax, and voice teachers, shaking away like a rattlesnake, pop record ageing fan, Pandora's locked box, the desk upon which it may not sit, the cry of the imaginary cuica.