Zachary Kincaid

Email: zkincaid@cs.toronto.edu
Office: Bahen Centre 3232

Table of Contents

About Me

I'm a graduate student at the University of Toronto. I'm working on program analysis under the supervision of Azadeh Farzan. I recently finished my masters degree, with a thesis on dataflow analysis for concurrent programs with synchronization. I did my undergrad in computer science and math at the University of Western Ontario, where Lila Kari supervised my thesis on formal language theory.

My Erdős number is 3

Research Interests

Most of my work is on proving properties of concurrent programs, particularly for programs where the number of threads executing in the system cannot be statically bounded. My work is implemented in Duet.

Generally, I'm interested in static analysis, programming language semantics, functional programming, type theory, logic, theorem proving, computability theory, and complexity theory. More specifically, I'm interested in:

  • Program representation
  • Program analysis in the presence of concurrency, (higher-order) procedures, and dynamic memory allocation.
  • Modular design of programming languages and program analysis tools
  • Using programming languages as models of computation

Publications

[FK12] Azadeh Farzan and Zachary Kincaid. Verification of parameterized concurrent programs by modular reasoning about data and control. POPL '12, pages 297-308, New York, NY, USA, 2012. ACM. [ abstract | bib | DOI ]
[FK10] Azadeh Farzan and Zachary Kincaid. Compositional bitvector analysis for concurrent programs with nested locks. In SAS, pages 253-270, 2010. [ abstract | bib ]
[IKKS08] Masami Ito, Lila Kari, Zachary Kincaid, and Shinnosuke Seki. Duplication in DNA sequences. In Developments in Language Theory, pages 419-430, 2008. [ abstract | bib ]

Teaching

If you are extraordinarily lucky, you may have the pleasure of having me as a TA for Software Verification and Testing in the Winter 2012 term. If you already had me as a TA, then it was in one of these classes:

  • Winter 2010, Winter 2011: Software Testing and Verification
  • Fall 2008, Fall 2009, Summer 2010, Fall 2010: Principles of Programming Languages
  • Winter 2009, Fall 2011: Introduction to the Theory of Computation

Links