{"id":28,"date":"2019-07-04T18:42:55","date_gmt":"2019-07-04T18:42:55","guid":{"rendered":"https:\/\/amr-sabry.luddy.indiana.edu\/?page_id=28"},"modified":"2024-07-27T23:38:02","modified_gmt":"2024-07-27T23:38:02","slug":"research","status":"publish","type":"page","link":"https:\/\/amr-sabry.luddy.indiana.edu\/research\/","title":{"rendered":"Research"},"content":{"rendered":"<h2>Software<\/h2>\n<ul>\n<li><a href=\"https:\/\/github.com\/sabry\" target=\"_top\" rel=\"noopener noreferrer\">GitHub<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~pwp\" target=\"_top\" rel=\"noopener noreferrer\">Paul Purdom<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <a href=\"http:\/\/cgi.cs.indiana.edu\/~sabry\/cnf.html\" target=\"_top\" rel=\"noopener noreferrer\"><b>CNF Generator for Factoring Problems<\/b><\/a>, May 2003.<\/li>\n<li><a href=\"https:\/\/cs.indiana.edu\/~sabry\/ojvm\/index.html\" target=\"_top\" rel=\"noopener noreferrer\">The OJVM<\/a>, 2000 (with an update in 2007)<\/li>\n<\/ul>\n<h2>Research papers<\/h2>\n<p>The following copyright notice applies to papers published in ACM conferences and workshops.<span style=\"font-size: small\"><b>Copyright \u00a9 by the <a href=\"http:\/\/www.acm.org\/\" target=\"_top\" rel=\"noopener noreferrer\">Association for Computing Machinery, Inc.<\/a><\/b> Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and\/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or <a href=\"mailto:permissions ... acm org\"><tt>permissions ... acm org<\/tt><\/a>.<\/span><\/p>\n<ol>\n<li>Jacques Carette, Chris Heunen, Robin Kaarsgaard, and Amr Sabry, <strong>How to Bake a Quantum Pi<\/strong>. ICFP 2024<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2024\/07\/icfp24main-p5-p-5b640c0cc6-78639_78641M-final.pdf\">PDF<\/a><\/li>\n<li>Jacques Carette, Chris Heunen, Robin Kaarsgaard, and Amr Sabry, <strong>Compositional Reversible Computation<\/strong>. Invited paper. RC 2024<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2024\/04\/rc24-invited.pdf\">PDF<\/a><\/li>\n<li>Jacques Carette, Chris Heunen, Robin Kaarsgaard, and Amr Sabry, <strong>With a Few Square Roots, Quantum Computing is as Easy as Pi. <\/strong>POPL 2024.<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2024\/01\/popl24main-p89-p-a8d84f909f-73053-final.pdf\">PDF<\/a><\/li>\n<li>Iyengar, Srinivasan; Kumar, Anup; Saha, Debadrita; Sabry, Amr. <strong>A Synthesis of Hidden Subgroup Quantum Algorithms and Quantum Chemical Dynamics<\/strong>. Journal of Chemical Theory and Computation, 2023.<\/li>\n<li>Philip Richerme, Melissa C. Revelle, Christopher G. Yale, Daniel Lobser, Ashlyn D. Burch, Susan M. Clark, Debadrita Saha, Miguel Angel Lopez-Ruiz, Anurag Dwivedi, Jeremy M. Smith, Sam A. Norrell, Amr Sabry, and Srinivasan S. Iyengar. <strong>Quantum Computation of Hydrogen Bond Dynamics and Vibrational Spectra<\/strong>. J. Phys. Chem. Lett. 2023, 14, 7256\u22127263<\/li>\n<li>Jacques Carette, Chris Heunen, Robin Kaarsgaard, and Amr Sabry, <b>The Quantum Effect: A Recipe for QuantumPi<\/b>, 2023<br \/>\n<a href=\"https:\/\/arxiv.org\/abs\/2302.01885\">arXiv<\/a><\/li>\n<li>Jacques Carette, Gerardo Ortiz, and Amr Sabry, <b>Symbolic Execution of Hadamard-Toffoli Quantum Circuits <\/b> PEPM 2023<br \/>\n<a href=\"https:\/\/dl.acm.org\/doi\/10.1145\/3571786.3573018\">ACM DL<\/a><br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2023\/03\/3571786.3573018.pdf\">PDF<\/a><\/li>\n<li>Jacques Carette, Gerardo Ortiz, and Amr Sabry. <b>Retrodictive Quantum Computing.<\/b><br \/>\n<a href=\"https:\/\/arxiv.org\/abs\/2205.06346\" target=\"_blank\" rel=\"noopener\">arXiv<\/a><br \/>\n<a href=\"https:\/\/github.com\/JacquesCarette\/RetrodictiveComputing\" target=\"_blank\" rel=\"noopener\">GitHub repository<\/a><\/li>\n<li>Vikraman Choudhury, Jacek Karwowski, and Amr Sabry. <b>Symmetries in Reversible Programming: From Symmetric Rig Groupoids to Reversible Programming Languages<\/b>. POPL 2022<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2022\/01\/popl22main-p31-p-32bd461e9d-54940-final.pdf\">PDF<\/a><\/li>\n<li>Debadrita Saha, Srinivasan S. Iyengar, Philip Richerme, Jeremy M. Smith, and Amr Sabry. <b>Mapping Quantum Chemical Dynamics Problems to Spin-Lattice Simulators<\/b>. <span class=\"cit-title\"><i>J. Chem. Theory Comput.<\/i><\/span> <span class=\"cit-year-info\">2021<\/span><span class=\"cit-volume\">, 17<\/span><span class=\"cit-issue\">, 11<\/span><span class=\"cit-pageRange\">, 6713\u20136732<\/span><\/li>\n<li>Chao-Hong Chen and Amr Sabry.\u00a0<b>A Computational Interpretation of Compact Closed Categories: Reversible Programming with Negative and Fractional Types.\u00a0<\/b>POPL 2021<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2021\/02\/popl.pdf\">PDF<\/a><br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2021\/02\/errata.pdf\">Errata<\/a><\/li>\n<li>Chao-Hong Chen, Vikraman Choudhury, Jacques Carette, and Amr Sabry, <b>Fractional Types: Expressive\u00a0and Safe Management for Ancilla Bits. <\/b><a href=\"http:\/\/links.springernature.com\/f\/a\/m3quWIJqGoMArxcGS08N6A~~\/AABE5gA~\/RgRhDTWOP0QwaHR0cDovL3d3dy5zcHJpbmdlci5jb20vLS8yL0FYUEQ2QVVBRjJmd1B0OVNVa09mVwNzcGNCCgBGDgIsX9YTVk5SEXNhYnJ5QGluZGlhbmEuZWR1WAQAAAbn\">RC 2020<\/a>.<\/li>\n<li>Oleg Kiselyov, Shin-Cheng Mu, and Amr Sabry,\u00a0<b>Not by Equations\u00a0Alone: Reasoning with Extensible Effects.<\/b>, JFP 2020.<br \/>\n<a href=\"https:\/\/amr-sabry.luddy.indiana.edu\/files\/2022\/07\/denot.pdf\" target=\"_top\" rel=\"noopener\">PDF<\/a><\/li>\n<li>Jacques Carette, Roshan P. James, and Amr Sabry. <b>Embracing the Laws of Physics: Three Reversible Models of Computation<\/b>, 2018.<br \/>\nFinal version appears in <em>Advances in Computers<\/em>, Elsevier, 2022<\/li>\n<li>Ruiyu Zhu, Darion Cassel, Amr Sabry, and Yan Huang. <b>nanoPi: Extreme-Scale Actively-Secure Multi-Party Computation: Resolving the space-round dilemma using lightweight program instrumentation<\/b>, CCS 2018.<\/li>\n<li>Christian Hutslar, Jacques Carette, and Amr Sabry. <b>A Library of Reversible Circuit Transformations<\/b>. Work-in-progress report in the <em>Conference on Reversible Computation<\/em>, 2018.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/rc18.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Cameron Swords, Amr Sabry, and Sam Tobin-Hochstadt. <b>An Extended Account of Contract Monitoring Strategies as Patterns of Communication<\/b>. JFP, 2018.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/jfp2018.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/doi.org\/10.1017\/S0956796818000047\" target=\"_top\" rel=\"noopener noreferrer\">Open access JFP version<\/a><\/li>\n<li>Amr Sabry, Beno\u00eet Valiron, and Juliana Kaizer Vizzotto, <b>From Symmetric Pattern-Matching to Quantum Control<\/b>, FoSSaCS 2018.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/fossacs-final.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/arxiv.org\/abs\/1804.00952\" target=\"_top\" rel=\"noopener noreferrer\">arXiv (extended version)<\/a><\/li>\n<li>Yu-Tsung Tai, Andrew J. Hanson, Gerardo Ortiz, and Amr Sabry, <b>Quantum Interval-Valued Probability: Contextuality and the Born Rule<\/b>, Physical Review A, Vol. 97. No. 5, 2018.<br \/>\n<a href=\"https:\/\/journals.aps.org\/pra\/abstract\/10.1103\/PhysRevA.97.052121\" target=\"_top\" rel=\"noopener noreferrer\">Journal version<\/a> (2018)<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1712.09006\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a> (2017)<\/li>\n<li>Jacques Carette, Chao-Hong Chen, Vikraman Choudhury, Robert Rose, and Amr Sabry, <b>From Reversible Programs to Univalent Universes and Back<\/b>, Invited talk and paper, MFPS 2017.<br \/>\n<a href=\"https:\/\/doi.org\/10.1016\/j.entcs.2018.03.013\" target=\"_top\" rel=\"noopener noreferrer\">ENTCS version<\/a><\/li>\n<li>Amr Sabry, <b>Embracing the Laws of Physics<\/b>, Invited talk at MECO 2017.<\/li>\n<li>Hamidreza Bahramian, Narges Nematollahi, and Amr Sabry, <b>Copredication in Homotopy Type Theory: A homotopical approach to formal semantics of natural languages<\/b>. <em>Fourth Workshop on Natural Language and Computer Science<\/em>, NLCS &#8217;16 .<\/li>\n<li>Jacques Carette and Amr Sabry, <b>Computing with Semirings and Weak Rig Groupoids<\/b>. In the <em>European Symposium on Programming<\/em>, ESOP 2016.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/weak-rig-groupoid.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Cameron Swords, Amr Sabry, and Sam Tobin-Hochstadt. <b>Contract Monitoring Semantics as Patterns of Communication<\/b>. In the <em>International Conference on Functional Programming<\/em>, ICFP 2015.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/contract-monitor.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Geoffrey Brown and Amr Sabry. <b>Reversible Communicating Processes<\/b>. In the <em>Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software<\/em>, PLACES 2015.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/revconc.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Zachary Sparks and Amr Sabry. <b>Superstructural Reversible Logic<\/b>. In the <em>3rd International Workshop on Linearity<\/em>, 2014.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/superstructural.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Roshan P. James and Amr Sabry. <b>Theseus: A High Level Language for Reversible Computing<\/b>. Work-in-progress report in the <em>Conference on Reversible Computation<\/em>, 2014.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/theseus.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Andrew J. Hanson, Gerardo Ortiz, Amr Sabry, and Yu-Tsung Tai. <b>Discrete Quantum Theories<\/b>. In <a href=\"http:\/\/stacks.iop.org\/1751-8121\/47\/115305\" target=\"_top\" rel=\"noopener noreferrer\">J. Phys. A: Math. Theor. 47 (2014) 115305<\/a>.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1305.3292\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a> (2013)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/saskatoon-talk.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Slides<\/a> (<a href=\"http:\/\/math.usask.ca\/fvk\/CF14.HTM\" target=\"_top\" rel=\"noopener noreferrer\">Colloquiumfest<\/a>, University of Saskatchewan, Canada, 2014.)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/qifqm-talk.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Slides<\/a> (Workshop on Quantum Information and Foundations of Quantum Mechanics, University of British Columbia, Vancouver, Canada, 2013.)<\/li>\n<li>Oleg Kiselyov, Amr Sabry, and Cameron Swords. <b>Extensible Effects: An Alternative to Monad Transformers<\/b>. In the <em>Haskell Symposium<\/em>, 2013.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/exteff.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Doaa Hassan and Amr Sabry. <b>Encoding Secure Information Flow with Restricted Delegation and Revocation in Haskell<\/b>. In the <em>Workshop on Functional Programming Concepts in Domain-Specific Languages<\/em>, 2013.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/rdr.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Andrew J. Hanson, Gerardo Ortiz, Amr Sabry, and Yu-Tsung Tai. <b>Geometry of Discrete Quantum Computing<\/b>. <a href=\"http:\/\/stacks.iop.org\/1751-8121\/46\/185301\" target=\"_top\" rel=\"noopener noreferrer\">J. Phys. A: Math. Theor. 46 (2013) 185301<\/a>.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1206.5823\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a> (2012,2013)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/geometry-quantum.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Journal version<\/a> (2013)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/geometry-quantum-erratum.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Corrigendum<\/a> (2015)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/a4618-cover.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Cover of JPhysA Volume 46 Issue 18 with an image from the paper<\/a><\/li>\n<li>Oleg Kiselyov, Simon Peyton-Jones, and Amr Sabry. <b>Lazy v. Yield: Incremental, Linear Pretty-printing<\/b>. In the <em>Asian Symposium on Programming Languages and Systems<\/em>, APLAS 2012.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/yield-pp.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/github.com\/brandonbloom\/fipp\" target=\"_top\" rel=\"noopener noreferrer\">Clojure port by Brandon Bloom<\/a><\/li>\n<li>Roshan P. James and Amr Sabry. <b>Isomorphic Interpreters from Logically Reversible Abstract Machines<\/b>. In the <em>Workshop on Reversible Computation<\/em>, RC 2012.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/iso-int.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>Roshan P. James and Amr Sabry. <b>Embracing the Laws of Physics<\/b>. In the <em>Off the Beaten Track workshop<\/em>, OBT 2012.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/obt.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/physics.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF slides<\/a><\/li>\n<li>\n<div id=\"item2103667\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Information effects\" href=\"http:\/\/dl.acm.org\/authorize?6548200\">Information effects<\/a><\/p>\n<div>Roshan P. James, Amr Sabry<br \/>\nACM SIGPLAN Notices &#8211; POPL &#8217;12, 2012<\/div>\n<\/div>\n<div id=\"stats2103667\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li>Roshan P. James and Amr Sabry. <b>Yield, the control operator: exploring session types<\/b>. In the <em>Continuation Workshop<\/em>, CW 2011.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/yield-session-types.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF slides<\/a><\/li>\n<li>William J. Bowman, Roshan P. James, and Amr Sabry. <b>Dagger Traced Symmetric Monoidal Categories and Reversible Programming<\/b>. In the <em>Workshop on Reversible Computation<\/em>, RC 2011.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/cat-rev.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/reversible.tar.gz\" target=\"_top\" rel=\"noopener noreferrer\">Code<\/a><\/li>\n<li>Andrew J. Hanson, Gerardo Ortiz, Amr Sabry, and Jeremiah Willcock. <b>The Power of Discrete Quantum Theories<\/b>, 2011.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1104.1630\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><\/li>\n<li>Roshan P. James, Gerardo Ortiz, and Amr Sabry. <b>Quantum Computing over Finite Fields: Reversible Relational Programming with Exclusive Disjunctions<\/b>, 2011.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1101.3764\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><\/li>\n<li>Roshan P. James and Amr Sabry. <b>Yield: Mainstream Delimited Continuations<\/b>. In the Workshop on the <em>Theory and Practice of Delimited Continuations<\/em>, TPDC 2011.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/yield.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/yield.tar.gz\" target=\"_top\" rel=\"noopener noreferrer\">Code<\/a><\/li>\n<li>Jeremiah Willcock and Amr Sabry. <b>Solving UNIQUE-SAT in a Modal Quantum Theory<\/b>, 2011.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/1102.3587v1\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><\/li>\n<li>Ronald Garcia, Andrew Lumsdaine, and Amr Sabry. <b>Lazy Evaluation and Delimited Control<\/b>. <em>Logical Methods in Computer Science<\/em>, Volume 6, Number 3, 2010.<\/li>\n<li><a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, Giovani Rubert Librelotto, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Reasoning about General Quantum Programs over Mixed States<\/b>. In the <em>Brazilian Symposium on Formal Methods<\/em>, SBMF 2009.<\/li>\n<li><a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, Andr\u00e9 Rauber Du Bois, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>The Arrow Calculus as a Quantum Programming Language<\/b>. In the <em>Workshop on Logic, Language, Information and Computation<\/em>, 2009.<br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/0903.1489\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><\/li>\n<li>\n<div id=\"item1480903\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Lazy evaluation and delimited control\" href=\"http:\/\/dl.acm.org\/authorize?160396\">Lazy evaluation and delimited control<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100378849\">Ronald Garcia<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100082403\">Andrew Lumsdaine<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nPOPL &#8217;09 Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages, 2009<\/div>\n<\/div>\n<div id=\"stats1480903\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Side Effects<\/b>. In the <em>Encyclopedia of Computer Science and Computer Engineering<\/em>, 2008.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/sideeffects.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~lvoufo\/\" target=\"_top\" rel=\"noopener noreferrer\">Larisse D. Voufo<\/a>, <a href=\"http:\/\/mypage.iu.edu\/~ortizg\/\" target=\"_top\" rel=\"noopener noreferrer\">Gerardo Ortiz<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Quantum Circuits: From a Network to a One-Way Model<\/b>. In <em>DCM-QPL<\/em>, 2008.<br \/>\nTutorial version appears as <a href=\"http:\/\/www.cs.indiana.edu\/cgi-bin\/techreports\/TRNNN.cgi?trnum=TR665\" target=\"_top\" rel=\"noopener noreferrer\">Technical Report 665, Computer Science Department, Indiana University, 2008.<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.uoregon.edu\/~ariola\" target=\"_top\" rel=\"noopener noreferrer\">Zena M. Ariola<\/a> and <a href=\"http:\/\/coq.inria.fr\/~herbelin\/\" target=\"_top\" rel=\"noopener noreferrer\">Hugo Herbelin<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>A Type-Theoretic Foundation of Delimited Continuations<\/b>. <em>Higher Order and Symbolic Computation<\/em>, ISSN 1388-3690 (Print) 1573-0557 (Online), October 2007.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/contFoundationLong.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/contFoundationLong.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li><a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, <a href=\"mailto:rocha ... atlas ucpel tche br\" target=\"_top\" rel=\"noopener noreferrer\">Ant\u00f4nio Carlos da Rocha Costa<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Structuring General and Complete Quantum Computations in Haskell: The Arrows Approach<\/b>. In: XX CTD &#8211; Concurso de Teses e Dissertacoes da SBC, Rio de Janeiro, RS, Brazil, 2007.<\/li>\n<li>\n<div id=\"item1516508\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Sequent calculi and abstract machines\" href=\"http:\/\/dl.acm.org\/authorize?188627\">Sequent calculi and abstract machines<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100218587\">Zena M. Ariola<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81314493648\">Aaron Bohannon<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nACM Transactions on Programming Languages and Systems (TOPLAS), 2009<\/div>\n<\/div>\n<div id=\"stats1516508\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/sequent_code.tar\" target=\"_top\" rel=\"noopener noreferrer\">Haskell code (tar file)<\/a><\/li>\n<li><a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, <a href=\"mailto:rocha ... atlas ucpel tche br\" target=\"_top\" rel=\"noopener noreferrer\">Ant\u00f4nio Carlos da Rocha Costa<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Quantum Arrows in Haskell<\/b>. In the Workshop on Quantum Programming Languages, 2006. Final version in ENTCS.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/quantumArrows.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item1159808\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Delimited dynamic binding\" href=\"http:\/\/dl.acm.org\/authorize?829700\">Delimited dynamic binding<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100177557\">Oleg Kiselyov<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100400956\">Chung-chieh Shan<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nICFP &#8217;06 Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming, 2006<\/div>\n<\/div>\n<div id=\"stats1159808\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~dyb\" target=\"_top\" rel=\"noopener noreferrer\">R. Kent Dybvig<\/a>, <a href=\"http:\/\/research.microsoft.com\/Users\/simonpj\/\" target=\"_top\" rel=\"noopener noreferrer\">Simon Peyton-Jones<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>A Monadic Framework for Delimited Continuations<\/b>. <em>J. Functional Programming<\/em>, volume 17 , issue 6, pages 687-730, November 2007.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/monadicDC.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/monadicDC.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"http:\/\/www.cs.indiana.edu\/cgi-bin\/techreports\/TRNNN.cgi?trnum=TR615\" target=\"_top\" rel=\"noopener noreferrer\">Tech. Rep. TR615, Computer Science Department, Indiana University, June 2005.<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/CC_code.tar.gz\" target=\"_top\" rel=\"noopener noreferrer\">Gzipped tar file with the code<\/a><\/li>\n<li><a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, <a href=\"http:\/\/www.cs.nott.ac.uk\/~txa\/\" target=\"_top\" rel=\"noopener noreferrer\">Thorsten Altenkirch<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Structuring Quantum Effects: Superoperators as Arrows<\/b>. <em>Mathematical Structures in Computer Science, 16(3), Jan. 2006.<\/em><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/super-arrows-j.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/super-arrows-j.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/quant-ph\/0501151\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><br \/>\nSlides (<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/quantum-effects-yale.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a>, <a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/quantum-effects-yale.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a>)<\/li>\n<li><a href=\"http:\/\/www.cs.nott.ac.uk\/~txa\/\" target=\"_top\" rel=\"noopener noreferrer\">Thorsten Altenkirch<\/a>, <a href=\"http:\/\/www.cs.nott.ac.uk\/~jjg\/\" target=\"_top\" rel=\"noopener noreferrer\">Jonathan Grattage<\/a>, <a href=\"http:\/\/www.inf.ufrgs.br\/~jkv\/\" target=\"_top\" rel=\"noopener noreferrer\">Juliana K. Vizzotto<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>An Algebra of Pure Quantum Programming<\/b>. In the Workshop on Quantum Programming Languages, 2005.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/qu-algebra.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/qu-algebra.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\n<a href=\"http:\/\/arxiv.org\/abs\/quant-ph\/0506012\" target=\"_top\" rel=\"noopener noreferrer\">arXiv entry<\/a><br \/>\nFinal version in the <i>Electronic Notes in Theoretical Computer Science<\/i>, vol. 170, pp. 23-47, 2007:<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/qu-algebra-final.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>\n<div id=\"item1086390\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Backtracking, interleaving, and terminating monad transformers: (functional pearl)\" href=\"http:\/\/dl.acm.org\/authorize?872703\">Backtracking, interleaving, and terminating monad transformers: (functional pearl)<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100177557\">Oleg Kiselyov<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100400956\">Chung-chieh Shan<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100636522\">Daniel P. Friedman<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nICFP &#8217;05 Proceedings of the tenth ACM SIGPLAN international conference on Functional programming, 2005<\/div>\n<\/div>\n<div id=\"stats1086390\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.uoregon.edu\/~ariola\" target=\"_top\" rel=\"noopener noreferrer\">Zena M. Ariola<\/a>, <a href=\"http:\/\/coq.inria.fr\/~herbelin\/\" target=\"_top\" rel=\"noopener noreferrer\">Hugo Herbelin<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>A Proof-Theoretic Foundation of Abortive Continuations<\/b>. <em>Higher-Order and Symbolic Computation<\/em>, volume 20, number 4, pages 403-429, December 2007.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/foundationAbortive.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/foundationAbortive.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><br \/>\nExtended version: <a href=\"http:\/\/www.cs.indiana.edu\/cgi-bin\/techreports\/TRNNN.cgi?trnum=TR608\" target=\"_top\" rel=\"noopener noreferrer\">Technical Report TR608, Computer Science Department, Indiana University, 2005.<\/a> (<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/foundationAbortive-TR.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a>, <a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/foundationAbortive-TR.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a>)<\/li>\n<li><a href=\"http:\/\/www.cis.upenn.edu\/~bohannon\/\" target=\"_top\" rel=\"noopener noreferrer\">Aaron Bohannon<\/a>, <a href=\"http:\/\/www.cs.uoregon.edu\/~ariola\" target=\"_top\" rel=\"noopener noreferrer\">Zena M. Ariola<\/a>, and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>A Typed Calculus Supporting Shallow Embeddings of Abstract Machines<\/b>. In the APPSEM-II Workshop on the Krivine and ZINC Abstract Machines (KAZAM), 2005.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/sequent-abstract.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>\n<div id=\"item1016860\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"A type-theoretic foundation of continuations and prompts\" href=\"http:\/\/dl.acm.org\/authorize?731311\">A type-theoretic foundation of continuations and prompts<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100218587\">Zena M. Ariola<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100052794\">Hugo Herbelin<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nACM SIGPLAN Notices &#8211; ICFP &#8217;04, 2004<\/div>\n<\/div>\n<div id=\"stats1016860\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/contF-talk.dvi\" target=\"_top\" rel=\"noopener noreferrer\">Slides<\/a> in <a href=\"http:\/\/pauillac.inria.fr\/advi\/\" target=\"_top\" rel=\"noopener noreferrer\">Active DVI<\/a> format.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/contF-talk.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Slides<\/a> in PDF (but missing special effects)<\/li>\n<li><a href=\"http:\/\/www.disi.unige.it\/person\/MoggiE\/\" target=\"_top\" rel=\"noopener noreferrer\">Eugenio Moggi<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>An Abstract Monadic Semantics for Value Recursion<\/b>. In <i>Theoretical Informatics and Applications<\/i>, Volume 38, Number 4, October-December 2004.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/mdo-ita.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/mdo-ita.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li>\n<div id=\"item989443\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"The essence of compiling with continuations\" href=\"http:\/\/dl.acm.org\/authorize?719266\">The essence of compiling with continuations<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100538763\">Cormac Flanagan<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100311653\">Bruce F. Duba<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100323458\">Matthias Felleisen<\/a><br \/>\nACM SIGPLAN Notices &#8211; Best of PLDI 1979-1999, 2004<\/div>\n<\/div>\n<div id=\"stats989443\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li>\n<div id=\"item871900\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Modeling quantum computing in Haskell\" href=\"http:\/\/dl.acm.org\/authorize?773048\">Modeling quantum computing in Haskell<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nHaskell &#8217;03 Proceedings of the 2003 ACM SIGPLAN workshop on Haskell, 2003<\/div>\n<\/div>\n<div id=\"stats871900\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/quantum-port.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a> (Brazilian Portuguese translation by <a href=\"mailto:rocha ... atlas ucpel tche br\" target=\"_top\" rel=\"noopener noreferrer\">Ant\u00f4nio Carlos da Rocha Costa<\/a>)<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/quantum.ppt\" target=\"_top\" rel=\"noopener noreferrer\">Slides<\/a><\/li>\n<li><a href=\"http:\/\/www.disi.unige.it\/person\/MoggiE\/\" target=\"_top\" rel=\"noopener noreferrer\">Eugenio Moggi<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>An Abstract Monadic Semantics for Value Recursion<\/b>. Proceeding of the 2003 Workshop on Fixed Points in Computer Science (FICS), April 2003.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/valuerecursion.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/valuerecursion.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~dfried\" target=\"_top\" rel=\"noopener noreferrer\">Daniel P. Friedman<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>CPS in Little Pieces: Composing Partial Continuations<\/b>. Final version appears as a Theoretical Pearl in <em>J. of Functional Programming<\/em> volume 12, number 6, pages 617-622, November 2002. Copyright \u00a9 2002 Cambridge University Press.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/cps-little.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item507646\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Macros as multi-stage computations: type-safe, generative, binding macros in MacroML\" href=\"http:\/\/dl.acm.org\/authorize?14109\">Macros as multi-stage computations: type-safe, generative, binding macros in MacroML<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100106414\">Steven E. Ganz<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100239752\">Walid Taha<\/a><br \/>\nICFP &#8217;01 Proceedings of the sixth ACM SIGPLAN international conference on Functional programming, 2001<\/div>\n<\/div>\n<div id=\"stats507646\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.disi.unige.it\/person\/MoggiE\/\" target=\"_top\" rel=\"noopener noreferrer\">Eugenio Moggi<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Monadic Encapsulation of Effects: A Revised Approach (Extended Version)<\/b>. Final version appears in <em>J. of Functional Programming<\/em>, volume 11, number 6, pages 591-627, November 2001. Copyright \u00a9 2001 Cambridge University Press.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/monadic-encap.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.uoregon.edu\/~xiao\" target=\"_top\" rel=\"noopener noreferrer\">Yong Xiao<\/a>, <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\">Amr Sabry<\/a>, and <a href=\"http:\/\/www.cs.uoregon.edu\/~ariola\/\">Zena M. Ariola<\/a>. <b>From Syntactic Theories to Interpreters: Automating the Proof of Unique Decomposition<\/b>. Final version appears in <em>Higher-Order and Symbolic Computation<\/em>, volume 14, number 4, pages 387-409, December 2001.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/unique-decomp.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~dfried\" target=\"_top\" rel=\"noopener noreferrer\">Daniel P. Friedman<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Recursion is a Computational Effect<\/b>. <a href=\"http:\/\/www.cs.indiana.edu\/cgi-bin\/techreports\/TRNNN.cgi?trnum=TR546\" target=\"_top\" rel=\"noopener noreferrer\">Tech. Rep. TR546, Computer Science Department, Indiana University, December 2000.<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/recursion-monads-tr.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/recursion-monads-tr.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> (ed.). <b>Proceedings of the Third ACM SIGPLAN Workshop on Continuations<\/b>. <a href=\"http:\/\/www.cs.indiana.edu\/cgi-bin\/techreports\/TRNNN.cgi?trnum=TR545\" target=\"_top\" rel=\"noopener noreferrer\">Technical Report TR545, Computer Science Department, Indiana University, 2000.<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/cw2001.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/cw2001.pdf\" target=\"_top\" rel=\"noopener noreferrer\">PDF<\/a><\/li>\n<li><a href=\"http:\/\/www.ccs.neu.edu\/~matthias\" target=\"_top\" rel=\"noopener noreferrer\">Matthias Felleisen<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Continuations in Programming Practice: Introduction and Survey<\/b>. Draft of August 26, 1999.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/continuations.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.uoregon.edu\/~johnfl\" target=\"_top\" rel=\"noopener noreferrer\">John Fiskio-Lasseter<\/a> and <a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Putting Operational Techniques to the Test: A Syntactic Theory for Behavioral Verilog<\/b>. In the <em>Third International Workshop on Higher Order Operational Techniques in Semantics<\/em>, 1999.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/verilog-axiomatization.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Declarative Programming Across the Undergraduate Curriculum<\/b>. In the <em>Workshop on Functional and Declarative Programming in Education<\/em>, 1999.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/fun-prog-educ.ps\" target=\"_top\" rel=\"noopener noreferrer\">FDPE Postscript<\/a><\/li>\n<li>\n<div id=\"item317777\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Monadic encapsulation in ML\" href=\"http:\/\/dl.acm.org\/authorize?60253\">Monadic encapsulation in ML<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100074426\">Miley Semmelroth<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nICFP &#8217;99 Proceedings of the fourth ACM SIGPLAN international conference on Functional programming, 1999<\/div>\n<\/div>\n<div id=\"stats317777\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> and <a href=\"http:\/\/www.cs.uoregon.edu\/~fickas\">Stephen Fickas<\/a>. <b>Java Access Modifiers in Parallel Universes<\/b>. Tech. Rep. CIS-TR-98-03, Dept. of Computer and Information Science, University of Oregon, 1998.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/java-security-tr.ps\" target=\"_top\" rel=\"noopener noreferrer\">Version 1 (Postscript)<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/java-security-tr.pdf\" target=\"_top\" rel=\"noopener noreferrer\">Version 1 (PDF)<\/a><br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/java-security.ps\" target=\"_top\" rel=\"noopener noreferrer\">Version 2 (Postscript)<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>A Programming Language Perspective to Compositional Software Architectures<\/b>. Position paper in the <em>Workshop on Compositional Software Architectures<\/em>, 1998.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/compositional.html\" target=\"_top\" rel=\"noopener noreferrer\">HTML<\/a><\/li>\n<li>\n<div id=\"item268952\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Correctness of monadic state: an imperative call-by-need calculus\" href=\"http:\/\/dl.acm.org\/authorize?88087\">Correctness of monadic state: an imperative call-by-need calculus<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100218587\">Zena M. Ariola<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nPOPL &#8217;98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, 1998<\/div>\n<\/div>\n<div id=\"stats268952\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>What is a Purely Functional Language?<\/b> In <em>J. Functional Programming<\/em>, 8(1), 1-22, Jan. 1998. Copyright \u00a9 1998 Cambridge University Press.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/purelyFunctional.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> and <a href=\"http:\/\/www.cs.chalmers.se\/~sparud\/\">Jan Sparud<\/a>. <b>Debugging Reactive Systems in Haskell<\/b>. In the ACM Haskell Workshop, 1997.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/debugging.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item258970\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Monadic state: axiomatization and type safety\" href=\"http:\/\/dl.acm.org\/authorize?87441\">Monadic state: axiomatization and type safety<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100462557\">John Launchbury<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nICFP &#8217;97 Proceedings of the second ACM SIGPLAN international conference on Functional programming, 1997<\/div>\n<\/div>\n<div id=\"stats258970\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li>\n<div id=\"item269968\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"A reflection on call-by-value\" href=\"http:\/\/dl.acm.org\/authorize?74968\">A reflection on call-by-value<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100173596\">Philip Wadler<\/a><br \/>\nACM Transactions on Programming Languages and Systems (TOPLAS), 1997<\/div>\n<\/div>\n<div id=\"stats269968\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li>\n<div id=\"item232631\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"A reflection on call-by-value\" href=\"http:\/\/dl.acm.org\/authorize?81589\">A reflection on call-by-value<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100173596\">Philip Wadler<\/a><br \/>\nICFP &#8217;96 Proceedings of the first ACM SIGPLAN international conference on Functional programming, 1996<\/div>\n<\/div>\n<div id=\"stats232631\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/reflection-tr.ps\" target=\"_top\" rel=\"noopener noreferrer\">TR Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>Note on Axiomatizing the Semantics of Control Operators<\/b>. Tech. Rep. CIS-TR-96-03, Dept. of Computer and Information Science, University of Oregon, 1996.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/grabbing.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item240882\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Proving the correctness of reactive systems using sized types\" href=\"http:\/\/dl.acm.org\/authorize?77672\">Proving the correctness of reactive systems using sized types<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100166325\">John Hughes<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81321488341\">Lars Pareto<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a><br \/>\nPOPL &#8217;96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, 1996<\/div>\n<\/div>\n<div id=\"stats240882\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a>. <b>The Formal Relationship between Direct and Continuation-Passing Style Optimizing Compilers: A Synthesis of Two Paradigms<\/b>. Tech. Rep. TR94-241, Dept. of Computer Science, Rice University, 1994.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/thesis.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item178244\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Is continuation-passing useful for data flow analysis?\" href=\"http:\/\/dl.acm.org\/authorize?77804\">Is continuation-passing useful for data flow analysis?<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100323458\">Matthias Felleisen<\/a><br \/>\nPLDI &#8217;94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, 1994<\/div>\n<\/div>\n<div id=\"stats178244\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/cps-flow-tr.ps\" target=\"_top\" rel=\"noopener noreferrer\">TR Postscript<\/a><\/li>\n<li>\n<div id=\"item155113\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"The essence of compiling with continuations\" href=\"http:\/\/dl.acm.org\/authorize?73194\">The essence of compiling with continuations<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100538763\">Cormac Flanagan<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100311653\">Bruce F. Duba<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100323458\">Matthias Felleisen<\/a><br \/>\nPLDI &#8217;93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation, 1993<\/div>\n<\/div>\n<div id=\"stats155113\" class=\"acmdlstat\"><\/div>\n<\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> and <a href=\"http:\/\/www.research.ibm.com\/people\/j\/jfield\/\">John Field<\/a>. <b>Reasoning about Explicit and Implicit Representations of State<\/b>. In the <em>ACM SIGPLAN Workshop on State in Programming Languages<\/em>, 17-30. Tech. Rep. YALEU\/DCS\/RR-968, Dept. of Computer Science, Yale University, 1993.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/store-sipl.ps\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> and <a href=\"http:\/\/www.ccs.neu.edu\/~matthias\">Matthias Felleisen<\/a>. <b>Reasoning with Continuations III: A Complete Calculus of Control<\/b>. Personal Note, 1993.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/reasoning-popl-sub.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li><a href=\"http:\/\/www.cs.indiana.edu\/~sabry\" target=\"_top\" rel=\"noopener noreferrer\">Amr Sabry<\/a> and <a href=\"http:\/\/www.ccs.neu.edu\/~matthias\">Matthias Felleisen<\/a>. <b>Reasoning about Programs in Continuation-Passing Style<\/b>. In <em>Lisp and Symbolic Computation<\/em>, 6, 3\/4, 289-360, 1993.<br \/>\n<a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/reasoning-lasc.ps\" target=\"_top\" rel=\"noopener noreferrer\">Postscript<\/a><\/li>\n<li>\n<div id=\"item141563\" class=\"acmdlitem\">\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dl.acm.org\/images\/oa.gif\" alt=\"ACM DL Author-ize service\" width=\"25\" height=\"25\" border=\"0\" \/><a title=\"Reasoning about programs in continuation-passing style.\" href=\"http:\/\/dl.acm.org\/authorize?92825\">Reasoning about programs in continuation-passing style.<\/a><\/p>\n<div><a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100016804\">Amr Sabry<\/a>, <a href=\"http:\/\/dl.acm.org\/author_page.cfm?id=81100323458\">Matthias Felleisen<\/a><br \/>\nLFP &#8217;92 Proceedings of the 1992 ACM conference on LISP and functional programming, 1992<\/div>\n<\/div>\n<div id=\"stats141563\" class=\"acmdlstat\"><\/div>\n<p><a href=\"https:\/\/cs.indiana.edu\/~sabry\/papers\/reasoning-tr.ps\">TR Postscript<\/a><\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Software GitHub Paul Purdom and Amr Sabry. CNF Generator for Factoring Problems, May 2003. The OJVM, 2000 (with an update in 2007) Research papers The following copyright notice applies to papers published in ACM conferences and workshops.Copyright \u00a9 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or&#8230;  <a class=\"excerpt-read-more\" href=\"https:\/\/amr-sabry.luddy.indiana.edu\/research\/\" title=\"Read Research\">Read more &raquo;<\/a><\/p>\n","protected":false},"author":625,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-28","page","type-page","status-publish","hentry","entry"],"_links":{"self":[{"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/pages\/28","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/users\/625"}],"replies":[{"embeddable":true,"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/comments?post=28"}],"version-history":[{"count":37,"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/pages\/28\/revisions"}],"predecessor-version":[{"id":146,"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/pages\/28\/revisions\/146"}],"wp:attachment":[{"href":"https:\/\/amr-sabry.luddy.indiana.edu\/wp-json\/wp\/v2\/media?parent=28"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}