{'fraction_non_alphanumeric': 0.019933554817275746, 'fraction_numerical': 0.0, 'mean_word_length': 5.775280898876405, '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}}
Implementing Prolog on Distributed Systems: N-parallel Prolog

A method for distributing Prolog across multiple processors is described. Design criterion and rationale are delineated along with the assumptions behind the methodology. The underlying assumptions are based on the need to provide each processor with maximum sequential work. The parallelization mechanism was implemented using a meta-interpreter that includes new predicates for dependency detection, job queuing, queue solving, and queue maintenance. Debugging and side effects issues are addressed. Benchmark results are also presented.