{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,11]],"date-time":"2026-01-11T20:34:03Z","timestamp":1768163643224,"version":"3.49.0"},"publisher-location":"Cham","reference-count":24,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030452599","type":"print"},{"value":"9783030452605","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"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2020]]},"DOI":"10.1007\/978-3-030-45260-5_10","type":"book-chapter","created":{"date-parts":[[2020,4,21]],"date-time":"2020-04-21T14:02:31Z","timestamp":1587477751000},"page":"159-176","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":7,"title":["An Integrated Approach to Assertion-Based Random Testing in Prolog"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-9196-7951","authenticated-orcid":false,"given":"Ignacio","family":"Casso","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6098-3895","authenticated-orcid":false,"given":"Jos\u00e9 F.","family":"Morales","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1092-2071","authenticated-orcid":false,"given":"Pedro","family":"L\u00f3pez-Garc\u00eda","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7583-323X","authenticated-orcid":false,"given":"Manuel V.","family":"Hermenegildo","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2020,4,22]]},"reference":[{"key":"10_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/978-3-319-07151-0_1","volume-title":"Functional and Logic Programming","author":"C Amaral","year":"2014","unstructured":"Amaral, C., Florido, M., Santos Costa, V.: PrologCheck \u2013 property-based testing in prolog. In: Codish, M., Sumii, E. (eds.) FLOPS 2014. LNCS, vol. 8475, pp. 1\u201317. Springer, Cham (2014). \nhttps:\/\/doi.org\/10.1007\/978-3-319-07151-0_1"},{"key":"10_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"322","DOI":"10.1007\/978-3-540-78969-7_23","volume-title":"Functional and Logic Programming","author":"J Christiansen","year":"2008","unstructured":"Christiansen, J., Fischer, S.: EasyCheck \u2014 test data for free. In: Garrigue, J., Hermenegildo, M.V. (eds.) FLOPS 2008. LNCS, vol. 4989, pp. 322\u2013336. Springer, Heidelberg (2008). \nhttps:\/\/doi.org\/10.1007\/978-3-540-78969-7_23"},{"key":"10_CR3","doi-asserted-by":"crossref","unstructured":"Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. In: Fifth ACM SIGPLAN International Conference on Functional Programming, ICFP 2000, pp. 268\u2013279. ACM (2000)","DOI":"10.1145\/357766.351266"},{"key":"10_CR4","doi-asserted-by":"crossref","unstructured":"Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of POPL 1977, pp. 238\u2013252. ACM Press (1977)","DOI":"10.1145\/512950.512973"},{"key":"10_CR5","doi-asserted-by":"crossref","unstructured":"Flanagan, C.: Hybrid type checking. In: 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, pp. 245\u2013256, January 2006","DOI":"10.1145\/1111037.1111059"},{"key":"10_CR6","unstructured":"G\u00f3mez-Zamalloa, M., Albert, E., Puebla, G.: On the generation of test data for prolog by partial evaluation. In: Proceedings of WLPE 2008, pp. 26\u201343 (2008)"},{"issue":"4\u20136","key":"10_CR7","doi-asserted-by":"publisher","first-page":"659","DOI":"10.1017\/S1471068410000347","volume":"10","author":"M G\u00f3mez-Zamalloa","year":"2010","unstructured":"G\u00f3mez-Zamalloa, M., Albert, E., Puebla, G.: Test case generation for object-oriented imperative languages in CLP. Theor. Pract. Logic Prog. 10(4\u20136), 659\u2013674 (2010). ICLP 2010 Special Issue","journal-title":"Theor. Pract. Logic Prog."},{"key":"10_CR8","first-page":"970","volume-title":"Encyclopedia of Software Engineering","author":"D Hamlet","year":"1994","unstructured":"Hamlet, D.: Random testing. In: Marciniak, J. (ed.) Encyclopedia of Software Engineering, pp. 970\u2013978. Wiley, New York (1994)"},{"key":"10_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"222","DOI":"10.1007\/978-3-319-63139-4_13","volume-title":"Logic-Based Program Synthesis and Transformation","author":"M Hanus","year":"2017","unstructured":"Hanus, M.: CurryCheck: checking properties of curry programs. In: Hermenegildo, M.V., Lopez-Garcia, P. (eds.) LOPSTR 2016. LNCS, vol. 10184, pp. 222\u2013239. Springer, Cham (2017). \nhttps:\/\/doi.org\/10.1007\/978-3-319-63139-4_13"},{"key":"10_CR10","doi-asserted-by":"crossref","unstructured":"Hennessy, M., Power, J.F.: An analysis of rule coverage as a criterion in generating minimal test suites for grammar-based software. In: 20th IEEE\/ACM International Conference on Automated Software Engineering (ASE 2005), pp. 104\u2013113, November 2005","DOI":"10.1145\/1101908.1101926"},{"issue":"1\u20132","key":"10_CR11","first-page":"219","volume":"12","author":"MV Hermenegildo","year":"2012","unstructured":"Hermenegildo, M.V., et al.: An overview of ciao and its design philosophy. TPLP 12(1\u20132), 219\u2013252 (2012). \nhttp:\/\/arxiv.org\/abs\/1102.5497","journal-title":"TPLP"},{"key":"10_CR12","doi-asserted-by":"publisher","first-page":"161","DOI":"10.1007\/978-3-642-60085-2_7","volume-title":"The Logic Programming Paradigm: A 25-Year Perspective","author":"MV Hermenegildo","year":"1999","unstructured":"Hermenegildo, M.V., Puebla, G., Bueno, F.: Using global analysis, partial specifications, and an extensible assertion language for program validation and debugging. In: Apt, K.R., Marek, V.W., Truszczynski, M., Warren, D.S. (eds.) The Logic Programming Paradigm: A 25-Year Perspective, pp. 161\u2013192. Springer, Heidelberg (1999). \nhttps:\/\/doi.org\/10.1007\/978-3-642-60085-2_7"},{"issue":"1\u20132","key":"10_CR13","doi-asserted-by":"publisher","first-page":"115","DOI":"10.1016\/j.scico.2005.02.006","volume":"58","author":"MV Hermenegildo","year":"2005","unstructured":"Hermenegildo, M.V., Puebla, G., Bueno, F., Lopez-Garcia, P.: Integrated program debugging, verification, and optimization using abstract interpretation (and the Ciao system preprocessor). Sci. Comput. Program. 58(1\u20132), 115\u2013140 (2005). \nhttps:\/\/doi.org\/10.1016\/j.scico.2005.02.006","journal-title":"Sci. Comput. Program."},{"key":"10_CR14","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1007\/978-3-540-69611-7_1","volume-title":"Practical Aspects of Declarative Languages","author":"J Hughes","year":"2006","unstructured":"Hughes, J.: QuickCheck testing for fun and profit. In: Hanus, M. (ed.) PADL 2007. LNCS, vol. 4354, pp. 1\u201332. Springer, Heidelberg (2006). \nhttps:\/\/doi.org\/10.1007\/978-3-540-69611-7_1"},{"key":"10_CR15","unstructured":"Jacobs, D., Langen, A.: Accurate and efficient approximation of variable aliasing in logic programs. In: North American Conference on Logic Programming (1989)"},{"key":"10_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"281","DOI":"10.1007\/978-3-642-02846-5_25","volume-title":"Logic Programming","author":"E Mera","year":"2009","unstructured":"Mera, E., Lopez-Garc\u00eda, P., Hermenegildo, M.: Integrating software testing and run-time checking in an assertion verification framework. In: Hill, P.M., Warren, D.S. (eds.) ICLP 2009. LNCS, vol. 5649, pp. 281\u2013295. Springer, Heidelberg (2009). \nhttps:\/\/doi.org\/10.1007\/978-3-642-02846-5_25"},{"key":"10_CR17","doi-asserted-by":"publisher","unstructured":"Midtgaard, J., M\u00f8ller, A.: QuickChecking static analysis properties. Softw. Test. Verif. Reliab. 27(6) (2017). \nhttps:\/\/doi.org\/10.1002\/stvr.1640","DOI":"10.1002\/stvr.1640"},{"issue":"12","key":"10_CR18","doi-asserted-by":"publisher","first-page":"32","DOI":"10.1145\/96267.96279","volume":"33","author":"BP Miller","year":"1990","unstructured":"Miller, B.P., Fredriksen, L., So, B.: An empirical study of the reliability of UNIX utilities. Commun. ACM 33(12), 32\u201344 (1990). \nhttps:\/\/doi.org\/10.1145\/96267.96279","journal-title":"Commun. ACM"},{"key":"10_CR19","unstructured":"Muthukumar, K., Hermenegildo, M.: Combined determination of sharing and freeness of program variables through abstract interpretation. In: ICLP 1991, pp. 49\u201363. MIT Press (June 1991)"},{"key":"10_CR20","doi-asserted-by":"crossref","unstructured":"Papadakis, M., Sagonas, K.: A PropEr integration of types and function specifications with property-based testing. In: 10th ACM SIGPLAN Workshop On Erlang, pp. 39\u201350, September 2011","DOI":"10.1145\/2034654.2034663"},{"key":"10_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"273","DOI":"10.1007\/10720327_16","volume-title":"Logic-Based Program Synthesis and Transformation","author":"G Puebla","year":"2000","unstructured":"Puebla, G., Bueno, F., Hermenegildo, M.: Combined static and dynamic assertion-based debugging of constraint logic programs. In: Bossi, A. (ed.) LOPSTR 1999. LNCS, vol. 1817, pp. 273\u2013292. Springer, Heidelberg (2000). \nhttps:\/\/doi.org\/10.1007\/10720327_16"},{"key":"10_CR22","doi-asserted-by":"crossref","unstructured":"Rastogi, A., Swamy, N., Fournet, C., Bierman, G., Vekris, P.: Safe & efficient gradual typing for typescript. In: 42nd POPL, pp. 167\u2013180. ACM, January 2015","DOI":"10.1145\/2775051.2676971"},{"key":"10_CR23","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1016\/j.scico.2013.05.008","volume":"84","author":"T Schrijvers","year":"2014","unstructured":"Schrijvers, T., Demoen, B., Triska, M., Desouter, B.: Tor: modular search with hookable disjunction. Sci. Comput. Program. 84, 101\u2013120 (2014)","journal-title":"Sci. Comput. Program."},{"key":"10_CR24","unstructured":"Siek, J.G., Taha, W.: Gradual typing for functional languages. In: Scheme and Functional Programming Workshop, pp. 81\u201392 (2006)"}],"container-title":["Lecture Notes in Computer Science","Logic-Based Program Synthesis and Transformation"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-45260-5_10","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,4,21]],"date-time":"2020-04-21T14:03:15Z","timestamp":1587477795000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-45260-5_10"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"ISBN":["9783030452599","9783030452605"],"references-count":24,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-45260-5_10","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":"22 April 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"LOPSTR","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Logic-Based Program Synthesis and Transformation","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Porto","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Portugal","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"8 October 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"10 October 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"29","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"lopstr2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.cs.unibo.it\/projects\/lopstr19\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Easychair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"32","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":"15","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":"0","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":"47% - 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":"6","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":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}