SLIDE 1
On the inverse of reversible CA Jarkko Kari University of Iowa, - - PowerPoint PPT Presentation
On the inverse of reversible CA Jarkko Kari University of Iowa, - - PowerPoint PPT Presentation
On the inverse of reversible CA Jarkko Kari University of Iowa, USA, and University of Turku, Finland Joint work with Eugen Czeizler Abstract Problem investigated: For a one-dimensional reversible CA with n states and size m neighborhood, how
SLIDE 2
SLIDE 3
Abstract
Problem investigated: For a one-dimensional reversible CA with n states and size m neighborhood, how large can the neighborhood of the inverse automaton be ? We derive a non-trivial upper bound nm−1 − 1. The bound is tight for neighborhood size m = 2.
SLIDE 4
Preliminaries
In this talk we consider rectilinear, infinite cellular spaces. In d-dimensional CA the cells are addressed by Zd. The finite state set of the CA is denoted by S, so configurations are functions c : Zd − → S that assign states to all cells. We denote by SZd the set of all configurations.
SLIDE 5
Preliminaries
In this talk we consider rectilinear, infinite cellular spaces. In d-dimensional CA the cells are addressed by Zd. The finite state set of the CA is denoted by S, so configurations are functions c : Zd − → S that assign states to all cells. We denote by SZd the set of all configurations. The neighborhood of the CA is a vector N = ( x1, x2, . . . , xn)
- f n distinct elements of Zd that specify the relative positions of neighbors.
For every x ∈ Zd, the cell in position x has n neighbors in positions
- x +
xi, for i = 1, 2, . . . , n.
SLIDE 6
Preliminaries
The local rule of the CA is a function f : Sn − → S that specifies the new state of each cell as the function of the old states of its neighbors. Together N and f determine the global transition function G : SZd − → SZd that describes the evolution of the configurations.
SLIDE 7
Preliminaries
The local rule of the CA is a function f : Sn − → S that specifies the new state of each cell as the function of the old states of its neighbors. Together N and f determine the global transition function G : SZd − → SZd that describes the evolution of the configurations. A cellular automaton is usually identified with function G, so we talk about cellular automaton function G, or simply cellular automaton G. In algorithmic questions G is however always specified using the three finite items S, N and f.
SLIDE 8
Preliminaries
Cellular automaton function G is called reversible (RCA) if there is another CA function F that is its inverse, i.e. G ◦ F = F ◦ G = identity function. RCA G and F are called the inverse automata of each other. Clearly, in order to be reversible G has to be a bijective function SZd − → SZd.
SLIDE 9
Preliminaries
Cellular automaton function G is called reversible (RCA) if there is another CA function F that is its inverse, i.e. G ◦ F = F ◦ G = identity function. RCA G and F are called the inverse automata of each other. Clearly, in order to be reversible G has to be a bijective function SZd − → SZd. A CA is called
- injective if G is one-to-one,
- surjective if G is onto,
- bijective if G is both one-to-one and onto.
SLIDE 10
Classical results
It is useful to endow the set SZd of configurations with the Cantor topology, i.e. the topology generated by the sets Cyl(c, M) = {e ∈ SZd | e( x) = c( x) for all x ∈ M} for c ∈ SZd and finite M ⊂ Zd. The topology is compact, and it is induced by a metric.
SLIDE 11
Classical results
It is useful to endow the set SZd of configurations with the Cantor topology, i.e. the topology generated by the sets Cyl(c, M) = {e ∈ SZd | e( x) = c( x) for all x ∈ M} for c ∈ SZd and finite M ⊂ Zd. The topology is compact, and it is induced by a metric. Theorem (Curtis, Hedlund, Lyndon 1969) A function G : SZd − → SZd is a CA function if and only if (i) G is continuous in the Cantor topology, and (ii) G commutes with shifts.
SLIDE 12
Classical results
Corollary: A cellular automaton G is reversible if and only if it is bijective. Proof: If G is a reversible CA function then G is by definition bijective. Conversely, suppose that G is a bijective CA function. Then G has an inverse function that clearly commutes with the shifts. The inverse function is also continuous because the space SZd is compact.
SLIDE 13
Classical results
Corollary: A cellular automaton G is reversible if and only if it is bijective. Proof: If G is a reversible CA function then G is by definition bijective. Conversely, suppose that G is a bijective CA function. Then G has an inverse function that clearly commutes with the shifts. The inverse function is also continuous because the space SZd is compact. The point of the corollary is that in bijective CA each cell can determine its previous state by looking at the current states in some bounded neighborhood around them.
SLIDE 14
Classical results
Let q ∈ S be an arbitrary fixed state. Let us call a configuration c finite if all but a finite number of cells are in state q, and let us denote by GF the restriction of G on the finite configurations. (Often it is required that f(q, q, . . . , q) = q, but the next results do not require this.) Garden of Eden -theorem (Moore 1962, Myhill 1963): GF is injective if and only if G is surjective.
SLIDE 15
Classical results
Let q ∈ S be an arbitrary fixed state. Let us call a configuration c finite if all but a finite number of cells are in state q, and let us denote by GF the restriction of G on the finite configurations. (Often it is required that f(q, q, . . . , q) = q, but the next results do not require this.) Garden of Eden -theorem (Moore 1962, Myhill 1963): GF is injective if and only if G is surjective. Trivially the injectivity of G implies the injectivity of its restriction GF so Corollary: Injective CA are also surjective. Hence injectivity, bijectivity and reversibility are equivalent.
SLIDE 16
Algorithmic questions
How does one determine if a given CA is injective? surjective?
SLIDE 17
Algorithmic questions
How does one determine if a given CA is injective? surjective? Theorem (Amoroso, Patt 1972): There are polynomial time algorithms to determine if a given one-dimensional CA is injective/surjective. Theorem (Kari 1990): It is undecidable if a given two-dimensional CA is injective/surjective.
SLIDE 18
Algorithmic questions
How does one determine if a given CA is injective? surjective? Theorem (Amoroso, Patt 1972): There are polynomial time algorithms to determine if a given one-dimensional CA is injective/surjective. Theorem (Kari 1990): It is undecidable if a given two-dimensional CA is injective/surjective. Note: We know that the in any bijective CA each cell can determine its previous state based on the states in some bounded neighborhood. Previous theorem implies that the size of this inverse neighborhood can be very large in two- and higher dimensional cases: there is no computable upper bound on the extend of the inverse neighborhood.
SLIDE 19
Inverse neighborhood
More precisely, we define the inverse neighborhood of a RCA as follows: The minimum neighborhood Nmin of a CA function G is the smallest neighborhood that a CA with global function G can have. In other words, (1) there is CA with neighborhood Nmin whose global function is G, and (2) if there is a CA with neighborhood N that specifies G then we must have Nmin ⊆ N. It is clear that such minimum neighborhood exists for each CA function G.
SLIDE 20
Inverse neighborhood
More precisely, we define the inverse neighborhood of a RCA as follows: The minimum neighborhood Nmin of a CA function G is the smallest neighborhood that a CA with global function G can have. In other words, (1) there is CA with neighborhood Nmin whose global function is G, and (2) if there is a CA with neighborhood N that specifies G then we must have Nmin ⊆ N. It is clear that such minimum neighborhood exists for each CA function G. If G is reversible then the minimum neighborhood of its inverse G−1 is called the inverse neighborhood of G.
SLIDE 21
Inverse neighborhood
In the case of one-dimensional RCA polynomial upper bounds on the size
- f the inverse neighborhood can be easily established. In this work we
derive the following precise formula for the maximum size of the inverse neighborhood in the one-dimensional case: Theorem (Czeizler, Kari 2005): If an RCA has n states and it uses the two element neighborhood (0, 1) then the inverse neighborhood consists of at most n − 1 consecutive positions. This bound is tight.
SLIDE 22
Inverse neighborhood
In the case of one-dimensional RCA polynomial upper bounds on the size
- f the inverse neighborhood can be easily established. In this work we
derive the following precise formula for the maximum size of the inverse neighborhood in the one-dimensional case: Theorem (Czeizler, Kari 2005): If an RCA has n states and it uses the two element neighborhood (0, 1) then the inverse neighborhood consists of at most n − 1 consecutive positions. This bound is tight. Note: A quadratic upper bound O(n2) is very easy to establish, for example, using the Amoroso-Patt algorithm for deciding reversibility. However, for the precise bound n − 1 we were not able to find a simple combinatorial argument. Our proof is based on dimensionality arguments in linear algebra.
SLIDE 23
Inverse neighborhood
Our proof here is on the case when the forward neighborhood consists of two cells only. This is the smallest non-trivial neighborhood. If the forward neighborhood consists of m consecutive positions then we can consider the CA that we obtain by grouping m consecutive cells into ”super cells”. Then the super cells have a size two neighborhood. In fact, using our technique we can prove the following bound: Theorem (Czeizler, Kari 2005): If an RCA has n states and the forward neighborhood consists of m consecutive positions then the inverse neighborhood consists of at most nm−1 − 1 consecutive positions.
SLIDE 24
Inverse neighborhood
Our proof here is on the case when the forward neighborhood consists of two cells only. This is the smallest non-trivial neighborhood. If the forward neighborhood consists of m consecutive positions then we can consider the CA that we obtain by grouping m consecutive cells into ”super cells”. Then the super cells have a size two neighborhood. In fact, using our technique we can prove the following bound: Theorem (Czeizler, Kari 2005): If an RCA has n states and the forward neighborhood consists of m consecutive positions then the inverse neighborhood consists of at most nm−1 − 1 consecutive positions. This bound is not known to be tight, but we do have examples of automata with 2n states whose inverse neighborhood have range nm−1.
SLIDE 25
Inverse neighborhood
In the following we concentrate on the case of forward neighborhood N = (0, 1). Space-time diagrams are trellises
time
when the configurations are shifted in time to make the neighborhood look symmetric.
SLIDE 26
Example
Consider the three state CA whose local rule f is given by the table 1 2 3 1 1 1 2 2 2 2 1 3 3 3 3 This is reversible and the inverse automaton uses two cells to the right to determine the state of a cell.
SLIDE 27
Example
1 2 3 1 1 1 2 2 2 2 1 3 3 3 3
a b x y
States x and y determine a as follows:
SLIDE 28
Example
1 2 3 1 1 1 2 2 2 2 1 3 3 3 3
a b x y
States x and y determine a as follows:
- If x = 3 then a = 3.
SLIDE 29
Example
1 2 3 1 1 1 2 2 2 2 1 3 3 3 3
a b x y
States x and y determine a as follows:
- If x = 3 then a = 3.
- If x = 1 or 2 then we need state y:
- If y = 3 then b = 3, which means that a = 3 − x,
SLIDE 30
Example
1 2 3 1 1 1 2 2 2 2 1 3 3 3 3
a b x y
States x and y determine a as follows:
- If x = 3 then a = 3.
- If x = 1 or 2 then we need state y:
- If y = 3 then b = 3, which means that a = 3 − x,
- If y = 3 then b = 1 or 2, which means that a = x.
SLIDE 31
Example
The previous example can be generalized to n states: The local rule is f(i, j) = i, if j ≤ i, 1, if j = i + 1, i + 1, if j > i + 1.
- r, in the table form,
1 2 3 4 . . . n 1 1 1 2 2 . . . 2 2 2 2 1 3 . . . 3 3 3 3 3 1 . . . 4 . . . . . . . . . . . . . . . . . . n n n n n . . . n This CA is reversible and the inverse neighborhood consists of n − 1 consecutive cells to the right.
SLIDE 32
Welch sets and indices
From now on we assume a reversible CA with state set S = {1, 2, . . . , n} of cardinality n, local rule f : S2 − → S and neighborhood vector N = (0, 1). Let us use the following notations:
- S∗ is the set of words over alphabet S and Sk is the set of words of
length k,
- Sω is the set of one-way infinite words that are infinite to the right, and
- ωS is the set of one-way infinite words to the left.
SLIDE 33
Welch sets and indices
From now on we assume a reversible CA with state set S = {1, 2, . . . , n} of cardinality n, local rule f : S2 − → S and neighborhood vector N = (0, 1). Let us use the following notations:
- S∗ is the set of words over alphabet S and Sk is the set of words of
length k,
- Sω is the set of one-way infinite words that are infinite to the right, and
- ωS is the set of one-way infinite words to the left.
The local rule specifies two functions G : Sω − → Sω and G : ωS − → ωS (both denoted by the same symbol G as the global CA function) as follows:
- G(a1a2 . . .) = b1b2 . . . where each bi = f(ai, ai+1),
- G(. . . a2a1) = . . . b2b1 where each bi = f(ai+1, ai).
SLIDE 34
Welch sets and indices
For each w ∈ Sω we set L(w) = {a ∈ S | G(au) = w for some u ∈ Sω } and call it the left Welch set of w.
w Possible states here form the set L(w)
SLIDE 35
Welch sets and indices
For each w ∈ Sω we set L(w) = {a ∈ S | G(au) = w for some u ∈ Sω } and call it the left Welch set of w.
w Possible states here form the set L(w)
Analogously, for any v ∈ ωS we define the right Welch set as R(v) = {a ∈ S | G(ua) = v for some u ∈ ωS }.
SLIDE 36
Welch sets and indices
The Welch sets have the following easy to prove properties:
- For every w ∈ Sω and v ∈ ωS we have
|L(w) ∩ R(v)| = 1.
SLIDE 37
Welch sets and indices
The Welch sets have the following easy to prove properties:
- For every w ∈ Sω and v ∈ ωS we have
|L(w) ∩ R(v)| = 1.
- for every w ∈ Sω and v ∈ ωS we have
|L(w)| · |R(v)| = n, where n = |S| is the number of states. Consequently, the cardinalities |L(w)| and |R(v)| are independent of the choice of w and v.
SLIDE 38
Welch sets and indices
The Welch sets have the following easy to prove properties:
- For every w ∈ Sω and v ∈ ωS we have
|L(w) ∩ R(v)| = 1.
- for every w ∈ Sω and v ∈ ωS we have
|L(w)| · |R(v)| = n, where n = |S| is the number of states. Consequently, the cardinalities |L(w)| and |R(v)| are independent of the choice of w and v. We denote by nL the size of left Welch sets and by nR the size of the right Welch sets, and call them the left and the right Welch index. Then nL · nR = n.
SLIDE 39
Welch sets and indices
The following observation relates the Welch sets to the inverse neighborhood: Lemma: The inverse neighborhood of G is included in the interval {−r, . . . , l − 1} if and only if
- L(uw) = L(uv) for all u ∈ Sl and w, v ∈ Sω, and
- R(wu) = R(vu) for all u ∈ Sr and w, v ∈ ωS.
SLIDE 40
Vectors
We use vector spaces and their dimensions in our proofs. Any subset X of the state set S = {1, 2, . . . , n} is interpreted as the 0-1 vector X in Rn whose i’th coordinate is 1 if i ∈ X and 0 if i ∈ X.
SLIDE 41
Vectors
We use vector spaces and their dimensions in our proofs. Any subset X of the state set S = {1, 2, . . . , n} is interpreted as the 0-1 vector X in Rn whose i’th coordinate is 1 if i ∈ X and 0 if i ∈ X. For any X, Y ⊆ S the inner product X · Y is the cardinality of the intersection X ∩ Y .
SLIDE 42
Vectors
We use vector spaces and their dimensions in our proofs. Any subset X of the state set S = {1, 2, . . . , n} is interpreted as the 0-1 vector X in Rn whose i’th coordinate is 1 if i ∈ X and 0 if i ∈ X. For any X, Y ⊆ S the inner product X · Y is the cardinality of the intersection X ∩ Y . The vectors L and R corresponding to left and right Welch sets L and R will be called left and right Welch vectors, respectively.
SLIDE 43
Vectors
We use vector spaces and their dimensions in our proofs. Any subset X of the state set S = {1, 2, . . . , n} is interpreted as the 0-1 vector X in Rn whose i’th coordinate is 1 if i ∈ X and 0 if i ∈ X. For any X, Y ⊆ S the inner product X · Y is the cardinality of the intersection X ∩ Y . The vectors L and R corresponding to left and right Welch sets L and R will be called left and right Welch vectors, respectively. Let us denote by Θ the null space {(0, 0, . . . 0)} and by I the
- ne-dimensional space generated by the vector (1, 1, . . . , 1).
For any U ⊆ Rn the subspace of Rn generated by U is denoted as U.
SLIDE 44
Main results
Consider the vector spaces generated by the differences of the left Welch vectors (right Welch vectors, respectively): L0 =
- L(w) −
L(v) | w, v ∈ Sω, and R0 =
- R(w) −
R(v) | w, v ∈ ωS,
SLIDE 45
Main results
Consider the vector spaces generated by the differences of the left Welch vectors (right Welch vectors, respectively): L0 =
- L(w) −
L(v) | w, v ∈ Sω, and R0 =
- R(w) −
R(v) | w, v ∈ ωS, Proposition: The inverse neighborhood of G is included in the interval {− dim R0, . . . , dim L0 − 1}. It then contains at most dim L0 + dim R0 elements.
SLIDE 46
Main results
Proof: Let us define a sequence of linear spaces. For every k = 0, 1, 2, . . . Lk =
- L(uw) −
L(uv) | u ∈ Sk, w, v ∈ Sω, and Rk =
- R(wu) −
R(vu) | u ∈ Sk, w, v ∈ ωS. We make the following observations:
- There is l such that Ll = Θ, the null space,
- Lk+1 ⊆ Lk for every k = 0, 1, 2, . . ., and
- if Lk+1 = Lk then Lj = Lk for every j ≥ k.
SLIDE 47
Main results
It then follows that L0 L1 L2 . . . Ll = Θ for some l. Since the dimension of the subspaces decreases at every step, we must have l ≤ dim L0.
SLIDE 48
Main results
It then follows that L0 L1 L2 . . . Ll = Θ for some l. Since the dimension of the subspaces decreases at every step, we must have l ≤ dim L0. Analogous reasoning can be done at the right side. We conclude that there are l ≤ dim L0 and r ≤ dim R0 such that Ll = Rr = Θ. But according to our earlier lemma, Ll = Rr = Θ implies that the inverse neighborhood is included in {−r, . . . , l − 1}.
SLIDE 49
Main results
Corollary 1: Always dim L0 + dim R0 ≤ n − 1. Hence the inverse neighborhood of G contains at most n − 1 consecutive positions.
SLIDE 50
Main results
Corollary 1: Always dim L0 + dim R0 ≤ n − 1. Hence the inverse neighborhood of G contains at most n − 1 consecutive positions. Proof: Vector spaces L0 and R0 are orthogonal to each other because for any generators L(w) − L(v) of L0 and R(x) − R(y) of R0 we have [ L(w) − L(v)] · [ R(x) − R(y)] = 1 − 1 − 1 + 1 = 0.
SLIDE 51
Main results
Corollary 1: Always dim L0 + dim R0 ≤ n − 1. Hence the inverse neighborhood of G contains at most n − 1 consecutive positions. Proof: Vector spaces L0 and R0 are orthogonal to each other because for any generators L(w) − L(v) of L0 and R(x) − R(y) of R0 we have [ L(w) − L(v)] · [ R(x) − R(y)] = 1 − 1 − 1 + 1 = 0. Spaces L0 and R0 are also orthogonal to the one-dimensional space I generated by the vector (1, 1, . . . , 1): [ L(w) − L(v)] · (1, 1, . . . , 1) = nL − nL = 0. Adding up dimensions gives dim L0 + dim R0 + 1 ≤ n.
SLIDE 52
Main results
We can also relate the Welch indices nL and nR to the inverse neighborhood: Corollary 2: Always dim L0 ≤ n − nL and dim R0 ≤ n − nR. Hence the inverse neighborhood of G is contained in the interval {nR − n, . . . , n − nL − 1}.
SLIDE 53
Main results
We can also relate the Welch indices nL and nR to the inverse neighborhood: Corollary 2: Always dim L0 ≤ n − nL and dim R0 ≤ n − nR. Hence the inverse neighborhood of G is contained in the interval {nR − n, . . . , n − nL − 1}. Proof: Consider the left Welch vectors L(u). Each is a 0-1 vector with nL
- nes. Every element of S belongs to some left Welch set, so one can select
n nL = nR Welch vectors one-by-one in such a way that each new vector
contains 1 in some position not covered by previously chosen vectors. This implies that the selected nR vectors are linearly independent.
SLIDE 54
Main results
Next we use the following simple fact: if v1, v2, . . . , vk are k linearly independent vectors, then v2 − v1, v3 − v1, . . . , vk − v1 are k − 1 linearly independent vectors. Among the generators of L0 there are hence at least nR − 1 linearly independent vectors, so that dim L0 ≥ nR − 1.
SLIDE 55
Main results
Next we use the following simple fact: if v1, v2, . . . , vk are k linearly independent vectors, then v2 − v1, v3 − v1, . . . , vk − v1 are k − 1 linearly independent vectors. Among the generators of L0 there are hence at least nR − 1 linearly independent vectors, so that dim L0 ≥ nR − 1. Because dim L0 + dim R0 ≤ n − 1, we get dim R0 ≤ (n − 1) − dim L0 ≤ (n − 1) − (nR − 1) = n − nR. Analogously dim L0 ≤ n − nL.
SLIDE 56
Conclusion
We have proved a tight bound on the size of the inverse neighborhood of
- ne-dimensional reversible CA. Interestingly, the proofs were based on
elementary linear algebra. The result is a particular case of a more general result concerning synchronization time in finite automata.
SLIDE 57
Conclusion
We have proved a tight bound on the size of the inverse neighborhood of
- ne-dimensional reversible CA. Interestingly, the proofs were based on
elementary linear algebra. The result is a particular case of a more general result concerning synchronization time in finite automata. Open questions:
- Is the bound nm−1 − 1 for size m neighborhoods tight ?
SLIDE 58
Conclusion
We have proved a tight bound on the size of the inverse neighborhood of
- ne-dimensional reversible CA. Interestingly, the proofs were based on
elementary linear algebra. The result is a particular case of a more general result concerning synchronization time in finite automata. Open questions:
- Is the bound nm−1 − 1 for size m neighborhoods tight ?
- Can the result be used to speed-up algorithms that determine
reversibility ?
SLIDE 59
Conclusion
We have proved a tight bound on the size of the inverse neighborhood of
- ne-dimensional reversible CA. Interestingly, the proofs were based on
elementary linear algebra. The result is a particular case of a more general result concerning synchronization time in finite automata. Open questions:
- Is the bound nm−1 − 1 for size m neighborhoods tight ?
- Can the result be used to speed-up algorithms that determine
reversibility ?
- Can the dimension reasoning and linear algebra be used to solve other