{'fraction_non_alphanumeric': 0.008064516129032258, 'fraction_numerical': 0.0, 'mean_word_length': 5.346590909090909, '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 new method to compute prime and essential prime implicants of Boolean functions

Computing the prime implicants and the essential prime implicants of Boolean functions is a problem that has applications in several areas of computer science, for instance it is critical in circuit synthesis and optimization, but also in automated reasoning. In this paper we propose a new method to compute implicitly the sets of prime implicants and of essential prime implicants of incompletely specified Boolean functions. This method allows us to handle functions that have sets of prime implicants and of essential prime implicants several orders of magnitude larger than those of the functions that could be handled by existing methods. The key idea that makes these computations possible is to manipulate sets of prime and of essential prime implicants denoted by their meta-products, which are characteristic functions. These functions are represented with binary decision diagrams that are a very compact canonical graph representation of Boolean functions and that support very efficiently all the operations needed here.