{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:41:20Z","timestamp":1750308080654,"version":"3.41.0"},"reference-count":4,"publisher":"Association for Computing Machinery (ACM)","issue":"89","license":[{"start":{"date-parts":[[1984,7,1]],"date-time":"1984-07-01T00:00:00Z","timestamp":457488000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGART Bull."],"published-print":{"date-parts":[[1984,7]]},"abstract":"<jats:p>In the last few issues of SIGART there have appeared (#82, 83 &amp; 85) three articles on Mastermind programmes, the latest of which, by Ehud Shapiro [1], presents a PROLOG version of the best known algorithm for the oldest form of the game-Bull-cow. This paper presents some improvements to this programme and uses it as an example in making some general points about PROLOG. Shapiro's programme is simple and demonstrates the power of PROLOG for implementing a quick solution using a well understood algorithm. My comments concern some changes to assist readability, to improve generality, and to develop a different, more efficient derivative of the algorithm.<\/jats:p>","DOI":"10.1145\/1056521.1056526","type":"journal-article","created":{"date-parts":[[2007,1,17]],"date-time":"2007-01-17T18:32:02Z","timestamp":1169058722000},"page":"28-32","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Playing Mastermind more logically or writing Prolog more efficiently"],"prefix":"10.1145","author":[{"given":"David M. W.","family":"Powers","sequence":"first","affiliation":[{"name":"University of New South Wales"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[1984,7]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1056635.1056637"},{"key":"e_1_2_1_2_1","unstructured":"R. Kowalski \"Logic for Problem Solving\" North Holland New York 1979.   R. Kowalski \"Logic for Problem Solving\" North Holland New York 1979."},{"key":"e_1_2_1_3_1","unstructured":"W. F. Clocksin C. S. Mellish \"Programming in Prolog\" Springer-Verlag Berlin 1981.   W. F. Clocksin C. S. Mellish \"Programming in Prolog\" Springer-Verlag Berlin 1981."},{"volume-title":"Department of Computer Science","year":"1983","author":"Powers G. B.","key":"e_1_2_1_4_1"}],"container-title":["ACM SIGART Bulletin"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1056521.1056526","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1056521.1056526","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T16:07:41Z","timestamp":1750262861000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1056521.1056526"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1984,7]]},"references-count":4,"journal-issue":{"issue":"89","published-print":{"date-parts":[[1984,7]]}},"alternative-id":["10.1145\/1056521.1056526"],"URL":"https:\/\/doi.org\/10.1145\/1056521.1056526","relation":{},"ISSN":["0163-5719"],"issn-type":[{"type":"print","value":"0163-5719"}],"subject":[],"published":{"date-parts":[[1984,7]]},"assertion":[{"value":"1984-07-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}