{'fraction_non_alphanumeric': 0.013192612137203167, 'fraction_numerical': 0.0, 'mean_word_length': 4.9296875, '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}}
A Reduction Approach to Decision Procedures

We present an approach for designing decision procedures based on the reduction of complex theories to simpler ones. Specifically, we define reduction functions as a tool for reducing the satisfiability problem of a complex theory to the satisfiability problem of a simpler one. Reduction functions allow us to reduce the theory of lists to the theory of constructors, the theory of arrays to the theory of equality, the theory of sets to the theory of equality, and the theory of multisets to the theory of integers. Finally, we provide a method for combining reduction functions. This method allows us to reduce the satisfiability problem of a combination of complex theories to the combination of simpler ones.