{'fraction_non_alphanumeric': 0.020316027088036117, 'fraction_numerical': 0.009029345372460496, 'mean_word_length': 4.9641255605381165, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Multi-string search in BSP

We have studied the worst-case complexity of the multi-string search problem in the bulk synchronous parallel (BSP) model (Valiant 1990). For this purpose, we have devised a very simple way to distribute the blind trie data structure among the p processors so that the communication cost is balanced. In the light of the very efficient algorithms and data structures known for external memory and the ones designed for the BSP model in this paper, it becomes a very challenging task to investigate the multi-string search problem in the parallel disk model (Vitter and Shriver, 1994) which combines both I/O, computation and communication complexities. In this setting, it would be also interesting to study the dynamic version of the multi-string search problem in which the set of indexed texts can be changed by inserting or deleting individual texts (Ferragina and Grossi 1995). Another interesting direction of research consists of investigating the multi-string search problem on some variants of the BSP model that have been previously introduced to encourage the use of spatial locality. In our setting, pieces of strings have to be moved among the processors to perform the lexicographic comparisons and thus spatial locality can possibly help in taking advantage of the bandwidth of routers.