block products for algebras over countable words and
play

Block Products for Algebras over Countable words and Applications to - PowerPoint PPT Presentation

Block Products for Algebras over Countable words and Applications to Logic Saptarshi Sarkar, IIT Bombay Joint work with: Bharat Adsul, IIT Bombay & A.V. Sreejith, IIT Goa LICS 2019 This talk is in the setting of Countable Linear Orderings


  1. Block Product (operational view) ( M , ⋅ ) ( N , + ) M □ N … a … u h : Σ → M □ N … … a u h 1 : Σ → M

  2. Block Product (operational view) ( M , ⋅ ) ( N , + ) M □ N … a … u h : Σ → M □ N … … a u h 1 : Σ → M σ : Σ * → ( M × Σ × M )* h 1 h 1 … … h 1 ( u < x ) , a , h 1 ( u > x ) u ′ � = σ ( u )

  3. Block Product (operational view) ( M , ⋅ ) ( N , + ) M □ N … a … u h : Σ → M □ N … … a u h 1 : Σ → M σ : Σ * → ( M × Σ × M )* h 1 h 1 … … h 1 ( u < x ) , a , h 1 ( u > x ) h 2 : M × Σ × M → N u ′ � = σ ( u )

  4. Block Product (operational view) ( M , ⋅ ) ( N , + ) M □ N … a … u h : Σ → M □ N … … a u h 1 : Σ → M σ : Σ * → ( M × Σ × M )* h 1 h 1 … … h 1 ( u < x ) , a , h 1 ( u > x ) h 2 : M × Σ × M → N u ′ � = σ ( u ) h ( u ) is completely determined by h 1 ( u ) and h 2 ( u ′ � )

  5. Block Product example

  6. Block Product example U 1 = ({1,0}, ⋅ )

  7. Block Product example U 1 = ({1,0}, ⋅ ) L = { u | u contains exactly one a } Σ = { a , b }

  8. Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b }

  9. Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b } … … a ↦ 0 a u h 1 : b ↦ 1

  10. Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b } … … a ↦ 0 a u h 1 : b ↦ 1 h 1 h 1 σ : Σ * → ( U 1 × Σ × U 1 )* … … 1 , a , 1 u ′ � = σ ( u )

  11. Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b } … … a ↦ 0 a u h 1 : b ↦ 1 h 1 h 1 σ : Σ * → ( U 1 × Σ × U 1 )* … … 1 , a , 1 1, a , 1 ↦ 0 h 2 : u ′ � = σ ( u ) … ↦ 1

  12. Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b } … … a ↦ 0 a u h 1 : b ↦ 1 h 1 h 1 σ : Σ * → ( U 1 × Σ × U 1 )* … … 1 , a , 1 1, a , 1 ↦ 0 h 2 : u ′ � = σ ( u ) … ↦ 1 u ∈ L i ff h 1 ( u ) = 0 & h 2 ( u ′ � ) = 0

  13. Block Product Principle ( M , ⋅ ) ( N , + ) ( M □ N , ˜ ⋅ ) & Given h : Σ → M □ N , let h 1 : Σ → M be the projection of h on M Any language recognized by M □ N is a boolean combination of 1) Languages recognized by M 2) σ − 1 of languages recognized by N σ is transducer induced by h 1

  14. Block Product for -Monoid ⊛

  15. Block Product for -Monoid ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π )

  16. Block Product for -Monoid ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) Satisfies Generalized Associativity

  17. Block Product for -Algebra ⊛

  18. Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) &

  19. Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) & ( M , ⋅ , τ , τ *, κ ) ( N , + , ̂ τ , ̂ τ *, ̂ ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) κ ) &

  20. Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) & ( M , ⋅ , τ , τ *, κ ) ( N , + , ̂ τ , ̂ τ *, ̂ ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) κ ) & Effective

  21. Block Product (operational view)

  22. ̂ ̂ ̂ Block Product (operational view) ( M , ⋅ , τ , τ *, κ ) ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) ( N , + , τ , τ *, κ ) … a … u h : Σ → M □ N

  23. ̂ ̂ ̂ Block Product (operational view) ( M , ⋅ , τ , τ *, κ ) ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) ( N , + , τ , τ *, κ ) … a … u h : Σ → M □ N … … a u h 1 : Σ → M σ : Σ ⊕ → ( M × Σ × M ) ⊕ h 1 h 1 … … h 1 ( u < x ) , a , h 1 ( u > x ) u ′ � = σ ( u )

  24. ̂ ̂ ̂ Block Product (operational view) ( M , ⋅ , τ , τ *, κ ) ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) ( N , + , τ , τ *, κ ) … a … u h : Σ → M □ N … … a u h 1 : Σ → M σ : Σ ⊕ → ( M × Σ × M ) ⊕ h 1 h 1 … … h 1 ( u < x ) , a , h 1 ( u > x ) h 2 : M × Σ × M → N u ′ � = σ ( u ) h ( u ) is completely determined by h 1 ( u ) and h 2 ( u ′ � )

  25. ̂ ̂ ̂ Block Product Principle ( M , ⋅ , τ , τ *, κ ) ( N , + , τ , τ *, κ ) ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) & Given h : Σ → M □ N , let h 1 : Σ → M be the projection of h on M Any countable language recognized by M □ N is a boolean combination of 1) Countable languages recognized by M 2) σ − 1 of countable languages recognized by N σ is transducer induced by h 1

  26. Applications to Logic

  27. Block Product Closure (( U 1 □ U 1 ) □ U 1 ) □ U 1 … Iterated Block product … U 1 □ ( U 1 □ ( U 1 □ U 1 )) Weakly Iterated Block product □ * U 1 = set of all iterated block products of U 1 □ * w U 1 = set of all weakly iterated block products of U 1 1 if u has no 0 π ( u ) = U 1 = ({0,1}, π ) 0 if u has at least one 0

  28. Block Product & Logic (finite words) ℒ ( □ * U 1 ) = FO definable languages [Krohn, Rhodes] = LTL definable languages [Kamp] ℒ ( □ * w U 1 ) = FO 2 definable languages [Straubing, Therien] 1 if u has no 0 π ( u ) = U 1 = ({0,1}, π ) 0 if u has at least one 0

  29. First Order Logic (CLO) ℒ ( □ * U 1 ) = FO definable countable languages ℒ ( □ * w U 1 ) = FO 2 definable countable languages 1 if u has no 0 π ( u ) = U 1 = ({0,1}, π ) 0 if u has at least one 0

  30. First Order Logic (CLO)

  31. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages

  32. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ∃ x ψ ( x ) a ( x )

  33. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ψ ( x ) a ( x )

  34. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ∙ ( 1 ) exists ψ ( x ) a ∙ exactly one ( 1 ) * a ( x )

  35. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ∙ ( 1 ) exists ψ ( x ) a ∙ exactly one ( 1 ) * a ( x ) U 1

  36. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ∙ ( 1 ) exists ψ ( x ) a ∙ exactly one ( 1 ) * a ( x ) U 1 ( U 1 □ U 1 )

  37. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ∙ ( 1 ) exists ψ ( x ) a ∙ exactly one ( 1 ) * a ( x ) U 1 ( U 1 □ U 1 ) ×

  38. First Order Logic (CLO)

  39. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ∃ x ψ ( x ) a ( x )

  40. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∈ L ( ψ ) ∃ x ψ ( x ) a ( x ) M

  41. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ( 1 ) a … … u ∈ L ( ψ ) ∃ x ψ ( x ) … a … v = proj ( u , Σ ) a ( x ) M

  42. First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ( 1 ) a … … u ∈ L ( ψ ) ∃ x ψ ( x ) … a … v = proj ( u , Σ ) a ( x ) M □ U 1

  43. Marked Star Free Expression

  44. Marked Star Free Expression s = ∅ | a | s 1 + s 2 | s 1 ∩ s 2 | ¬ s | s 1 . a . s 2 a ∈ Σ

  45. Marked Star Free Expression s = ∅ | a | s 1 + s 2 | s 1 ∩ s 2 | ¬ s | s 1 . a . s 2 a ∈ Σ Marked Star Free Expressions ≡ FO ≡ □ * U 1 1 if u has no 0 π ( u ) = U 1 = ({0,1}, π ) 0 if u has at least one 0

  46. Linear Temporal Logic [S, U]

Recommend


More recommend