Automatic Structures and Rank Cornell REU Group 2 Summer 2009 1 Important Questions 1. Is ω ω word automatic in presence of oracles? 2. Is ω ω k rank k tree presentable? 3. Can ω ω be embedded (not first order) into any word automatic structure? 2 Definitions A deterministic finite word automaton on a finite alphabet Σ is defined by a 4-tuple M = ( Q, q 0 , δ, F ), where Q is the finite set of states, q 0 ∈ Q is the starting state, δ : Q × Σ → Q is the state transition function, and F ⊂ Q is the set of final accepting states. Given an input string v 0 v 1 . . . v n ∈ Σ ∗ , M visits the sequence of states q 0 , q 1 , . . . , q n , where q i +1 = δ ( q i , v i ). We say that M accepts the input if and only if q n ∈ F . If δ is a relation, δ ⊂ Q × Σ × Q , we call the automaton nondeterministic . A nondeter- ministic finite word automaton M accepts an input string v 0 v 1 . . . v n if and only if there exists a sequence of states q 0 , q 1 , . . . , q n such that ( q i , v i , q i +1 ) ∈ δ for all 0 ≤ i < n and q n ∈ F . A language is a subset of Σ ∗ . We call a language L regular if there exists a finite automaton M such that M accepts v 0 v 1 . . . v n ∈ Σ ∗ if and only if v 0 v 1 . . . v n ∈ L . A structure is an n -tuple A = ( A, R 1 , . . . , R n − 1 ), where A is a set, called the domain , and R 1 through R n − 1 are relations on A . Given n strings u 1 , . . . , u n ⊂ Σ ∗ , we form their convolution ⊗ ( u 1 , . . . , u n ) ∈ [(Σ ∪ { � } ) n ] ∗ by first padding each string with blank symbols ( � ) until they are the same length, then taking the string of n -tuples, (( u 1 ) 1 , . . . , ( u n ) 1 )(( u 1 ) 2 , . . . , ( u n ) 2 ) . . . , which we interpret as a string over a finite alphabet of size ( | Σ | + 1) n . An n -ary relation R ⊂ (Σ ∗ ) n over a regular domain A ⊂ Σ ∗ is called regular if ⊗ R ⊂ [(Σ ∪ { � } ) n ] ∗ is regular, where ⊗ R = {⊗ ( u 1 , . . . , u n ) | ( u 1 , . . . , u n ) ∈ R } . A structure A is finite word automatic if A ⊂ Σ ∗ is a regular set of strings over a finite alphabet, and each R i is regular. 1
Two structures with the same signature are isomorphic if there is a bijection between their domains preserving relations. If a structure S is isomorphic to an automatic structure A , then S is called automatically presentable . We say a structure admits a rank- n finite word presentation if it has an automatic presentation in which the domain is a subset of 1 ∗ 2 ∗ . . . n ∗ . For convenience, we define [ n ] = { 0 , 1 , . . . , n } . 3 Results Theorem 3.1. ω n +1 is the smallest ordinal which is not rank- n presentable. Theorem 3.2. The Rational numbers, ( Q , ≤ ) , has no finite rank automatic presentation. Theorem 3.3. ω n +1 is not rank- n presentable, even with an oracle over an arbitrary alphabet. 4 Important lemmas Lemma 4.1. Compression Lemma: Suppose that a structure S is isomorphic to a structure A = ( A, R 1 , . . . , R n ) , such that A is automatic and A ⊂ 1 ∗ . . . i <m . . . n ∗ . Then S admits an automatic presentation of rank n − 1 . Proof. (Sketch) We will exhibit an isomorphism from A to another automatic structure B with domain B ⊂ 1 ∗ . . . ( i − 1) ∗ ( i +1) ∗ . . . n ∗ of rank n − 1. There are two cases, i < n , and i = n (which is simpler). Encode the domain as follows: Repeat each symbol in a block of length m each time it appears. Also i appeared j < m times. Transform the j blocks of i to blocks of i + 1, and then add j many n s to the end of the word. There are finite automata that recognize the domain and relations in the original encoding, and we will transform them to recognize the new encoding. Let R be an n -ary relation, n ≥ 1 (the domain is also a unary relation). The idea is a follows. The machine will work on blocks of letters. At the start, it will guess how many i blocks were encoded as i + 1 in each string. Then when it starts reading the i + 1 blocks in each component, it will treat the first few as i blocks. Then, when it reaches the end of each component in the string, it will compare the guess to the actual length mod m , rejecting if it was wrong. Details upon request. Suppose the machine used an oracle input. Then we can repeat each symbol in the oracle input m times as well, and it will be available when it is needed. So if S is isomorphic to a structure A = ( A, R 1 , . . . , R n ), such that A is automatic with oracle o and A ⊂ 2
1 ∗ . . . i <m . . . n ∗ , then S admits an automatic presentation of rank n − 1, with some other oracle o ′ . Lemma 4.2. Limited Memory Lemma: Suppose ( A, R ) is an automatic structure, with R of arity n ≥ 2 . Suppose the automaton recognizing R has only k states. Let S and L be two subsets of A , with M = max s ∈ S | s | < min l ∈ L | l | , and all strings in l agreeing on the first M characters. For any m < n , the set of relations { R l ( s ) = R ( s, l ) : l ∈ L n − m } can only partition the set of m -tuples { s ∈ S m } into at most k sets. This holds even if R is allowed access to an oracle over any finite alphabet. Proof. Consider the computation of the automaton recognizing R , on some string ⊗ ( o, s, l ). After reading the first M symbols, the automaton is in one of k states. This state depends only on s , and not on l , as all choices for l agree on the first M symbols. Partition the tuples s into X 1 , · · · X k , according to which state the automaton is in at that point. If s 1 and s 2 are in the same piece of the partition, then for each l , the computations on ⊗ ( o, s 1 , l ), and ⊗ ( o, s 2 , l ) must agree on every state after the M th. So either both computations accept, or both reject, for each l . Lemma 4.3. Fix n . The number of ways to apportion i into n pieces, with order mat- tering is at least i n n ! , and at most i n . Each partition is determined exactly by a way of choosing n positions out of a string of length i + n , and letting the blocks in between be the apportionment. � n + i � = ( i + n ) . . . ( i + 1) = θ ( i n ) p n ( i ) = n n ! 1 n ! i n ≤ p n ( i ) ≤ ( i + 1) n 5 Ordinals It is clear that the structure ( ω n , ≤ ) has a rank n presentation. Code the number ω n − 1 x 1 + · · · + x n as 1 x 1 . . . n x n . Then we can recognize a ≤ b automatically. We say a ≤ b if they have the same code, or the code for a has a higher number in the first place where they differ (with blank considered as highest). We can also produce a rank n presentation for the structure ( ω n · m, ≤ ), for any natural number m . Code the number ω n x 0 + ω n − 1 x 1 + · · · + x n , with x 0 < m , as 1 mx 1 + x 0 . . . n mx n . We say a ≤ b if either (1) their lengths mod m are different, and the remainder when | a | is divided by m is smaller than when | b | is divided by m , or (2) the lengths mod m are equal, and the code for a has a higher number in the first place where they differ (with 3
Recommend
More recommend