Jonathan Ragan-Kelley

Assistant Professor

Massachusetts Institute of Technology
Country flagUnited States

Research Interests

Explore related searches

Contact this professor

Get a free first email built on one of their papers, ready for you to edit and send yourself.

About

Jonathan Ragan-Kelley is an Assistant Professor at the Massachusetts Institute of Technology in the United States. His research areas include geometry processing, compiler verification, and optimization for functional tensor languages. He has contributed to recent articles focusing on topics such as the geometry processing of impossible objects and local composition of black-box subroutines. His work also encompasses the semantics and scheduling for machine knitting compilers, reflecting his diverse interdisciplinary interests.

Articles (6)

Year:

2025

Year:

2025

Computations in physical simulation, computer graphics, and probabilistic inference often require the differentiation of discontinuous processes due to contact, occlusion, and changes at a point in time. Popular differentiable programming languages, such as PyTorch and JAX, ignore discontinuities during differentiation. This is incorrect for parametric discontinuities —conditionals containing at least one real-valued parameter and at least one variable of integration. We introduce Potto, the first differentiable first-order programming language to soundly differentiate parametric discontinuities. We present a denotational semantics for programs and program derivatives and show the two accord. We describe the implementation of Potto, which enables separate compilation of programs. Our prototype implementation overcomes previous compile-time bottlenecks achieving an 88.1x and 441.2x speed up in compile time and a 2.5x and 7.9x speed up in runtime, respectively, on two increasingly large image stylization benchmarks. We showcase Potto by implementing a prototype differentiable renderer with separately compiled shaders.

Year:

2024

Year:

2024

Machine knitting is a well-established fabrication technique for complex soft objects, and both companies and researchers have developed tools for generating machine knitting patterns. However, existing representations for machine knitted objects are incomplete (do not cover the complete domain of machine knittable objects) or overly specific (do not account for symmetries and equivalences among knitting instruction sequences). This makes it difficult to define correctness in machine knitting, let alone verify the correctness of a given program or program transformation. The major contribution of this work is a formal semantics for knitout, a low-level Domain Specific Language for knitting machines. We accomplish this by using what we call the fenced tangle , which extends concepts from knot theory to allow for a mathematical definition of knitting program equivalence that matches the intuition behind knit objects. Finally, using this formal representation, we prove the correctness of a sequence of rewrite rules; and demonstrate how these rewrite rules can form the foundation for higher-level tasks such as compiling a program for a specific machine and optimizing for time/reliability, all while provably generating the same knit object under our proposed semantics. By establishing formal definitions of correctness, this work provides a strong foundation for compiling and optimizing knit programs.

Year:

2023

Year:

2022

Collaborators (5)

Saman Amarasinghe

Massachusetts Institute of Technology

UNITED STATES
View details

Tzu-Mao Li

University of California

UNITED STATES
View details

Justin Solomon

Massachusetts Institute of Technology

UNITED STATES
View details

James Mccann

Carnegie Mellon University

UNITED STATES
View details

Vincent Sitzmann

Assistant Professor

Massachusetts Institute of Technology

UNITED STATES
View details
ApplyKite TwinLearns as you apply

Make your next move.

Prepare your application

Review drafts before you send them.