{'fraction_non_alphanumeric': 0.018095238095238095, 'fraction_numerical': 0.007619047619047619, 'mean_word_length': 5.36969696969697, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 1, '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}}
A modified parallel F4 algorithm for shared and distributed memory architectures

In applications of symbolic computation an often required but complex procedure is finding Gröbner bases for polynomial ideals. Hence it is obvious to realize parallel algorithms to compute them. There are already flavours of the F4 algorithm like [4] and [13] using the special structure of the occurring matrices to speed up the reductions on parallel architectures with shared memory. In this paper we start from these and present modifications allowing efficient computations of Gröbner bases on systems with distributed memory. To achieve this we concentrate on the following objectives: decreasing the memory consumption and avoiding communication overhead. We remove not required steps of the reduction, split the columns of the matrix in blocks for distribution and review the effectiveness of the SIMPLIFY function. Finally we evaluate benchmarks with up to 256 distributed threads of an implementation being available at https://github.com/svrnm/parallelGBC.