Dynamic Enforcement of Knowledge-based Security Policies
Piotr Mardziel, Stephen Magill, Michael Hicks, and Mudhakar Srivatsa

Computer Security Foundations (CSF) 2011 (to appear)

Specifying and Verifying the Correctness of Dynamic Software Updates
Stephen Magill, Christopher M. Hayden, Michael Hicks, Nate Foster, and Jeffrey S. Foster

draft, 2010

Making fast hardware with separation logic
Byron Cook, Stephen Magill, Mohammad Raza, Jiri Simsa, and Satnam Singh

draft, 2010

Instrumentation Analysis: An Automated Method for Producing Numeric Abstractions of Heap-Manipulating Programs
Stephen Magill

Ph.D. Thesis, 2010
Carnegie Mellon University

Automatic Numeric Abstractions for Heap-Manipulating Programs
Stephen Magill, Ming-Hsien Tsai, Peter Lee and Yih-Kuen Tsay

37th Symposium on Principles of Programming Languages (POPL), 2010

Finding heap-bounds for hardware synthesis
Byron Cook, Ashutosh Gupta, Stephen Magill, Andrey Rybalchenko, Jiri Simsa, Satnam Singh, and Viktor Vafeiadis

Formal Methods in Computer Aided Design (FMCAD), 2009

THOR: A Tool for Reasoning about Shape and Arithmetic
Stephen Magill, Ming-Hsien Tsai, Peter Lee and Yih-Kuen Tsay

20th International Conference on Computer Aided Verification (CAV), 2008

Arithmetic Strengthening for Shape Analysis
Stephen Magill, Josh Berdine, Edmund Clarke, and Byron Cook

14th International Static Analysis Symposium (SAS), 2007

(Long version)

Inferring Invariants in Separation Logic for Imperative List-processing Programs
Stephen Magill, Aleksandar Nanevski, Edmund Clarke, Peter Lee

Third Workshop on Semantics, Program Analysis, and Computing Environments for Memory Management (SPACE), 2006

The Inverse Method for the Logic of Bunched Implications
Kevin Donnelly, Tyler Gibson, Neel Krishnaswami, Stephen Magill and Sungwoo Park

11th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning (LPAR), 2004