{"id":"https://openalex.org/W4376505296","doi":"https://doi.org/10.1145/3596453","title":"Fingerprinting-based Minimal Perfect Hashing Revisited","display_name":"Fingerprinting-based Minimal Perfect Hashing Revisited","publication_year":2023,"publication_date":"2023-05-13","ids":{"openalex":"https://openalex.org/W4376505296","doi":"https://doi.org/10.1145/3596453"},"language":"en","primary_location":{"id":"doi:10.1145/3596453","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3596453","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3596453","source":{"id":"https://openalex.org/S201104086","display_name":"ACM Journal of Experimental Algorithmics","issn_l":"1084-6654","issn":["1084-6654"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Journal of Experimental Algorithmics","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3596453","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5068640553","display_name":"Piotr Beling","orcid":"https://orcid.org/0000-0003-3048-3704"},"institutions":[{"id":"https://openalex.org/I34250744","display_name":"University of \u0141\u00f3d\u017a","ror":"https://ror.org/05cq64r17","country_code":"PL","type":"education","lineage":["https://openalex.org/I34250744"]}],"countries":["PL"],"is_corresponding":true,"raw_author_name":"Piotr Beling","raw_affiliation_strings":["Faculty of Mathematics and Computer Science, University of \u0141\u00f3d\u017a , Poland"],"raw_orcid":"https://orcid.org/0000-0003-3048-3704","affiliations":[{"raw_affiliation_string":"Faculty of Mathematics and Computer Science, University of \u0141\u00f3d\u017a , Poland","institution_ids":["https://openalex.org/I34250744"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5068640553"],"corresponding_institution_ids":["https://openalex.org/I34250744"],"apc_list":null,"apc_paid":null,"fwci":0.3875,"has_fulltext":true,"cited_by_count":4,"citation_normalized_percentile":{"value":0.53508833,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":97},"biblio":{"volume":"28","issue":null,"first_page":"1","last_page":"16"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10627","display_name":"Advanced Image and Video Retrieval Techniques","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1707","display_name":"Computer Vision and Pattern Recognition"},"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/T10627","display_name":"Advanced Image and Video Retrieval Techniques","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1707","display_name":"Computer Vision and Pattern Recognition"},"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/T11269","display_name":"Algorithms and Data Compression","score":0.9976999759674072,"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/T12029","display_name":"DNA and Biological Computing","score":0.9815999865531921,"subfield":{"id":"https://openalex.org/subfields/1312","display_name":"Molecular Biology"},"field":{"id":"https://openalex.org/fields/13","display_name":"Biochemistry, Genetics and Molecular Biology"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/hash-function","display_name":"Hash function","score":0.8091025352478027},{"id":"https://openalex.org/keywords/perfect-hash-function","display_name":"Perfect hash function","score":0.7898359298706055},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7305858135223389},{"id":"https://openalex.org/keywords/dynamic-perfect-hashing","display_name":"Dynamic perfect hashing","score":0.5641022324562073},{"id":"https://openalex.org/keywords/hash-table","display_name":"Hash table","score":0.5533223748207092},{"id":"https://openalex.org/keywords/simple","display_name":"Simple (philosophy)","score":0.5303913950920105},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.47443094849586487},{"id":"https://openalex.org/keywords/k-independent-hashing","display_name":"K-independent hashing","score":0.46321043372154236},{"id":"https://openalex.org/keywords/rank","display_name":"Rank (graph theory)","score":0.46256929636001587},{"id":"https://openalex.org/keywords/linear-hashing","display_name":"Linear hashing","score":0.44778358936309814},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.44300851225852966},{"id":"https://openalex.org/keywords/universal-hashing","display_name":"Universal hashing","score":0.44144678115844727},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.4411182999610901},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.4193107485771179},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3622995615005493},{"id":"https://openalex.org/keywords/double-hashing","display_name":"Double hashing","score":0.26702141761779785},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.22274339199066162},{"id":"https://openalex.org/keywords/combinatorics","display_name":"Combinatorics","score":0.10974553227424622}],"concepts":[{"id":"https://openalex.org/C99138194","wikidata":"https://www.wikidata.org/wiki/Q183427","display_name":"Hash function","level":2,"score":0.8091025352478027},{"id":"https://openalex.org/C87431388","wikidata":"https://www.wikidata.org/wiki/Q2070573","display_name":"Perfect hash function","level":4,"score":0.7898359298706055},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7305858135223389},{"id":"https://openalex.org/C122907437","wikidata":"https://www.wikidata.org/wiki/Q5318999","display_name":"Dynamic perfect hashing","level":5,"score":0.5641022324562073},{"id":"https://openalex.org/C67388219","wikidata":"https://www.wikidata.org/wiki/Q207440","display_name":"Hash table","level":3,"score":0.5533223748207092},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.5303913950920105},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.47443094849586487},{"id":"https://openalex.org/C187062812","wikidata":"https://www.wikidata.org/wiki/Q6322840","display_name":"K-independent hashing","level":5,"score":0.46321043372154236},{"id":"https://openalex.org/C164226766","wikidata":"https://www.wikidata.org/wiki/Q7293202","display_name":"Rank (graph theory)","level":2,"score":0.46256929636001587},{"id":"https://openalex.org/C36375716","wikidata":"https://www.wikidata.org/wiki/Q6553456","display_name":"Linear hashing","level":5,"score":0.44778358936309814},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.44300851225852966},{"id":"https://openalex.org/C116058348","wikidata":"https://www.wikidata.org/wiki/Q846912","display_name":"Universal hashing","level":5,"score":0.44144678115844727},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.4411182999610901},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.4193107485771179},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3622995615005493},{"id":"https://openalex.org/C138111711","wikidata":"https://www.wikidata.org/wiki/Q478351","display_name":"Double hashing","level":4,"score":0.26702141761779785},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.22274339199066162},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.10974553227424622},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","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/C78458016","wikidata":"https://www.wikidata.org/wiki/Q840400","display_name":"Evolutionary biology","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}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3596453","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3596453","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3596453","source":{"id":"https://openalex.org/S201104086","display_name":"ACM Journal of Experimental Algorithmics","issn_l":"1084-6654","issn":["1084-6654"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Journal of Experimental Algorithmics","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3596453","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3596453","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3596453","source":{"id":"https://openalex.org/S201104086","display_name":"ACM Journal of Experimental Algorithmics","issn_l":"1084-6654","issn":["1084-6654"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Journal of Experimental Algorithmics","raw_type":"journal-article"},"sustainable_development_goals":[{"display_name":"Industry, innovation and infrastructure","id":"https://metadata.un.org/sdg/9","score":0.4300000071525574}],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4376505296.pdf","grobid_xml":"https://content.openalex.org/works/W4376505296.grobid-xml"},"referenced_works_count":17,"referenced_works":["https://openalex.org/W62638829","https://openalex.org/W104648112","https://openalex.org/W1551498417","https://openalex.org/W1797602580","https://openalex.org/W1980606681","https://openalex.org/W1996172330","https://openalex.org/W2000273502","https://openalex.org/W2010986907","https://openalex.org/W2053816258","https://openalex.org/W2120933912","https://openalex.org/W2159054268","https://openalex.org/W2999307977","https://openalex.org/W3004081801","https://openalex.org/W3156632946","https://openalex.org/W3165970085","https://openalex.org/W4385656103","https://openalex.org/W6947873881"],"related_works":["https://openalex.org/W2084899141","https://openalex.org/W2094127768","https://openalex.org/W1481411695","https://openalex.org/W2008159385","https://openalex.org/W2164322063","https://openalex.org/W1551533237","https://openalex.org/W1486630602","https://openalex.org/W1967593546","https://openalex.org/W102859714","https://openalex.org/W2149451994"],"abstract_inverted_index":{"In":[0,80,105],"this":[1,81],"paper":[2],"we":[3,83,107],"study":[4,109],"a":[5,36,63,100,137],"fingerprint-based":[6],"minimal":[7,24],"perfect":[8,25],"hash":[9,26],"function":[10],"(":[11],"FMPH":[12,16,47,141,172],"for":[13,117,205],"short).":[14],"While":[15],"is":[17,48,151,186],"not":[18],"as":[19,21,97,99],"space-efficient":[20],"some":[22],"other":[23],"functions":[27],"(for":[28],"example":[29],"RecSplit,":[30],"CHD,":[31],"or":[32,72,197],"PTHash),":[33,198],"it":[34,43],"has":[35],"number":[37,101],"of":[38,45,95,102,170,191],"practical":[39,206],"advantages":[40,173],"that":[41,91,123],"make":[42],"worthy":[44],"consideration.":[46],"simple":[49],"and":[50,112,127,160,199],"quite":[51],"fast":[52],"to":[53,131,146,153,165,201],"evaluate.":[54],"Its":[55],"construction":[56,180,184],"requires":[57],"very":[58],"little":[59],"auxiliary":[60],"memory,":[61],"takes":[62],"short":[64],"time":[65],"and,":[66],"in":[67,78],"addition,":[68,106],"can":[69,143],"be":[70,144,202],"parallelized":[71],"carried":[73],"out":[74],"without":[75],"holding":[76],"keys":[77],"memory.":[79],"paper,":[82],"propose":[84],"an":[85,128],"effective":[86],"method":[87,126],"(called":[88],"FMPHGO":[89,110,167],")":[90],"reduces":[92,178],"the":[93,114,133,140,154,171],"size":[94,142,155],"FMPH,":[96],"well":[98],"implementation":[103],"improvements.":[104],"experimentally":[108],"performance":[111],"find":[113],"best":[115],"values":[116],"its":[118,179],"parameters.":[119],"Our":[120],"benchmarks":[121],"show":[122],"with":[124,189],"our":[125],"efficient":[129],"structure":[130],"support":[132],"rank":[134],"queries":[135],"on":[136],"bit":[138],"vector,":[139],"reduced":[145],"about":[147],"2.1":[148],"bits/key,":[149],"which":[150],"close":[152],"achieved":[156],"by":[157],"state-of-the-art":[158],"methods":[159,190],"noticeably":[161],"larger":[162],"only":[163],"compared":[164],"RecSplit.":[166],"preserves":[168],"most":[169],"mentioned":[174],"above,":[175],"but":[176],"significantly":[177],"speed.":[181],"However,":[182],"FMPHGO\u2019s":[183],"speed":[185],"still":[187],"competitive":[188],"similar":[192],"space":[193],"efficiency":[194],"(like":[195],"CHD":[196],"seems":[200],"good":[203],"enough":[204],"applications.":[207]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":1}],"updated_date":"2026-08-01T09:00:35.917206","created_date":"2025-10-10T00:00:00"}
