{"id":"https://openalex.org/W7167821654","doi":"https://doi.org/10.48550/arxiv.2607.07257","title":"Non-minimal k-perfect hashing: Tight lower bounds and an application to fast static hash tables","display_name":"Non-minimal k-perfect hashing: Tight lower bounds and an application to fast static hash tables","publication_year":2026,"publication_date":"2026-07-08","ids":{"openalex":"https://openalex.org/W7167821654","doi":"https://doi.org/10.48550/arxiv.2607.07257"},"language":null,"primary_location":{"id":"doi:10.48550/arxiv.2607.07257","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2607.07257","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"type":"preprint","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://doi.org/10.48550/arxiv.2607.07257","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5126834856","display_name":"Ragnar Groot Koerkamp","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Koerkamp, Ragnar Groot","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5019534292","display_name":"Stefan Hermann","orcid":"https://orcid.org/0000-0001-9183-2926"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Hermann, Stefan","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":"https://openalex.org/A5140353400","display_name":"Peter Sanders","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Sanders, Peter","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":"https://openalex.org/A5140367420","display_name":"Stefan Walzer","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Walzer, Stefan","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.4659000039100647,"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"}},"topics":[{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.4659000039100647,"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/T10627","display_name":"Advanced Image and Video Retrieval Techniques","score":0.2831000089645386,"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/T11106","display_name":"Data Management and Algorithms","score":0.05570000037550926,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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/hash-function","display_name":"Hash function","score":0.7699999809265137},{"id":"https://openalex.org/keywords/dynamic-perfect-hashing","display_name":"Dynamic perfect hashing","score":0.6287999749183655},{"id":"https://openalex.org/keywords/perfect-hash-function","display_name":"Perfect hash function","score":0.6093000173568726},{"id":"https://openalex.org/keywords/upper-and-lower-bounds","display_name":"Upper and lower bounds","score":0.5662999749183655},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.5216000080108643},{"id":"https://openalex.org/keywords/k-independent-hashing","display_name":"K-independent hashing","score":0.5182999968528748},{"id":"https://openalex.org/keywords/hash-table","display_name":"Hash table","score":0.4909999966621399},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.4675000011920929},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.4271000027656555}],"concepts":[{"id":"https://openalex.org/C99138194","wikidata":"https://www.wikidata.org/wiki/Q183427","display_name":"Hash function","level":2,"score":0.7699999809265137},{"id":"https://openalex.org/C122907437","wikidata":"https://www.wikidata.org/wiki/Q5318999","display_name":"Dynamic perfect hashing","level":5,"score":0.6287999749183655},{"id":"https://openalex.org/C87431388","wikidata":"https://www.wikidata.org/wiki/Q2070573","display_name":"Perfect hash function","level":4,"score":0.6093000173568726},{"id":"https://openalex.org/C77553402","wikidata":"https://www.wikidata.org/wiki/Q13222579","display_name":"Upper and lower bounds","level":2,"score":0.5662999749183655},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.5216000080108643},{"id":"https://openalex.org/C187062812","wikidata":"https://www.wikidata.org/wiki/Q6322840","display_name":"K-independent hashing","level":5,"score":0.5182999968528748},{"id":"https://openalex.org/C67388219","wikidata":"https://www.wikidata.org/wiki/Q207440","display_name":"Hash table","level":3,"score":0.4909999966621399},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.49059998989105225},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.4675000011920929},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.4499000012874603},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.4271000027656555},{"id":"https://openalex.org/C156273044","wikidata":"https://www.wikidata.org/wiki/Q4913766","display_name":"Bin","level":2,"score":0.42399999499320984},{"id":"https://openalex.org/C2781039887","wikidata":"https://www.wikidata.org/wiki/Q1391724","display_name":"Factor (programming language)","level":2,"score":0.4072999954223633},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.4068000018596649},{"id":"https://openalex.org/C116058348","wikidata":"https://www.wikidata.org/wiki/Q846912","display_name":"Universal hashing","level":5,"score":0.39640000462532043},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.37770000100135803},{"id":"https://openalex.org/C2778572836","wikidata":"https://www.wikidata.org/wiki/Q380933","display_name":"Space (punctuation)","level":2,"score":0.36340001225471497},{"id":"https://openalex.org/C87219788","wikidata":"https://www.wikidata.org/wiki/Q814581","display_name":"Bin packing problem","level":3,"score":0.3610999882221222},{"id":"https://openalex.org/C150909736","wikidata":"https://www.wikidata.org/wiki/Q1779448","display_name":"Collision resistance","level":5,"score":0.3580000102519989},{"id":"https://openalex.org/C56856351","wikidata":"https://www.wikidata.org/wiki/Q1757218","display_name":"Consistent hashing","level":5,"score":0.3377000093460083},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3375000059604645},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.3366999924182892},{"id":"https://openalex.org/C189783530","wikidata":"https://www.wikidata.org/wiki/Q352090","display_name":"CPU cache","level":3,"score":0.3292999863624573},{"id":"https://openalex.org/C108546238","wikidata":"https://www.wikidata.org/wiki/Q4228982","display_name":"Rolling hash","level":5,"score":0.303600013256073},{"id":"https://openalex.org/C133358856","wikidata":"https://www.wikidata.org/wiki/Q7395188","display_name":"SWIFFT","level":5,"score":0.2973000109195709},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.2962999939918518},{"id":"https://openalex.org/C134835016","wikidata":"https://www.wikidata.org/wiki/Q690265","display_name":"Lookup table","level":2,"score":0.2754000127315521},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.26269999146461487},{"id":"https://openalex.org/C187455244","wikidata":"https://www.wikidata.org/wiki/Q942353","display_name":"Boolean function","level":2,"score":0.25999999046325684}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.48550/arxiv.2607.07257","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2607.07257","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Preprint"}],"best_oa_location":{"id":"doi:10.48550/arxiv.2607.07257","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2607.07257","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Preprint"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"A":[0,254],"minimal":[1,27],"perfect":[2,76],"hash":[3,95,239,256,270],"function":[4],"(minimal":[5],"PHF)":[6],"is":[7,55,99,146,193,262],"a":[8,12,58,70,87,101,110,122,127,227,295],"data":[9],"structure":[10],"mapping":[11],"static":[13,94,238,255],"set":[14,257],"of":[15,37,53,60,73,91,113,158,182,214,246,279],"$n$":[16,19,30],"keys":[17,31],"to":[18,34,109,147,287],"bins":[20,36,54],"without":[21],"collisions.":[22],"Two":[23],"natural":[24,88],"generalizations":[25],"are":[26,32,210],"$k$-PHFs":[28,80,154,245],"where":[29,50,116,294],"mapped":[33],"$n/k$":[35],"capacity":[38,114],"$k$":[39,115],"each,":[40],"and":[41,138,162,174,203,217,232,274],"(non-minimal)":[42],"PHFs":[43],"with":[44,126],"load":[45,134],"factor":[46,59],"$\u03b1":[47,159,171],"&lt;":[48,172],"1$":[49,173],"the":[51,180,189,207,222,251,280],"number":[52],"increased":[56],"by":[57,212],"$1/\u03b1$,":[61],"resulting":[62],"in":[63,75,237,300],"spare":[64],"capacity.":[65],"While":[66],"there":[67],"has":[68],"been":[69,83],"recent":[71],"surge":[72],"interest":[74],"hashing":[77],"generally,":[78],"non-minimal":[79],"have":[81],"not":[82,298],"systematically":[84],"studied":[85],"despite":[86],"use":[89,236],"case":[90],"speeding":[92],"up":[93,286],"tables:":[96],"The":[97],"idea":[98],"that":[100,169],"small":[102],"cache-resident":[103],"$k$-PHF":[104,228,261],"maps":[105],"each":[106],"key":[107,197],"$x$":[108,117],"cache-line-sized":[111],"bin":[112],"resides.":[118],"Ideally,":[119],"this":[120,260],"yields":[121],"branchless":[123],"lookup":[124],"operation":[125],"single":[128],"cache":[129],"miss":[130],"working":[131],"at":[132,264],"high":[133],"factors":[135,213],"for":[136,153,155,185,199,235,272,290],"positive":[137],"negative":[139,273],"queries":[140],"alike.":[141],"Our":[142],"main":[143],"theoretical":[144],"contribution":[145],"determine":[148],"tight":[149],"space":[150,181,190],"lower":[151,191,208,252],"bounds":[152,209],"all":[156],"pairs":[157],"\\in":[160],"(0,1]$":[161],"$k":[163,175],"\\geq":[164,176],"1$.":[165],"It":[166],"turns":[167],"out":[168],"combining":[170],"2$":[177],"drastically":[178],"reduces":[179],"$k$-PHFs,":[183],"e.g.":[184],"$(k,\u03b1)":[186,200,204],"=":[187,201,205],"(16,0.8)$":[188],"bound":[192],"$0.027$":[194],"bits":[195],"per":[196],"while":[198],"(16,1.0)$":[202],"(1,0.8)$":[206],"higher":[211],"$\\approx":[215,218],"8$":[216],"32$,":[219],"respectively.":[220],"On":[221,277],"practical":[223],"side,":[224],"we":[225],"develop":[226],"based":[229,258],"on":[230,259],"PtrHash":[231],"tune":[233],"it":[234,284],"tables.":[240],"Empirically,":[241],"our":[242],"implementation":[243],"produces":[244],"size":[247],"roughly":[248],"$50\\%$":[249],"above":[250],"bound.":[253],"consistently":[263],"least":[265],"as":[266,268],"fast":[267],"other":[269],"sets":[271],"mixed":[275],"queries.":[276],"two":[278],"three":[281],"tested":[282],"architectures":[283],"achieves":[285],"$1.5\\times$":[288],"speedup":[289],"large":[291],"$n\\geq":[292],"30M$":[293],"$1$-PHF":[296],"does":[297],"fit":[299],"cache.":[301]},"counts_by_year":[],"updated_date":"2026-07-28T07:46:37.118299","created_date":"2026-07-10T00:00:00"}
