Register-Bounded Synthesis Ayrat Khalimov Orna Kupferman Universite libre de Bruxelles Hebrew University Belgium Israel
Why study bounded synthesis from universal automata?
why register- bounded synthesis? β’ Not a limitation: designer usually knows the sensible bound on the number of registers β’ Added benefit: small programs
why universal register automata? system All computations (ππ 0 , ππ£π’ 0 ) (ππ 1 , ππ£π’ 1 ) (ππ 2 , ππ£π’ 2 ) β¦ satisfy a given specification.
why universal register automata? system All computations (ππ 0 , ππ£π’ 0 ) (ππ 1 , ππ£π’ 1 ) (ππ 2 , ππ£π’ 2 ) β¦ satisfy a given specification. Most specifications are derived from arbiter: βπ β πΈ: π(π ππ β§ π = π β π π(ππ πππ’ β§ π = π))
why universal register automata? system All computations (ππ 0 , ππ£π’ 0 ) (ππ 1 , ππ£π’ 1 ) (ππ 2 , ππ£π’ 2 ) β¦ satisfy a given specification. Most specifications are derived from arbiter: βπ β πΈ: π(π ππ β§ π = π β π π(ππ πππ’ β§ π = π)) Universal register automata can express this. Nondeterministic -- cannot.
universal register automaton β’ Works on words in Ξ£ Γ πΈ Γ πΈ π β’ Registers π = {π 1 , β¦ , π π π΅ } , initialized π€ 0 β’ Transition function π Γ Ξ£ Γ ππ‘π’ π Γ ππ‘π’ π β 2 π Γπ΅π‘ππ Arbiter specification (coBuchi)
universal register automaton π ππ,1 Β¬π ππ,2 Β¬π ππ,3 Β¬ππ πππ’,1 β¦ β’ Word: Β¬ππ πππ’,0 ππ πππ’,1 β’ Run-graph: π 0 , 0 π 0 , 0 π 0 , 0 π 0 , 0 π 1 , 1
register transducer β’ Reads a letter in Ξ£ π½ Γ πΈ β’ Outputs a letter in Ξ£ π Γ πΈ β’ Registers π = {π 1 , β¦ , π π π‘ } , initialized with π€ 0 β’ Transition function π Γ Ξ£ π½ Γ ππ‘π’ π β π Γ Ξ£ π Γ π Γ π΅π‘ππ
arbiter β’ Input: π ππ, 1 Β¬π ππ, 2 Β¬π ππ, 3 β¦ Β¬π,0 π‘ 1 , 1 π,1 π‘ 0 , 1 Β¬π,1 π‘ 0 , 1 β¦ β’ Run: (s 0 , 0)
bounded synthesis problem Given: β’ Ξ£ π½ , Ξ£ π β’ universal register automaton π΅ over Ξ£ π½ Γ Ξ£ π Γ πΈ Γ πΈ β’ the number π π‘ of system registers Return: β’ π π‘ -register transducer π such that π β¨ π΅ , or βunrealizableβ Bounded synthesis problem is solvable in EXP in π and π π‘ , and 2EXP in π π΅ .
abstraction π©β² π‘ β π Γ Ξ£ π Γ π π‘ Γ π΅π‘ππ π‘ π: π Γ Ξ£ π½ Γ ππ‘π’ π β² β π Γ Ξ£ π β² π β² : π Γ Ξ£ π½ π» π· π» π πΌβ² π©πππ π π πΌππ π πΊ π We construct register- less automaton π΅ β² with β² Γ Ξ£ π π β² Γ Ξ£ π½ β 2 π β² β² such that π β² β¨ π΅β² iff π β¨ π΅ for every π or π β² .
abstracting a single transition
abstracting a single transition 2 2 2 2 2
abstracting a single transition 1 1 2 2 2 2 2 1
abstracting a single transition
abstracting a single transition
abstracting a single transition Two possibilities: β’ π = π π β’ π β π π
abstracting a single transition Two possibilities: β’ π = π π β’ π β π π
abstracting a single transition
one π’π‘π’ π‘ can induce several π’π‘π’ π΅
bisimulation property of the abstraction transition π‘ , π π’π‘π’ π π‘ , ππ‘ππ π‘ of π΅ β² and π, π πβ², πβ² some π β² transition π, π β² , π π β² π β² , π π© of π΅ and π, π€ π΅ , π€ π‘ some π
bisimulation property of the abstraction transition π , π π , ππππ π πππ π of π΅ β² and π, π πβ², πβ² some π β² transition π, π β² , π€ π‘ π β² , π€ π΅ β² of π΅ and π, π€ π΅ , π€ π‘ some π
β’ For every π or π β² : π β² β¨ π΅β² iff π β¨ π΅ β’ Recall that synthesis is EXP in |π β² | β’ π β² = π Γ Ξ , where Ξ is the set of partitions of π = π π‘ βͺ π π΅ β’ Ξ is EXP in (π π‘ + π π΅ ) => synthesis is 2EXP in π π‘ and π π΅ But system partitions behave deterministically => only EXP in π π
Part 2
environ system ment register register transducer transducer Environments have their own limits. Let them be register transducers. πππ€||π‘π§π‘ = ππ 0 , ππ£π’ 0 ππ 1 , ππ£π’ 1 β¦ Note: the number of values is at most π π‘ + π π .
env-sys-bounded synthesis problem Given: β’ Ξ£ π½ , Ξ£ π β’ universal register automaton π΅ with Ξ£ π½ and Ξ£ π β’ the number π π‘ of system registers β’ the number π π of environment registers Return: β’ π π‘ -register transducer π‘π§π‘ such that πππ€||π‘π§π‘ β¨ π΅ for every π π -register environment, or βunrealizableβ Env-sys-bounded synthesis problem is solvable in EXP in |π | and π π‘ , 2EXP in π π΅ and π π .
idea of the abstraction π 0 , π π΅ = π π = π π ( π‘π’ππ π π ) π 0 , π π΅ = π π β π π 0 , π π΅ = π π = π π π similarlyβ¦
conclusion β’ Cleaner algorithm => tighter complexity analysis (only EXP in π π‘ ) β’ Solution to the environment-system-bounded synthesis problem In the full version: β’ Non-determinacy β’ Hierarchy of system and environment power
Recommend
More recommend