{'fraction_non_alphanumeric': 0.02081447963800905, 'fraction_numerical': 0.0, 'mean_word_length': 4.851851851851852, '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 Primer for Automated Reasoning: Puzzles, People, and Programs That Involve Reasoning

Do you enjoy solving puzzles, playing chess, assisting others in careful reasoning, and—often much more difficult—finding proofs of theorems in mathematics or logic? Do you know that computer programs exist that can assist you in such activities in unexpected ways and, sometimes, find answers that have eluded fine minds for many decades? Of course you know that computers can cope with gigantic arithmetic problems and can store, process, and retrieve huge amounts of data. But how in the world can a computer be programmed to reason logically, to take a set of assumptions and use those assumptions to reach goals that might appear to be unreachable? Indeed, how can you program a computer to reason like Mr. Spock of Star Trek or like Sherlock Holmes? You may indeed have read of a computer program that played brilliant chess. But you may not know of a computer program that is so powerful in its reasoning that various areas of mathematics and logic have yielded to that program some of their well-kept secrets.