An Algorithm to Test if a Given Circular HDOL-Language Avoids a Pattern

To prove that a pattern p is avoidable on a given alphabet, one has to construct an innnite language L that avoids p. Usually, L is a DOL-language (obtained by iterating a morphism h) or a HDOL-language (obtained by coding a DOL-language with another morphism g). Our purpose is to nd an algorithm to test, given a HDOL-system G, whether the language L(G) generated by this system avoids p. We rst deene the notions of circular morphism, circular DOL-system and circular HDOL-system, and we show how to compute the inverse image of a pattern by a circular morphism. Then we prove that by computing successive inverse images of p, we can decide whether the language L(G) avoids p for any xed pattern p (which may even contain constants), provided that the HDOL-system G is circular and expansive.