{'fraction_non_alphanumeric': 0.036896877956480605, 'fraction_numerical': 0.021759697256385997, 'mean_word_length': 5.151162790697675, '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}}
The Nature of Retrograde Analysis for Chinese Chess - Part 1

Retrograde analysis has been successfully applied to solve Awari (Romein and Bal, 2003), and construct 6-piece Western chess endgame databases (Thompson, 1996). However, its application to Chinese chess is limited because of the special rules about indefinite move sequences. In (Fang, Hsu, and Hsu, 2004), problems caused by the most influential rule, checking indefinitely3, were successfully solved in practical cases, with 50 selected endgame databases constructed in accord with this rule, where the 60-move-rule was ignored. Other special rules have much less impact on contaminating the databases, as verified by the rule-tolerant algorithms (Fang, 2004). For constructing complete endgame databases, we need rigorous algorithms. There are two rule sets in Chinese chess: Asian rule set and Chinese rule set. In this paper, an algorithm is successfully developed to construct endgame databases in accord with the Asian rule set. The graph-theoretical properties are also explored as well.