{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,27]],"date-time":"2025-09-27T13:22:01Z","timestamp":1758979321121,"version":"3.40.5"},"reference-count":22,"publisher":"Cambridge University Press (CUP)","issue":"2","license":[{"start":{"date-parts":[[2020,11,16]],"date-time":"2020-11-16T00:00:00Z","timestamp":1605484800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["cambridge.org"],"crossmark-restriction":true},"short-container-title":["Theory and Practice of Logic Programming"],"published-print":{"date-parts":[[2021,3]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>ISO Prolog provides catch and throw to realize the control flow of exception handling. This pearl demonstrates that catch and throw are inconspicuously amenable to the implementation of backjumping. In fact, they have precisely the semantics required: rewinding the search to a specific point and carrying of a preserved term to that point. The utility of these properties is demonstrated through an implementation of graph coloring with backjumping and a backjumping SAT solver that applies conflict-driven clause learning.<\/jats:p>","DOI":"10.1017\/s1471068420000435","type":"journal-article","created":{"date-parts":[[2020,11,16]],"date-time":"2020-11-16T09:38:10Z","timestamp":1605519490000},"page":"125-144","update-policy":"https:\/\/doi.org\/10.1017\/policypage","source":"Crossref","is-referenced-by-count":3,"title":["Backjumping is Exception Handling"],"prefix":"10.1017","volume":"21","author":[{"given":"ED","family":"ROBBINS","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-5806-4822","authenticated-orcid":false,"given":"ANDY","family":"KING","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"JACOB M.","family":"HOWE","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"56","published-online":{"date-parts":[[2020,11,16]]},"reference":[{"key":"S1471068420000435_ref15","doi-asserted-by":"publisher","DOI":"10.1016\/S0004-3702(96)00027-6"},{"key":"S1471068420000435_ref9","doi-asserted-by":"publisher","DOI":"10.1016\/0004-3702(90)90046-3"},{"volume-title":"In Computer Aided Design","year":"1996","author":"Marques-Silva","key":"S1471068420000435_ref18"},{"key":"S1471068420000435_ref13","volume-title":"Lecture Notes in Computer Science","volume":"6009","author":"Howe","year":"2010"},{"key":"S1471068420000435_ref11","first-page":"1","article-title":"Logic + Control: On program construction and verification","volume":"1","author":"Drabent","year":"2018","journal-title":"Theory Practice of Logic Programming 18"},{"volume-title":"Programming Pearls","year":"1986","author":"Bentley","key":"S1471068420000435_ref2"},{"key":"S1471068420000435_ref17","first-page":"131","volume-title":"Handbook of Satisfiability","author":"Marques-Silva","year":"2009"},{"key":"S1471068420000435_ref16","doi-asserted-by":"publisher","DOI":"10.1145\/359131.359136"},{"key":"S1471068420000435_ref8","doi-asserted-by":"publisher","DOI":"10.1016\/0004-3702(86)90080-9"},{"key":"S1471068420000435_ref3","volume-title":"Artificial Intelligence","volume":"87","author":"Bruynooghe","year":"1980"},{"key":"S1471068420000435_ref6","unstructured":"Cooper, K. D. , Harvey, T. J. and Kennendy, K. 2006. A Simple, Fast Dominance Algorithm. Technical Report TR-06-33870, Rice University, Computer Science. URL: http:\/\/www.cs.rice.edu\/~keith\/EMBED\/dom.pdf."},{"key":"S1471068420000435_ref10","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-61411-8"},{"key":"S1471068420000435_ref14","doi-asserted-by":"publisher","DOI":"10.1016\/j.tcs.2012.02.024"},{"key":"S1471068420000435_ref21","doi-asserted-by":"publisher","DOI":"10.1016\/0004-3702(77)90029-7"},{"key":"S1471068420000435_ref1","unstructured":"Baljeu, A. 2005. Using Exceptions to Implement Backjumping? comp.lang.prolog newsgroup discussion. URL: http:\/\/coding.derkeiler.com\/Archive\/Prolog\/comp.lang.prolog\/2005-09\/msg00048.html."},{"key":"S1471068420000435_ref12","unstructured":"Gaschnig, J. 1979 . Performance Measurement and Analysis of Certain Search Algorithms. Ph.D. thesis, Carnegie Mellon University, Department of Computer Science, Pittsburgh, Pennsylvania 15213. CMU-CS-79-124."},{"key":"S1471068420000435_ref4","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068403001893"},{"key":"S1471068420000435_ref5","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068411000482"},{"key":"S1471068420000435_ref20","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2014.05.013"},{"key":"S1471068420000435_ref7","unstructured":"De Bosschere, K. and Jacquet, J. 1993. Multi-Prolog: Definition, operational semantics and implementation. In International Conference on Logic Programming. MIT Press, 299\u2013313."},{"key":"S1471068420000435_ref19","unstructured":"Moskewicz, M. , Madigan, C. , Zhao, Y. , Zhang, L. and Malik, S. 2001. Chaff: Engineering an efficient SAT solver. In Design Automation Conference. ACM Press, 530\u2013535."},{"key":"S1471068420000435_ref22","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068411000494"}],"container-title":["Theory and Practice of Logic Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S1471068420000435","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,3,29]],"date-time":"2021-03-29T09:58:09Z","timestamp":1617011889000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S1471068420000435\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,11,16]]},"references-count":22,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2021,3]]}},"alternative-id":["S1471068420000435"],"URL":"https:\/\/doi.org\/10.1017\/s1471068420000435","relation":{},"ISSN":["1471-0684","1475-3081"],"issn-type":[{"type":"print","value":"1471-0684"},{"type":"electronic","value":"1475-3081"}],"subject":[],"published":{"date-parts":[[2020,11,16]]},"assertion":[{"value":"\u00a9 The Author(s), 2020. Published by Cambridge University Press","name":"copyright","label":"Copyright","group":{"name":"copyright_and_licensing","label":"Copyright and Licensing"}},{"value":"This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (http:\/\/creativecommons.org\/licenses\/by\/4.0\/), which permits unrestricted re-use, distribution, and reproduction in any medium, provided the original work is properly cited.","name":"license","label":"License","group":{"name":"copyright_and_licensing","label":"Copyright and Licensing"}},{"value":"This content has been made available to all.","name":"free","label":"Free to read"}]}}