{'fraction_non_alphanumeric': 0.013654618473895583, 'fraction_numerical': 0.0, 'mean_word_length': 5.557894736842106, '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}}
Modern aspects of classical automata theory: finite automata, biautomata, and lossy compression

Regular languages have a wide area of applications. This makes it an important task to convert between different forms of regular language representations, and to compress the size of such representations. This book studies modern aspects of compressions and conversions of regular language representations. The first main part presents methods for lossy compression of classical finite automata. Lossy compression allows to reduce the size of a language representation below the limits of classical compression methods, by the cost of introducing tolerable errors to the language. The complexity of many problems related to compression with respect to different error profiles is classified. The other main part is devoted to the study of biautomata, which were recently introduced as a new descriptional model for regular languages. Although biautomata are in many ways similar to finite automata, this book carves out some notable differences. While classical methods for finite automata can successfully be applied to biautomata, one observes a drastic increase of the computational complexity when considering lossy compression for biautomata.