add Reddit link
[web.git] / research / publications.html
1 ---
2 title: Publications
3 slug: Publications
4 ---
5
6 <h3>Waiting for publication</h3>
7
8 <ul><li>
9   <b>Safe Systems Programming in Rust: The Promise and the Challenge</b><br/>
10   Ralf Jung, Jacques-Henri Jourdan, Robbert Krebbers, Derek Dreyer<br>
11   <i>Accepted for publication in Communications of the ACM (CACM)</i><br>
12   [<a href="https://people.mpi-sws.org/~dreyer/papers/safe-sysprog-rust/paper.pdf">paper</a>]
13 </li></ul>
14
15 <h3>2020</h3>
16
17 <ul><li>
18   <b>Understanding and Evolving the Rust Programming Language</b><br/>
19   Ralf Jung<br>
20   <i>PhD Thesis</i><br>
21   [<a href="thesis.html">website</a>]
22 </li></ul>
23
24 <ul><li>
25   <b>The Future is Ours: Prophecy Variables in Separation Logic</b><br/>
26   Ralf Jung, Rodolphe Lepigre, Gaurav Parthasarathy, Marianna Rapoport, Amin Timany, Derek Dreyer, Bart Jacobs<br>
27   <i>In <a href="https://popl20.sigplan.org/">POPL 2020</a></i><br>
28   [<a href="https://plv.mpi-sws.org/prophecies/paper.pdf">paper</a>] [<a href="https://plv.mpi-sws.org/prophecies/">paper website</a>  (incl. appendix and Coq formalization)]
29 </li></ul>
30
31 <ul><li>
32   <b>Stacked Borrows: An Aliasing Model for Rust</b><br/>
33   Ralf Jung, Hoang-Hai Dang, Jeehoon Kang, Derek Dreyer<br>
34   <i>In <a href="https://popl20.sigplan.org/">POPL 2020</a></i><br>
35   [<a href="https://plv.mpi-sws.org/rustbelt/stacked-borrows/paper.pdf">paper</a>] [<a href="https://plv.mpi-sws.org/rustbelt/stacked-borrows/">paper website</a>  (incl. appendix and Coq formalization)]
36 </li></ul>
37
38 <h3>2018</h3>
39
40 <ul><li>
41   <b>Iris from the Ground Up: A Modular Foundation for Higher-Order Concurrent Separation Logic</b><br/>
42   Ralf Jung, Robbert Krebbers, Jacques-Henri Jourdan, Aleš Bizjak, Lars Birkedal, Derek Dreyer<br>
43   <i>In <a href="https://www.cambridge.org/core/journals/journal-of-functional-programming/issue/832F8756D0A835287494117BF9ED5E74">Journal of Functional Programming (JFP), Volume 28, e20, November 2018</a></i><br>
44   [<a href="https://www.mpi-sws.org/~dreyer/papers/iris-ground-up/paper.pdf">paper</a>] [<a href="https://iris-project.org">project website</a>  (incl. appendix and Coq formalization)]
45 </li></ul>
46
47 <ul><li>
48   <b>Reconciling High-Level Optimizations and Low-Level Code in LLVM</b><br/>
49   Juneyoung Lee, Chung-Kil Hur, Ralf Jung, Zhengyang Liu, John Regehr, Nuno P. Lopes<br>
50   <i>In <a href="https://conf.researchr.org/track/splash-2018/splash-2018-OOPSLA">OOPSLA 2018</a></i><br>
51   [<a href="twinsem/twinsem.pdf">paper</a>] [<a href="https://sf.snu.ac.kr/llvmtwin/">paper website</a>]
52 </li></ul>
53
54 <ul><li>
55   <b>MoSeL: A General, Extensible Modal Framework for Interactive Proofs in Separation Logic</b><br/>
56   Robbert Krebbers, Jacques-Henri Jourdan, Ralf Jung, Joseph Tassarotti, Jan-Oliver Kaiser, Amin Timany, Arthur Charguéraud, Derek Dreyer<br>
57   <i>In <a href="https://icfp18.sigplan.org/">ICFP 2018</a></i><br>
58   [<a href="https://iris-project.org/pdfs/2018-icfp-mosel-final.pdf">paper</a>] [<a href="https://iris-project.org/mosel/">paper website</a>  (incl. appendix and Coq formalization)]
59 </li></ul>
60
61 <ul><li>
62   <b>RustBelt: Securing the Foundations of the Rust Programming Language</b><br/>
63   Ralf Jung, Jacques-Henri Jourdan, Robbert Krebbers, Derek Dreyer<br>
64   <i>In <a href="https://popl18.sigplan.org/">POPL 2018</a></i><br>
65   [<a href="https://plv.mpi-sws.org/rustbelt/popl18/paper.pdf">paper</a>] [<a href="https://plv.mpi-sws.org/rustbelt/popl18/">paper website</a>  (incl. appendix and Coq formalization)] [<a href="https://www.youtube.com/watch?v=Cy9NUVaiYUg" target="_blank">talk (YouTube)</a>] [<a href="https://plv.mpi-sws.org/rustbelt/popl18/talk.pdf">talk (slides)</a>]
66 </li></ul>
67
68 <h3>2017</h3>
69
70 <ul><li>
71   <b>The Essence of Higher-Order Concurrent Separation Logic</b><br/>
72   Robbert Krebbers, Ralf Jung, Aleš Bizjak, Jacques-Henri Jourdan, Derek Dreyer, Lars Birkedal<br>
73   In <a href="https://www.etaps.org/index.php/2017/esop">ESOP 2017</a><br>
74   [<a href="https://iris-project.org/pdfs/2017-esop-iris3-final.pdf">paper</a>] [<a href="https://iris-project.org">project website</a>  (incl. appendix and Coq formalization)]
75 </li></ul>
76
77 <ul><li>
78   <b>A Higher-Order Logic for Concurrent Termination-Preserving Refinement</b><br/>
79   Joseph Tassarotti, Ralf Jung, Robert Harper<br>
80   <i>In <a href="https://www.etaps.org/index.php/2017/esop">ESOP 2017</a></i><br>
81   [<a href="https://iris-project.org/pdfs/2017-esop-refinement-final.pdf">paper</a>] [<a href="https://www.cs.cmu.edu/~jtassaro/papers/iris-refinement/index.html">paper website</a> (incl. Coq formalization)]
82 </li></ul>
83
84 <h3>2016</h3>
85
86 <ul><li>
87   <b>Higher-Order Ghost State</b><br/>
88   Ralf Jung, Robbert Krebbers, Lars Birkedal, Derek Dreyer<br>
89   <i>In <a href="https://conf.researchr.org/home/icfp-2016">ICFP 2016</a></i><br>
90   [<a href="https://iris-project.org/pdfs/2016-icfp-iris2-final.pdf">paper</a>] [<a href="https://iris-project.org">project website</a>  (incl. appendix and Coq formalization)] [<a href="https://www.youtube.com/watch?v=vUxWU-qvGX0" target="_blank">talk (YouTube)</a>] [<a href="iris/talk-icfp2016.pdf">talk (slides)</a>]
91 </li></ul>
92
93 <h3>2015</h3>
94
95 <ul><li>
96   <b>Iris: Monoids and Invariants as an Orthogonal Basis for Concurrent Reasoning</b><br/>
97   Ralf Jung, David Swasey, Filip Sieczkowski, Kasper Svendsen, Aaron Turon, Lars Birkedal, Derek Dreyer<br>
98   <i>In <a href="https://popl.mpi-sws.org/2015/">POPL 2015</a></i><br>
99   [<a href="https://iris-project.org/pdfs/2015-popl-iris1-final.pdf">paper</a>] [<a href="https://iris-project.org">project website</a>  (incl. appendix and Coq formalization)] [<a href="iris/talk-popl2015.pdf">talk (slides)</a>]
100 </li></ul>
101
102 <h3>2013</h3>
103 <ul><li>
104   <b>An Intermediate Language To Formally Justify Memory Access Reordering</b><br/>
105   Ralf Jung, Supervisor: Sebastian Hack, Advisor: Sigurd Schneider<br>
106   <i>Bachelor Thesis</i><br>
107   [<a href="bachelor/bachelor.pdf">thesis</a>] [<a href="bachelor/bachelor-talk.pdf">slides</a>] [<a href="bachelor/bachelor.zip">coq</a>]
108 </li></ul>
109
110 <h2>Workshop Talks</h2>
111
112 <h3>2020</h3>
113
114 <ul><li>
115   <b>Stacked Borrows: An Aliasing Model for Rust</b><br/>
116   Ralf Jung<br>
117   <i>At <a href="https://agozillon.github.io/PRiML/">PRiML 2020</a> (invited talk)</i><br>
118   [<a href="rust/talk-priml2020.pdf">slides</a>]
119 </li></ul>
120
121 <h3>2019</h3>
122
123 <ul><li>
124   <b>Logical Atomicity in Iris: the Good, the Bad, and the Ugly</b><br/>
125   Ralf Jung<br>
126   <i>At <a href="https://iris-project.org/workshop-2019/">Iris Workshop 2019</a></i><br>
127   [<a href="iris/talk-iris2019.pdf">slides</a>]
128 </li></ul>
129
130 <h3>2015</h3>
131
132 <ul><li>
133   <b>Unifying Worlds and Resources</b><br/>
134   Ralf Jung, Derek Dreyer<br>
135   <i>At <a href="http://users-cs.au.dk/birke/hope-2015/">HOPE 2015</a>: 4th ACM SIGPLAN Workshop on Higher-Order Programming with Effects</i><br>
136   [<a href="iris/talk-hope2015.pdf">slides</a>] [<a href="https://www.youtube.com/watch?v=9Dyna88piek&amp;list=PLnqUlCo055hX6SsmMr1AmW6quMjvdMPvK&amp;index=10" target="_blank">YouTube</a>]
137 </li></ul>