{'fraction_non_alphanumeric': 0.04684512428298279, 'fraction_numerical': 0.0, 'mean_word_length': 4.369230769230769, '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}}
BULLETIN (New Series) OF THE AMERICAN MATHEMATICAL SOCIETY

The theory of cellular automata is, at its very root, a simplification gone wonderfully wrong. Let us consider a function f : R → A. We think of the domain as a space (we even call it, grandiosely, the universe) and the function f as a configuration on the space described by the values in A at every point of the space. The configuration values in A are considered somewhat abstractly, their nature is not important to us, they may be quantitative (temperature, electrical conductivity, etc.) or qualitative (name of a geographic region, prevalent voting preference in the region, etc.) The set of all configurations A = {f | R → A} is called the space of configurations (on R over A). Of course, the same configuration looks different from a different point of view. Thus, for each point a ∈ R in the space, we introduce a shift operator σa : A R → A, to account for the “change of coordinates”. More precisely, for a configuration f ∈ A, the shifted configuration σa(f) is defined by