involutory turing machines
play

Involutory Turing Machines Keisuke Nakano RIEC, Tohoku University - PowerPoint PPT Presentation

Involutory Turing Machines Keisuke Nakano RIEC, Tohoku University RC 2020 @ Online Involution f x dom ( f ). f ( f (x) ) = x Involution (a.k.a. involutory function) A function that is own inverse I.e., f(x) = y if and only if f(y)


  1. Involutory Turing Machines Keisuke Nakano RIEC, Tohoku University RC 2020 @ Online

  2. Involution f ∀ x ∈ dom ( f ). f ( f (x) ) = x Involution (a.k.a. involutory function) A function that is own inverse I.e., f(x) = y if and only if f(y) = x A particular kind of reversible (≈ injective) function Application of involution Mathematical proofs / cryptographic systems / Bidirectional transformation (mentioned later)

  3. Overview functions Computable x = y ⇒ f(x) = f(y) Characterized by Turing Machine ( TM ) etc. injective functions w/ function semantics [AxelsenGlück16] f(x) = f(y) ⇒ x = y Characterized by Reversible TM ( RTM ) involutory functions ↓ This work! f(x) = y ⇒ x = f(y) Characterized by Involutory TM ( ITM )

  4. Prior work on RTM [AxelsenGlück16] RTM : backward-deterministic TM input output ≃ ≃ step step step step step initial final C I C F config. config. step step step step step RTM always computes an injective function Any computable injective function can be computed by an RTM. A universal RTM exists which simulates any RTM.

  5. Prior work on RTM [Axelsen+16] input output This work on ITM ≃ ≃ step step step step step initial final C I C F config. config. step step step step step RTM : backward-deterministic TM ITM : somehow restricted TM ITM RTM always computes an injective function ITM involutory Any computable injective function can be involutory computed by an RTM. ITM A universal RTM exists which simulates any RTM. ITM ITM

  6. Rest of This Talk Involutory Turing Machine (ITM) Definition and Semantics of TM Results on Reversible TM Definition of ITM Properties of ITM Expressiveness (Tape Reduction / Universality) Application of ITM Relationship with Bidirectional Transformation Conclusion

  7. Turing Machine (TM) T = (Q, Σ , q I , q F , Δ ) set of states set of transitions initial state in Q set of tape symbols final state in Q (except blank) Working on multiple doubly-infinite tapes Each tape has a head. q I q F ↓ ↓ f i r s t o n e 1 1 All left cells of the head are ↓ ↓ step* s e c o n d t w o 2 2 : : blank initially and finally . ↓ ↓ k t h k k k

  8. Transition Rule (q 1 , a, q 2 ) ∈ Δ target state source state in Q − {q I } in Q − {q F } q 1 q 2 action ↓ ↓ f o u r t h f i r s t 1 1 symbol ↓ ↓ a ≡ s 1 ⇒ s 2 ( 3 ) (q 1 , , q 2 ) 1 2 3 4 s e c o n d s e c o n d 2 2 4 2 1 ↓ ↓ move f i r s t t h i r d 3 3 a ≡ ← or • or → ↓ ↓ permutation t h i r d f o u r t h 4 4 Permute the order of the tapes a ≡ ( i k ) k 1 2 … with preserving contents i 1 i 2 …

  9. Deterministic/Reversible TM Deterministic TM (DTM, or TM simply) (Locally) forward-deterministic TM ( q , a 1 , − ) ≠ ( q , a 2 , − ) ∈ Δ ⟹ a 1 and a 2 are symbol actions w/ different inputs Reversible TM (RTM) (Locally) forward- & backward-deterministic TM ( − , a 1 , q ) ≠ ( − , a 2 , q ) ∈ Δ ⟹ a 1 and a 2 are symbol actions w/ different outputs

  10. Semantics of TM q I q F ↓ ↓ o n e f i r s t 1 1 step step step ... ↓ ↓ t w o s e c o n d 2 2 : : run ↓ ↓ k k t h k k ⟦ T ⟧ ( first , second , ... , kth ) = ( one , two , ... , k ) Function semantics [AxelsenGlück16] Input/output ≈ initial/final configuration Convention. When ⟦ T ⟧ (x 1 , ..., x k )=(y 1 , ..., y k ) implies x i+1 =...=x k =y j+1 =...=y k = ε , we may identify the function with ⟦ T ⟧ (x 1 , ..., x i ) = (y 1 , ..., y j ) .

  11. Syntactic Inverse of TM For T = (Q, Σ , q I , q F , Δ ) , T − 1 ≝ (Q, Σ , q F , q I , Δ − 1 ) where Δ − 1 = { (q 2 , a − 1 , q 1 ) | (q 1 , a, q 2 ) ∈ Δ } (s 1 ⇒ s 2 ) − 1 = s 2 ⇒ s 1 ( ← ) − 1 = → , ( • ) − 1 = • , ( → ) − 1 = ← ( i k ) ( k ) i 1 … i k k 1 … − 1 = i 1 … 1 … Proposition. Let T be an RTM. T − 1 is an RTM s.t. ⟦ T − 1 ⟧ = ⟦ T ⟧ − 1 .

  12. Expressiveness of RTM [Axelsen+16] Proposition. If the semantics of TM T is injective, then there exists an RTM T ' s.t. ⟦ T ' ⟧ = ⟦ T ⟧ . Semantics of non-RTM can be injective. C I C F Backward non-determinism Proposition implies " an equivalent RTM always exists ." Cororally. Any computable injective function can be computed by an RTM.

  13. Involutory TM (ITM) TM T = (Q, Σ , q I , q F , Δ ) is involutory if ∃ψ : involution over Q s.t. ψ (q I ) = q F (q 1 , a, q 2 ) ∈ Δ ⟹ ( ψ (q 2 ), a − 1 , ψ (q 1 )) ∈ Δ q F q I | | | | q I q 1 q 2 q m q F ψ ( ) ψ ( ) ψ ( ) ψ ( ) ψ ( ) ↓ ↓ ↓ ↓ ↓ f i r s t o n e 1 1 : : ↓ ↓ k t h k k k

  14. Involutory TM (ITM) TM T = (Q, Σ , q I , q F , Δ ) is involutory if ∃ψ : involution over Q s.t. Theorem. Let T be an ITM. ψ (q I ) = q F Then ⟦ T ⟧ is involutory, i.e., ⟦ T ⟧ = ⟦ T ⟧ − 1 holds. (q 1 , a, q 2 ) ∈ Δ ⟹ ( ψ (q 2 ), a − 1 , ψ (q 1 )) ∈ Δ q F q I | | | | q I q 1 q 2 q m q F ψ ( ) ψ ( ) ψ ( ) ψ ( ) ψ ( ) ↓ ↓ ↓ ↓ ↓ f i r s t o n e 1 1 : : ↓ ↓ k t h k k k

  15. Expressiveness of ITM Theorem. If the semantics of TM T is involutory, then there exists an ITM T ' s.t. ⟦ T ' ⟧ = ⟦ T ⟧ . Semantics of non-ITM can be involutory. Imagine a TM that computes bitwise negation by negating bits left-to-right and moving back. q q I q F ↓ ↓ ↓ 0 0 1 1 1 0 1 1 0 1 1 1 Obviously, this is not an ITM. Cororally. Any computable involution can be computed by an ITM.

  16. Proof of ITM Expressiveness Theorem. If the semantics of TM T is involutory, then there exists an ITM T ' s.t. ⟦ T ' ⟧ = ⟦ T ⟧ . Proof sketch. Let T be a TM s.t. ⟦ T ⟧ is involutory. Let d and r be functions s.t. d(x, ε ) = (x, x) and r(x,y) = ( ⟦ T ⟧ (x), y) . Due to their injectivity, we have RTMs T d and T r s.t. ⟦ T d ⟧ =d , ⟦ T r ⟧ =r . An ITM T ' we want is obtained by concatenating T d , T r and their inverses with a single permutation as below. ⟦ T ⟧ (x) = ⟦ T ⟧ − 1 (x) ⟦ T ⟧ (x) x x x ⟦ T ⟧ (x) T r − 1 T d − 1 T d T r ⟦ T ⟧ (x) ⟦ T ⟧ (x) x x ε ε

  17. Applications to BX get A,X,300 A,300 B,Y,200 C,400 V S C,X,400 : 100 : 100 put BX: bidirectional transformation Pair of get : S → V and put : S × V → S Characterized by pg : S × V → S × V such that pg(s, v) = (put(s, v), get(s)) Consistency forces involutoriness of pg pg(pg(s, v)) = (s, v) holds (※ for very-well-behaved lens )

  18. Conclusion Involutory Turing machine is presented. ITM always computes involution. Any computable involution is computed by an ITM. Permutation rule plays an important role for this. Universal involutory Turing machine exists. It can be efficiently constructed by Bennet's trick. The work is motivated by my BX research. Exact computational model of BX is coming soon.

Recommend


More recommend