{"id":"https://openalex.org/W4417297527","doi":"https://doi.org/10.1186/s13015-025-00291-9","title":"Engineering rank queries on bit vectors and strings","display_name":"Engineering rank queries on bit vectors and strings","publication_year":2025,"publication_date":"2025-12-11","ids":{"openalex":"https://openalex.org/W4417297527","doi":"https://doi.org/10.1186/s13015-025-00291-9","pmid":"https://pubmed.ncbi.nlm.nih.gov/41382149"},"language":"en","primary_location":{"id":"doi:10.1186/s13015-025-00291-9","is_oa":true,"landing_page_url":"https://doi.org/10.1186/s13015-025-00291-9","pdf_url":null,"source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},"type":"article","indexed_in":["crossref","doaj","pubmed"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://doi.org/10.1186/s13015-025-00291-9","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5113144710","display_name":"Simon Gene Gottlieb","orcid":null},"institutions":[{"id":"https://openalex.org/I2800345347","display_name":"Berlin Mathematical School","ror":"https://ror.org/03zekj455","country_code":"DE","type":"education","lineage":["https://openalex.org/I2800345347"]},{"id":"https://openalex.org/I75951250","display_name":"Freie Universit\u00e4t Berlin","ror":"https://ror.org/046ak2485","country_code":"DE","type":"education","lineage":["https://openalex.org/I75951250"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Simon Gene Gottlieb","raw_affiliation_strings":["Informatik & Mathematik, Freie Universit\u00e4t Berlin, Takustra\u00dfe 9, 14195, Berlin, Germany. s.gottlieb@fu-berlin.de"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Informatik & Mathematik, Freie Universit\u00e4t Berlin, Takustra\u00dfe 9, 14195, Berlin, Germany. s.gottlieb@fu-berlin.de","institution_ids":["https://openalex.org/I2800345347","https://openalex.org/I75951250"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078948324","display_name":"Knut Reinert","orcid":"https://orcid.org/0000-0003-3078-8129"},"institutions":[{"id":"https://openalex.org/I2800345347","display_name":"Berlin Mathematical School","ror":"https://ror.org/03zekj455","country_code":"DE","type":"education","lineage":["https://openalex.org/I2800345347"]},{"id":"https://openalex.org/I4210142260","display_name":"Max Planck Institute for Molecular Genetics","ror":"https://ror.org/03ate3e03","country_code":"DE","type":"facility","lineage":["https://openalex.org/I149899117","https://openalex.org/I4210142260"]},{"id":"https://openalex.org/I75951250","display_name":"Freie Universit\u00e4t Berlin","ror":"https://ror.org/046ak2485","country_code":"DE","type":"education","lineage":["https://openalex.org/I75951250"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Knut Reinert","raw_affiliation_strings":["Efficient Algorithms for Omics Data Group, Max-Planck-Institute for Molecular Genetics, 14195, Berlin, Germany","Informatik & Mathematik, Freie Universit\u00e4t Berlin, Takustra\u00dfe 9, 14195, Berlin, Germany"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Efficient Algorithms for Omics Data Group, Max-Planck-Institute for Molecular Genetics, 14195, Berlin, Germany","institution_ids":["https://openalex.org/I4210142260"]},{"raw_affiliation_string":"Informatik & Mathematik, Freie Universit\u00e4t Berlin, Takustra\u00dfe 9, 14195, Berlin, Germany","institution_ids":["https://openalex.org/I75951250","https://openalex.org/I2800345347"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5113144710"],"corresponding_institution_ids":["https://openalex.org/I2800345347","https://openalex.org/I75951250"],"apc_list":{"value":1490,"currency":"GBP","value_usd":1827},"apc_paid":{"value":1490,"currency":"GBP","value_usd":1827},"fwci":0.0,"has_fulltext":true,"cited_by_count":0,"citation_normalized_percentile":{"value":0.18885063,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":"20","issue":"1","first_page":"21","last_page":"21"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11269","display_name":"Algorithms and Data Compression","score":0.5001000165939331,"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.5001000165939331,"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/T12326","display_name":"Network Packet Processing and Optimization","score":0.133200004696846,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10015","display_name":"Genomics and Phylogenetic Studies","score":0.06750000268220901,"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/rank","display_name":"Rank (graph theory)","score":0.7263000011444092},{"id":"https://openalex.org/keywords/bit-array","display_name":"Bit array","score":0.5799999833106995},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.5141000151634216},{"id":"https://openalex.org/keywords/population","display_name":"Population","score":0.4690000116825104},{"id":"https://openalex.org/keywords/mean-reciprocal-rank","display_name":"Mean reciprocal rank","score":0.3970000147819519},{"id":"https://openalex.org/keywords/space","display_name":"Space (punctuation)","score":0.3856000006198883},{"id":"https://openalex.org/keywords/position","display_name":"Position (finance)","score":0.32429999113082886},{"id":"https://openalex.org/keywords/character","display_name":"Character (mathematics)","score":0.3230000138282776},{"id":"https://openalex.org/keywords/b-tree","display_name":"B-tree","score":0.3215000033378601}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7656999826431274},{"id":"https://openalex.org/C164226766","wikidata":"https://www.wikidata.org/wiki/Q7293202","display_name":"Rank (graph theory)","level":2,"score":0.7263000011444092},{"id":"https://openalex.org/C150807984","wikidata":"https://www.wikidata.org/wiki/Q1992074","display_name":"Bit array","level":3,"score":0.5799999833106995},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.5141000151634216},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5008000135421753},{"id":"https://openalex.org/C2908647359","wikidata":"https://www.wikidata.org/wiki/Q2625603","display_name":"Population","level":2,"score":0.4690000116825104},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.40860000252723694},{"id":"https://openalex.org/C44083865","wikidata":"https://www.wikidata.org/wiki/Q3853443","display_name":"Mean reciprocal rank","level":2,"score":0.3970000147819519},{"id":"https://openalex.org/C2778572836","wikidata":"https://www.wikidata.org/wiki/Q380933","display_name":"Space (punctuation)","level":2,"score":0.3856000006198883},{"id":"https://openalex.org/C198082294","wikidata":"https://www.wikidata.org/wiki/Q3399648","display_name":"Position (finance)","level":2,"score":0.32429999113082886},{"id":"https://openalex.org/C2780861071","wikidata":"https://www.wikidata.org/wiki/Q1062934","display_name":"Character (mathematics)","level":2,"score":0.3230000138282776},{"id":"https://openalex.org/C78669399","wikidata":"https://www.wikidata.org/wiki/Q677051","display_name":"B-tree","level":3,"score":0.3215000033378601},{"id":"https://openalex.org/C100903775","wikidata":"https://www.wikidata.org/wiki/Q5157028","display_name":"Compressed suffix array","level":4,"score":0.3133000135421753},{"id":"https://openalex.org/C179799912","wikidata":"https://www.wikidata.org/wiki/Q205084","display_name":"Computational complexity theory","level":2,"score":0.30979999899864197},{"id":"https://openalex.org/C2164484","wikidata":"https://www.wikidata.org/wiki/Q5170150","display_name":"Core (optical fiber)","level":2,"score":0.30970001220703125},{"id":"https://openalex.org/C42747912","wikidata":"https://www.wikidata.org/wiki/Q1048447","display_name":"Multiplicative function","level":2,"score":0.3084999918937683},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.30790001153945923},{"id":"https://openalex.org/C75165309","wikidata":"https://www.wikidata.org/wiki/Q2258979","display_name":"Search engine indexing","level":2,"score":0.29899999499320984},{"id":"https://openalex.org/C207467116","wikidata":"https://www.wikidata.org/wiki/Q4385666","display_name":"Inverse","level":2,"score":0.29019999504089355},{"id":"https://openalex.org/C157486923","wikidata":"https://www.wikidata.org/wiki/Q1376436","display_name":"String (physics)","level":2,"score":0.289900004863739},{"id":"https://openalex.org/C111335779","wikidata":"https://www.wikidata.org/wiki/Q3454686","display_name":"Reduction (mathematics)","level":2,"score":0.28220000863075256},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.27230000495910645},{"id":"https://openalex.org/C59656382","wikidata":"https://www.wikidata.org/wiki/Q191536","display_name":"Conjunction (astronomy)","level":2,"score":0.26429998874664307},{"id":"https://openalex.org/C113174947","wikidata":"https://www.wikidata.org/wiki/Q2859736","display_name":"Tree (set theory)","level":2,"score":0.2639999985694885},{"id":"https://openalex.org/C134400042","wikidata":"https://www.wikidata.org/wiki/Q2372244","display_name":"Symbol (formal)","level":2,"score":0.2612999975681305},{"id":"https://openalex.org/C90805587","wikidata":"https://www.wikidata.org/wiki/Q10944557","display_name":"Word (group theory)","level":2,"score":0.2597000002861023},{"id":"https://openalex.org/C2780801425","wikidata":"https://www.wikidata.org/wiki/Q5164392","display_name":"Construct (python library)","level":2,"score":0.25839999318122864},{"id":"https://openalex.org/C57493831","wikidata":"https://www.wikidata.org/wiki/Q3134666","display_name":"Projection (relational algebra)","level":2,"score":0.2572000026702881},{"id":"https://openalex.org/C165064840","wikidata":"https://www.wikidata.org/wiki/Q1321061","display_name":"Matching (statistics)","level":2,"score":0.25119999051094055},{"id":"https://openalex.org/C150552126","wikidata":"https://www.wikidata.org/wiki/Q339387","display_name":"SIMD","level":2,"score":0.25029999017715454}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1186/s13015-025-00291-9","is_oa":true,"landing_page_url":"https://doi.org/10.1186/s13015-025-00291-9","pdf_url":null,"source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},{"id":"pmid:41382149","is_oa":false,"landing_page_url":"https://pubmed.ncbi.nlm.nih.gov/41382149","pdf_url":null,"source":{"id":"https://openalex.org/S4306525036","display_name":"PubMed","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for molecular biology : AMB","raw_type":null},{"id":"pmh:oai:doaj.org/article:970668c390534ea9a6cda81e4781a5ea","is_oa":true,"landing_page_url":"https://doaj.org/article/970668c390534ea9a6cda81e4781a5ea","pdf_url":null,"source":{"id":"https://openalex.org/S4306401280","display_name":"DOAJ (DOAJ: Directory of Open Access Journals)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-sa","license_id":"https://openalex.org/licenses/cc-by-sa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Algorithms for Molecular Biology, Vol 20, Iss 1, Pp 1-17 (2025)","raw_type":"article"},{"id":"pmh:oai:pubmedcentral.nih.gov:12703928","is_oa":true,"landing_page_url":"https://pmc.ncbi.nlm.nih.gov/articles/PMC12703928/","pdf_url":null,"source":{"id":"https://openalex.org/S2764455111","display_name":"PubMed Central","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1299303238","host_organization_name":"National Institutes of Health","host_organization_lineage":["https://openalex.org/I1299303238"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Algorithms Mol Biol","raw_type":"Text"},{"id":"pmh:oai:pure.mpg.de:item_3687885","is_oa":true,"landing_page_url":"https://hdl.handle.net/21.11116/0000-0012-6157-D","pdf_url":null,"source":{"id":"https://openalex.org/S4306400654","display_name":"MPG.PuRe (Max Planck Society)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I149899117","host_organization_name":"Max Planck Society","host_organization_lineage":["https://openalex.org/I149899117"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"info:eu-repo/semantics/article"}],"best_oa_location":{"id":"doi:10.1186/s13015-025-00291-9","is_oa":true,"landing_page_url":"https://doi.org/10.1186/s13015-025-00291-9","pdf_url":null,"source":{"id":"https://openalex.org/S205663195","display_name":"Algorithms for Molecular Biology","issn_l":"1748-7188","issn":["1748-7188"],"is_oa":true,"is_in_doaj":true,"is_core":true,"host_organization":"https://openalex.org/P4310320256","host_organization_name":"BioMed Central","host_organization_lineage":["https://openalex.org/P4310320256","https://openalex.org/P4310319965"],"host_organization_lineage_names":["BioMed Central","Springer Nature"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Algorithms for Molecular Biology","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[{"id":"https://openalex.org/F4320324521","display_name":"Freie Universit\u00e4t Berlin","ror":null}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":21,"referenced_works":["https://openalex.org/W17958277","https://openalex.org/W1551498417","https://openalex.org/W1949346071","https://openalex.org/W1962019683","https://openalex.org/W2037089206","https://openalex.org/W2121743800","https://openalex.org/W2129714591","https://openalex.org/W2158322625","https://openalex.org/W2170551349","https://openalex.org/W2301420365","https://openalex.org/W2951160681","https://openalex.org/W2964237797","https://openalex.org/W3134923564","https://openalex.org/W3134947292","https://openalex.org/W3167495622","https://openalex.org/W4200611247","https://openalex.org/W4247053599","https://openalex.org/W4312423556","https://openalex.org/W4390743353","https://openalex.org/W4392885943","https://openalex.org/W4395465130"],"related_works":[],"abstract_inverted_index":{"Abstract":[0],"Adding":[1],"rank":[2,35,66,75,178],"support":[3,98],"to":[4,24,61,102],"strings":[5],"over":[6],"a":[7,43,49,86,103,117,146],"fixed-sized":[8],"alphabet":[9],"has":[10],"numerous":[11],"applications.":[12],"Prominent":[13],"among":[14],"those":[15,65],"is":[16,21,68,183],"the":[17,34,38,46,54,59,93,97,123,133,190],"(bidirectional)":[18],"FM-Index":[19],"which":[20,130,182],"commonly":[22],"utilized":[23],"index":[25],"and":[26,48,176,187,202],"analyze":[27],"genomic":[28],"data.":[29],"At":[30],"its":[31],"core":[32],"lies":[33],"operation":[36],"on":[37,71,157,180,189,223],"Burrows-Wheeler-Transform":[39],"(BWT)":[40],"which,":[41],"given":[42],"position":[44],"in":[45,139,154,159,185,219],"BWT":[47],"character,":[50],"answers":[51],"how":[52],"often":[53],"specified":[55],"character":[56],"appears":[57],"from":[58],"start":[60],"that":[62,91],"position.":[63],"Implementing":[64],"queries":[67],"usually":[69],"based":[70],"bit":[72,169],"vectors":[73,170],"with":[74,141,172],"support.":[76],"In":[77],"this":[78],"work,":[79],"we":[80],"discuss":[81],"three":[82],"implementation":[83],"improvements.":[84],"First,":[85],"novel":[87],"approach":[88],"named":[89],"paired-blocks":[90],"reduces":[92],"space":[94,174],"overhead":[95],"of":[96,105,135],"structure":[99],"by":[100],"half":[101],"total":[104],"only":[106],"$$1.6\\%$$":[107],"<mml:math":[108,195,205],"xmlns:mml=\"http://www.w3.org/1998/Math/MathML\">":[109,196,206],"<mml:mrow>":[110,197,207],"<mml:mn>1.6</mml:mn>":[111],"<mml:mo>%</mml:mo>":[112],"</mml:mrow>":[113,200,210],"</mml:math>":[114,201,211],".":[115],"Second,":[116],"method":[118,148],"for":[119,122,149],"masking":[120],"bits":[121],"population":[124],"count":[125],"(also":[126],"known":[127],"as":[128],"popcount)":[129],"greatly":[131],"improves":[132],"runtime":[134],"512-bit":[136],"wide":[137],"blocks":[138],"conjunction":[140],"AVX512":[142],"SIMD":[143],"extensions.":[144],"Third,":[145],"revised":[147],"EPR-dictionaries":[150],"(Pockrandt":[151],"et":[152,217],"al.":[153,218],"International":[155,221],"conference":[156],"research":[158],"computational":[160],"molecular":[161],"biology.":[162],"Springer,":[163,226],"New":[164,227],"York,":[165,228],"2017)":[166],"called":[167],"flattened":[168],"(fBV)":[171],"less":[173],"consumption":[175],"faster":[177,212],"operations":[179],"strings,":[181],"competitive":[184],"size":[186],"depending":[188],"parameters":[191],"between":[192],"$$2\\times":[193],"$$":[194,204],"<mml:mn>2</mml:mn>":[198],"<mml:mo>\u00d7</mml:mo>":[199,209],"$$9\\times":[203],"<mml:mn>9</mml:mn>":[208],"than":[213],"Wavelet":[214],"Trees":[215],"(Gog":[216],"13th":[220],"Symposium":[222],"Experimental":[224],"Algorithms.":[225],"2014).":[229]},"counts_by_year":[],"updated_date":"2026-06-13T06:13:01.061226","created_date":"2025-12-11T00:00:00"}
