Block Product (operational view) ( M , ⋅ ) ( N , + ) M □ N … a … u h : Σ → M □ N … … a u h 1 : Σ → M
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 )
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 )
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 ′ � )
Block Product example
Block Product example U 1 = ({1,0}, ⋅ )
Block Product example U 1 = ({1,0}, ⋅ ) L = { u | u contains exactly one a } Σ = { a , b }
Block Product example U 1 = ({1,0}, ⋅ ) U 1 □ U 1 L = { u | u contains exactly one a } Σ = { a , b }
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
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 )
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
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
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
Block Product for -Monoid ⊛
Block Product for -Monoid ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π )
Block Product for -Monoid ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) Satisfies Generalized Associativity
Block Product for -Algebra ⊛
Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) &
Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) & ( M , ⋅ , τ , τ *, κ ) ( N , + , ̂ τ , ̂ τ *, ̂ ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) κ ) &
Block Product for -Algebra ⊛ ( M , π ) ( N , ̂ π ) ( M □ N , ˜ π ) & ( M , ⋅ , τ , τ *, κ ) ( N , + , ̂ τ , ̂ τ *, ̂ ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) κ ) & Effective
Block Product (operational view)
̂ ̂ ̂ Block Product (operational view) ( M , ⋅ , τ , τ *, κ ) ( M □ N , ˜ ⋅ , ˜ τ , ˜ τ *, ˜ κ ) ( N , + , τ , τ *, κ ) … a … u h : Σ → M □ N
̂ ̂ ̂ 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 )
̂ ̂ ̂ 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 ′ � )
̂ ̂ ̂ 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
Applications to Logic
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
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
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
First Order Logic (CLO)
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ∃ x ψ ( x ) a ( x )
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable countable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∃ x ψ ( x ) a ( x )
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 )
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
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 )
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 ) ×
First Order Logic (CLO)
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ∃ x ψ ( x ) a ( x )
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ( a 1 ) … … u ∈ L ( ψ ) ∃ x ψ ( x ) a ( x ) M
First Order Logic (CLO) ℒ ( □ * U 1 ) ⊇ FO definable languages ϕ = ∃ x ψ ( x ) ( 1 ) a … … u ∈ L ( ψ ) ∃ x ψ ( x ) … a … v = proj ( u , Σ ) a ( x ) M
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
Marked Star Free Expression
Marked Star Free Expression s = ∅ | a | s 1 + s 2 | s 1 ∩ s 2 | ¬ s | s 1 . a . s 2 a ∈ Σ
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
Linear Temporal Logic [S, U]
Recommend
More recommend