{'fraction_non_alphanumeric': 0.02845927379784102, 'fraction_numerical': 0.012757605495583905, 'mean_word_length': 4.483870967741935, '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 Polynomial Time Algorithm for 3SAT

. By creating some new concepts and methods: checking tree, long unit path, direct contradiction unit pair, indirect contradiction unit pair, additional contradiction unit pair, 2-unit layer and 3-unit layer, we successfully transform solving a 3SAT problem to solving 2SAT problems in polynomial time. The way is: each time we add only one layer of the 3-unit layers to the 2-unit layers respectively. And then for each of the three units in this layer, we calculate its 2SAT paths respectively. The key is: in each 2SAT path, any two units cannot be direct contradiction unit pair, and also cannot be indirect contradiction unit pair and additional contradiction unit pair. Also, for a unit of a 3-unit layer with any one unit in its 2SAT paths, the two units cannot be a contradiction pair. These can guarantee that all the 2SAT paths we got respectively together with the units in 3-unit layers can shape at least one long path without contradictions. Thus we proved that NP=P.