{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,11]],"date-time":"2026-05-11T17:26:02Z","timestamp":1778520362602,"version":"3.51.4"},"publisher-location":"Cham","reference-count":32,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030644369","type":"print"},{"value":"9783030644376","type":"electronic"}],"license":[{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2020]]},"DOI":"10.1007\/978-3-030-64437-6_9","type":"book-chapter","created":{"date-parts":[[2020,11,26]],"date-time":"2020-11-26T13:02:45Z","timestamp":1606395765000},"page":"167-185","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":8,"title":["Certified Semantics for Relational Programming"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-7882-4497","authenticated-orcid":false,"given":"Dmitry","family":"Rozplokhas","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0528-8798","authenticated-orcid":false,"given":"Andrey","family":"Vyatkin","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8363-7143","authenticated-orcid":false,"given":"Dmitry","family":"Boulytchev","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2020,11,24]]},"reference":[{"key":"9_CR1","unstructured":"Alvis, C.E., Willcock, J.J., Carter, K.M., Byrd, W.E., Friedman, D.P.: cKanren: miniKanren with constraints. In: Proceedings of the 2011 Annual Workshop on Scheme and Functional Programming (2011)"},{"issue":"5","key":"9_CR2","doi-asserted-by":"publisher","first-page":"657","DOI":"10.1145\/504709.504712","volume":"23","author":"AW Appel","year":"2001","unstructured":"Appel, A.W., McAllester, D.A.: An indexed model of recursive types for foundational proof-carrying code. ACM Trans. Program. Lang. Syst. 23(5), 657\u2013683 (2001)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"9_CR3","doi-asserted-by":"crossref","unstructured":"Baader, F., Snyder, W.: Handbook of automated reasoning. In: Unification Theory. Elsevier Science Publishers B. V., Amsterdam, The Netherlands (2001)","DOI":"10.1016\/B978-044450813-3\/50010-2"},{"key":"9_CR4","doi-asserted-by":"crossref","unstructured":"Bertot, Y., Cast\u00e9ran, P.: Interactive Theorem Proving and Program Development - Coq\u2019Art: The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. An EATCS Series. Springer (2004)","DOI":"10.1007\/978-3-662-07964-5"},{"key":"9_CR5","unstructured":"Bove, A.: Programming in martin-l\u00f6f type theory: Unification - a non-trivial example, pp. 22\u201342, Department of Computer Science, Chalmers University of Technology (1999)"},{"key":"9_CR6","unstructured":"Byrd, W.E.: Relational Programming in miniKanren: Techniques, Applications, and Implementations. PhD thesis, Indiana University (2009)"},{"key":"9_CR7","unstructured":"Byrd, W.E., Friedman, D.P.: $$\\alpha $$kanren: a fresh name in nominal logic programming. In: Proceedings of the 2007 Annual Workshop on Scheme and Functional Programming, pp. 79\u201390 (2007)"},{"key":"9_CR8","unstructured":"Byrd, W.E., Friedman, D.P., Kumar, R., Near, J.P.: A shallow Scheme embedding of bottom-avoiding streams. In: To appear in a special issue of Higher-Order and Symbolic Computation, in honor of Mitchell Wand\u2019s 60th birthday"},{"key":"9_CR9","doi-asserted-by":"crossref","unstructured":"Chlipala, A.: Certified Programming with Dependent Types - A Pragmatic Introduction to the Coq Proof Assistant. MIT Press, Cambridge (2013)","DOI":"10.7551\/mitpress\/9153.001.0001"},{"key":"9_CR10","unstructured":"Debray, S.K., Mishra, P.: Denotational and operational semantics for PROLOG. In: Formal Description of Programming Concepts - III: Proceedings of the IFIP TC 2\/WG 2.2 Working Conference on Formal Description of Programming Concepts - III, Ebberup, Denmark, 25\u201328 August 1986, pp. 245\u2013274 (1987)"},{"key":"9_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"124","DOI":"10.1007\/BFb0014049","volume-title":"Typed Lambda Calculi and Applications","author":"J Despeyroux","year":"1995","unstructured":"Despeyroux, J., Felty, A., Hirschowitz, A.: Higher-order abstract syntax in Coq. In: Dezani-Ciancaglini, M., Plotkin, G. (eds.) TLCA 1995. LNCS, vol. 902, pp. 124\u2013138. Springer, Heidelberg (1995). https:\/\/doi.org\/10.1007\/BFb0014049"},{"key":"9_CR12","doi-asserted-by":"crossref","unstructured":"Friedman, D.P., Byrd, W.E., Kiselyov, O.: The Reasoned Schemer. MIT Press, Cambridge (2005)","DOI":"10.7551\/mitpress\/5801.001.0001"},{"key":"9_CR13","unstructured":"Hemann, J., Friedman, D.P.: $$\\mu $$Kanren: a minimal functional core for relational programming. In: Proceedings of the 2013 Annual Workshop on Scheme and Functional Programming (2013)"},{"key":"9_CR14","unstructured":"Hemann, J., Friedman, D.P.: A framework for extending microKanren with constraints. In Proceedings 29th and 30th Workshops on (Constraint) Logic Programming and 24th International Workshop on Functional and (Constraint) Logic Programming, WLP 2015 \/ WLP 2016 \/ WFLP 2016, Dresden and Leipzig, Germany, 22nd September 2015 and 12\u201314th September 2016, pp. 135\u2013149 (2017)"},{"key":"9_CR15","doi-asserted-by":"crossref","unstructured":"Hemann, J., Friedman, D.P., Byrd, W.E., Might, M.: A small embedding of logic programming with a simple complete search. In: Proceedings of the 12th Symposium on Dynamic Languages, DLS 2016, Amsterdam, The Netherlands, 1 Nov 2016, pp. 96\u2013107 (2016)","DOI":"10.1145\/2989225.2989230"},{"key":"9_CR16","unstructured":"Jones, N.D., Mycroft, A.: Stepwise development of operational and denotational semantics for Prolog. In: Proceedings of the 1984 International Symposium on Logic Programming, Atlantic City, New Jersey, USA, 6\u20139 Feb 1984, pp. 281\u2013288 (1984)"},{"issue":"7","key":"9_CR17","doi-asserted-by":"publisher","first-page":"371","DOI":"10.1145\/360248.360251","volume":"19","author":"RM Keller","year":"1976","unstructured":"Keller, R.M.: Formal verification of parallel programs. Commun. ACM 19(7), 371\u2013384 (1976)","journal-title":"Commun. ACM"},{"key":"9_CR18","doi-asserted-by":"crossref","unstructured":"Kiselyov, O., Shan, C., Friedman, D.P., Sabry, A.: Backtracking, interleaving, and terminating monad transformers: (functional pearl), pp. 192\u2013203 (2005)","DOI":"10.1145\/1090189.1086390"},{"key":"9_CR19","doi-asserted-by":"crossref","unstructured":"Kothari, S., Caldwell, J.: A machine checked model of idempotent MGU axioms for lists of equational constraints. In: Proceedings 24th International Workshop on Unification, UNIF 2010, Edinburgh, United Kingdom, 14th July 2010, pp. 24\u201338 (2010)","DOI":"10.4204\/EPTCS.42.3"},{"key":"9_CR20","doi-asserted-by":"crossref","unstructured":"Kriener, J., King, A.: Semantics for Prolog with cut - revisited. In: Functional and Logic Programming - 12th International Symposium, FLOPS 2014, Kanazawa, Japan, 4\u20136 June 2014, Proceedings, pp. 270\u2013284 (2014)","DOI":"10.1007\/978-3-319-07151-0_17"},{"key":"9_CR21","doi-asserted-by":"crossref","unstructured":"Kriener, J., King, A., Blazy, S.: Proofs you can believe. In: proving equivalences between Prolog semantics in Coq. In: 15th International Symposium on Principles and Practice of Declarative Programming, PPDP \u201913, Madrid, Spain, 16\u201318 Sept 2013, pp. 37\u201348 (2013)","DOI":"10.1145\/2505879.2505886"},{"key":"9_CR22","unstructured":"Kumar, R.: Mechanising aspects of miniKanren in HOL. Bachelor Thesis, The Australian National University (2010)"},{"key":"9_CR23","doi-asserted-by":"crossref","unstructured":"Lloyd, J.W.: Foundations of Logic Programming, 1st edn. Springer (1984)","DOI":"10.1007\/978-3-642-96826-6_1"},{"key":"9_CR24","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"39","DOI":"10.1007\/978-3-319-89719-6_3","volume-title":"Trends in Functional Programming","author":"P Lozov","year":"2018","unstructured":"Lozov, P., Vyatkin, A., Boulytchev, D.: Typed relational conversion. In: Wang, M., Owens, S. (eds.) TFP 2017. LNCS, vol. 10788, pp. 39\u201358. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-89719-6_3"},{"issue":"6","key":"9_CR25","doi-asserted-by":"publisher","first-page":"1061","DOI":"10.1017\/S0956796803004957","volume":"13","author":"C McBride","year":"2003","unstructured":"McBride, C.: First-order unification by structural recursion. J. Funct. Program. 13(6), 1061\u20131075 (2003)","journal-title":"J. Funct. Program."},{"issue":"2","key":"9_CR26","doi-asserted-by":"publisher","first-page":"143","DOI":"10.1016\/0167-6423(85)90009-7","volume":"5","author":"LC Paulson","year":"1985","unstructured":"Paulson, L.C.: Verifying the unification algorithm in LCF. Sci. Comput. Program. 5(2), 143\u2013169 (1985)","journal-title":"Sci. Comput. Program."},{"key":"9_CR27","doi-asserted-by":"crossref","unstructured":"Pfenning, F., Elliott, C.: Higher-Order Abstract Syntax, pp. 199\u2013208 (1988)","DOI":"10.1145\/960116.54010"},{"key":"9_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1007\/978-3-319-29473-5_8","volume-title":"Formal Methods: Foundations and Applications","author":"R Ribeiro","year":"2016","unstructured":"Ribeiro, R., Camar\u00e3o, C.: A mechanized textbook proof of a type unification algorithm. In: Corn\u00e9lio, M., Roscoe, B. (eds.) SBMF 2015. LNCS, vol. 9526, pp. 127\u2013141. Springer, Cham (2016). https:\/\/doi.org\/10.1007\/978-3-319-29473-5_8"},{"key":"9_CR29","doi-asserted-by":"crossref","unstructured":"Rozplokhas, D., Boulytchev, D.: Improving refutational completeness of relational search via divergence test. In: Proceedings of the 20th International Symposium on Principles and Practice of Declarative Programming, PPDP 2018, Frankfurt am Main, Germany, 03\u201305 Sept 2018, pp. 18:1\u201318:13 (2018)","DOI":"10.1145\/3236950.3236958"},{"key":"9_CR30","unstructured":"Swords, C., Friedman, D.P.: rKanren: guided search in miniKanren. In: Proceedings of the 2013 Annual Workshop on Scheme and Functional Programming (2013)"},{"key":"9_CR31","doi-asserted-by":"publisher","first-page":"06","DOI":"10.2140\/pjm.1955.5.285","volume":"5","author":"A Tarski","year":"1955","unstructured":"Tarski, A.: A lattice-theoretical fixpoint theorem and its applications. Pac. J. Math. 5, 06 (1955)","journal-title":"Pac. J. Math."},{"key":"9_CR32","doi-asserted-by":"crossref","unstructured":"Wadler, P.: Monads for functional programming. In: Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques, B\u00e5stad, Sweden, 24\u201330 May 1995, Tutorial Text, pp. 24\u201352 (1995)","DOI":"10.1007\/3-540-59451-5_2"}],"container-title":["Lecture Notes in Computer Science","Programming Languages and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-64437-6_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,4,24]],"date-time":"2021-04-24T01:49:05Z","timestamp":1619228945000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-64437-6_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"ISBN":["9783030644369","9783030644376"],"references-count":32,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-64437-6_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020]]},"assertion":[{"value":"24 November 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"APLAS","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Asian Symposium on Programming Languages and Systems","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Fukuoka","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Japan","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2020","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"30 November 2020","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2 December 2020","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"18","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"aplas2020","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conf.researchr.org\/home\/aplas-2020\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Double-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Hotcrp.com","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"46","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"17","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"2","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"37% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"The conference was held virtually due to the COVID-19 pandemic.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}