{'fraction_non_alphanumeric': 0.027180067950169876, 'fraction_numerical': 0.0, 'mean_word_length': 5.2695035460992905, '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}}
Efficiently recognizing , decomposing and triangulating hole-and diamond-free graphs

We show that the atoms by clique separator decomposition of holeand diamond-free graphs are of three simple types: clique, matched co-bipartite or chordal bipartite. We present an O(n) time algorithm to recognize these graphs and decompose them into atoms, whereas this decomposition requires O(nm) time for almost all graph classes. To ensure this good time bound, we use algorithm LexBFS in a novel fashion, highlighting its behavior in the vicinity of clique separators in a general graph. Given the atoms, we show how to compute a minimal triangulation in O(n) time, thereby introducing algorithms for the minimal triangulation of both matched co-bipartite graphs and chordal bipartite graphs. Our results enable us to provide efficient solutions to some enumeration and optimization problems.