{"id":"https://openalex.org/W2061793830","doi":"https://doi.org/10.1145/2505879.2505880","title":"Random testing of purely functional abstract datatypes","display_name":"Random testing of purely functional abstract datatypes","publication_year":2013,"publication_date":"2013-09-16","ids":{"openalex":"https://openalex.org/W2061793830","doi":"https://doi.org/10.1145/2505879.2505880","mag":"2061793830"},"language":"en","primary_location":{"id":"doi:10.1145/2505879.2505880","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2505879.2505880","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5007122961","display_name":"Stefan Holdermans","orcid":null},"institutions":[{"id":"https://openalex.org/I4210165893","display_name":"Vector Fabrics (Netherlands)","ror":"https://ror.org/05x9r8j38","country_code":"NL","type":"company","lineage":["https://openalex.org/I4210165893"]}],"countries":["NL"],"is_corresponding":true,"raw_author_name":"Stefan Holdermans","raw_affiliation_strings":["Vector Fabrics"],"affiliations":[{"raw_affiliation_string":"Vector Fabrics","institution_ids":["https://openalex.org/I4210165893"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5007122961"],"corresponding_institution_ids":["https://openalex.org/I4210165893"],"apc_list":null,"apc_paid":null,"fwci":1.9442,"has_fulltext":false,"cited_by_count":7,"citation_normalized_percentile":{"value":0.86565295,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"275","last_page":"284"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9997000098228455,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7757205963134766},{"id":"https://openalex.org/keywords/random-testing","display_name":"Random testing","score":0.7688531875610352},{"id":"https://openalex.org/keywords/equivalence","display_name":"Equivalence (formal languages)","score":0.587681770324707},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5809938907623291},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.5772396326065063},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.5646386742591858},{"id":"https://openalex.org/keywords/property","display_name":"Property (philosophy)","score":0.5623281002044678},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5035015940666199},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.49353063106536865},{"id":"https://openalex.org/keywords/relation","display_name":"Relation (database)","score":0.42759954929351807},{"id":"https://openalex.org/keywords/algebraic-number","display_name":"Algebraic number","score":0.41187578439712524},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.16931092739105225},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.15479999780654907},{"id":"https://openalex.org/keywords/test-case","display_name":"Test case","score":0.14872893691062927},{"id":"https://openalex.org/keywords/machine-learning","display_name":"Machine learning","score":0.1165686845779419},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.10159933567047119}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7757205963134766},{"id":"https://openalex.org/C106159264","wikidata":"https://www.wikidata.org/wiki/Q17146789","display_name":"Random testing","level":4,"score":0.7688531875610352},{"id":"https://openalex.org/C2780069185","wikidata":"https://www.wikidata.org/wiki/Q7977945","display_name":"Equivalence (formal languages)","level":2,"score":0.587681770324707},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5809938907623291},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.5772396326065063},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5646386742591858},{"id":"https://openalex.org/C189950617","wikidata":"https://www.wikidata.org/wiki/Q937228","display_name":"Property (philosophy)","level":2,"score":0.5623281002044678},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5035015940666199},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.49353063106536865},{"id":"https://openalex.org/C25343380","wikidata":"https://www.wikidata.org/wiki/Q277521","display_name":"Relation (database)","level":2,"score":0.42759954929351807},{"id":"https://openalex.org/C9376300","wikidata":"https://www.wikidata.org/wiki/Q168817","display_name":"Algebraic number","level":2,"score":0.41187578439712524},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.16931092739105225},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.15479999780654907},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.14872893691062927},{"id":"https://openalex.org/C119857082","wikidata":"https://www.wikidata.org/wiki/Q2539","display_name":"Machine learning","level":1,"score":0.1165686845779419},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.10159933567047119},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C152877465","wikidata":"https://www.wikidata.org/wiki/Q208042","display_name":"Regression analysis","level":2,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2505879.2505880","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2505879.2505880","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":30,"referenced_works":["https://openalex.org/W811029122","https://openalex.org/W1507693023","https://openalex.org/W1546727036","https://openalex.org/W1556536463","https://openalex.org/W1571865305","https://openalex.org/W1584679527","https://openalex.org/W1587553526","https://openalex.org/W1829244603","https://openalex.org/W1974817955","https://openalex.org/W1992067231","https://openalex.org/W1998875295","https://openalex.org/W2016320988","https://openalex.org/W2030358379","https://openalex.org/W2044933512","https://openalex.org/W2074077414","https://openalex.org/W2074789981","https://openalex.org/W2083302545","https://openalex.org/W2105045857","https://openalex.org/W2107214848","https://openalex.org/W2110050316","https://openalex.org/W2115170161","https://openalex.org/W2119717320","https://openalex.org/W2134338128","https://openalex.org/W2156076209","https://openalex.org/W2162661340","https://openalex.org/W2276797782","https://openalex.org/W2913989085","https://openalex.org/W2914227004","https://openalex.org/W3023216518","https://openalex.org/W4244488020"],"related_works":["https://openalex.org/W2122128531","https://openalex.org/W2120447654","https://openalex.org/W2977179488","https://openalex.org/W2144453115","https://openalex.org/W2744553356","https://openalex.org/W2153411587","https://openalex.org/W2128223750","https://openalex.org/W4238532390","https://openalex.org/W2188872161","https://openalex.org/W2170030045"],"abstract_inverted_index":{"Algebraic":[0],"specification,":[1],"equational":[2],"reasoning,":[3],"and":[4,23,51,97],"property-based":[5,38],"random":[6,39,125],"testing":[7,40],"provide":[8],"functional":[9,43,129],"programmers":[10],"with":[11,57],"a":[12,58,109,119],"powerful":[13],"yet":[14],"reasonably":[15],"lightweight":[16],"framework":[17],"for":[18,41,123],"reasoning":[19],"about":[20,63],"abstract":[21,44],"datatypes":[22,45],"assuring":[24],"the":[25,77,83,106,113],"quality":[26],"of":[27,61,85,108,127],"their":[28,64],"concrete":[29,110],"implementations.":[30,66],"However,":[31],"as":[32],"it":[33],"turns":[34],"out,":[35],"na\u00efvely":[36],"implementing":[37],"purely":[42,128],"is":[46],"prone":[47],"to":[48,79,100],"subtle":[49],"errors":[50],"may":[52],"well":[53],"leave":[54],"unaware":[55],"practitioners":[56],"false":[59],"sense":[60],"security":[62],"datatype":[65,86,95],"In":[67],"this":[68],"paper,":[69],"we":[70],"pinpoint":[71],"one":[72],"particular":[73],"pitfall,":[74],"namely":[75],"overlooking":[76],"need":[78],"take":[80],"into":[81,118],"account":[82],"invariance":[84],"operations":[87],"under":[88],"an":[89],"implied":[90],"equivalence":[91],"relation":[92],"on":[93],"concreate":[94],"values,":[96],"discuss":[98],"how":[99],"systematically":[101],"avoid":[102],"it.":[103],"Presented":[104],"in":[105],"context":[107],"case":[111],"study,":[112],"proposed":[114],"technique":[115],"generalises":[116],"nicely":[117],"common":[120],"design":[121],"principle":[122],"engineering":[124],"tests":[126],"datastructures.":[130]},"counts_by_year":[{"year":2018,"cited_by_count":1},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
