Efficient Handling of Obligation Constraints in Synthesis from - - PowerPoint PPT Presentation

efficient handling of obligation constraints in synthesis
SMART_READER_LITE
LIVE PREVIEW

Efficient Handling of Obligation Constraints in Synthesis from - - PowerPoint PPT Presentation

Introduction: Synthesis from -regular properties The Challenges in improving Quality of Results R -Generable languages Experimental Results Conclusions Efficient Handling of Obligation Constraints in Synthesis from Omega-Regular


slide-1
SLIDE 1

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Efficient Handling of Obligation Constraints in Synthesis from Omega-Regular Specifications

Saqib bin Sohail

Department of Electrical and Computer Engineering University of Colorado at Boulder

FMCAD 2013

Efficient Handling of Obligation Constraints

slide-2
SLIDE 2

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Outline

1 Introduction: Synthesis from ω-regular properties 2 The Challenges in improving Quality of Results 3 R-Generable languages 4 Experimental Results 5 Conclusions

Efficient Handling of Obligation Constraints

slide-3
SLIDE 3

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Outline

1 Introduction: Synthesis from ω-regular properties 2 The Challenges in improving Quality of Results 3 R-Generable languages 4 Experimental Results 5 Conclusions

Efficient Handling of Obligation Constraints

slide-4
SLIDE 4

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Realizability of an ω-regular property

Let φ be an ω-regular property describing the relation between inputs XI and outputs XO where ΣI = 2XI and ΣO = 2XO. The realizability problem for φ is to decide whether there is a strategy τ : Σ∗

I → ΣO which generates an output word σO ∈ Σω O for every

input word σI ∈ Σω

I such that the input-output word

σ = (σ0

I , σ0 O), (σ1 I , σ1 O), (σ2 I , σ2 O), . . .

satisfies φ.

Efficient Handling of Obligation Constraints

slide-5
SLIDE 5

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Realizability and Synthesis

If a specification (set of ω-regular properties) is realizable then from the winning strategy we can generate an implementation (transducer) which guarantees the satisfaction of the specification.

Efficient Handling of Obligation Constraints

slide-6
SLIDE 6

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Various approaches of checking Realizability

Pnueli and Rosner (POPL’89) Requires determinization “Safraless” approach - Vardi et al. (FOCS’05) Same worst case complexity but avoids determinization Reactive(1) Designs - Piterman et al. (VMCAI’06) Subset of ω-regular languages that can be synthesized efficiently SAFETY-FIRST - Sohail et al. (VMCAI’08, FMCAD’09)

Two-stage approach improves efficiency Achieved efficiency without sacrificing generality

BOUNDED SYNTHESIS and its variants - Ehlers, Raskin et al. Sequence of safety games

Efficient Handling of Obligation Constraints

slide-7
SLIDE 7

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Efficiency and Quality

Current techniques focus on efficiency of the realizability check and

  • verlook the quality of the implementation.

Quality of Results (QoR) - the amount of combinational and sequential logic required by the implementation. The implementation generated by automatic techniques is not good enough even when compared against an implementation generated by a novice designer.

Efficient Handling of Obligation Constraints

slide-8
SLIDE 8

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Efficiency and Quality

Current techniques focus on efficiency of the realizability check and

  • verlook the quality of the implementation.

Quality of Results (QoR) - the amount of combinational and sequential logic required by the implementation. The implementation generated by automatic techniques is not good enough even when compared against an implementation generated by a novice designer.

Efficient Handling of Obligation Constraints

slide-9
SLIDE 9

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Outline

1 Introduction: Synthesis from ω-regular properties 2 The Challenges in improving Quality of Results 3 R-Generable languages 4 Experimental Results 5 Conclusions

Efficient Handling of Obligation Constraints

slide-10
SLIDE 10

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings

Symbolic algorithms have had significant impact on the performance

  • f model checking algorithms.

Symbolic encoding of a game graph plays a significant role in the efficiency of game playing algorithms. However, finding an efficient encoding of the game graph is not a trivial task.

Efficient Handling of Obligation Constraints

slide-11
SLIDE 11

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings

Symbolic algorithms have had significant impact on the performance

  • f model checking algorithms.

Symbolic encoding of a game graph plays a significant role in the efficiency of game playing algorithms. However, finding an efficient encoding of the game graph is not a trivial task.

Efficient Handling of Obligation Constraints

slide-12
SLIDE 12

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings

Symbolic algorithms have had significant impact on the performance

  • f model checking algorithms.

Symbolic encoding of a game graph plays a significant role in the efficiency of game playing algorithms. However, finding an efficient encoding of the game graph is not a trivial task.

Efficient Handling of Obligation Constraints

slide-13
SLIDE 13

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings... (continued)

A common approach of converting the specification to a game graph is:

  • btain a game graph for each property through explicit

techniques then generate the symbolic representation of the game graph then composing the symbolic representation of these game graphs to yield the game graph of the specification.

Efficient Handling of Obligation Constraints

slide-14
SLIDE 14

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings... (continued)

A common approach of converting the specification to a game graph is:

  • btain a game graph for each property through explicit

techniques then generate the symbolic representation of the game graph then composing the symbolic representation of these game graphs to yield the game graph of the specification.

Efficient Handling of Obligation Constraints

slide-15
SLIDE 15

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings... (continued)

This approach often creates game graphs which contain unreachable states, simulation equivalent states and states that can easily be identified as winning/losing. Once these states have been identified and removed, the challenge is to generate a suitable encoding for the simplified game graph.

Efficient Handling of Obligation Constraints

slide-16
SLIDE 16

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Redundancies and Inefficiencies in Symbolic Encodings... (continued)

This approach often creates game graphs which contain unreachable states, simulation equivalent states and states that can easily be identified as winning/losing. Once these states have been identified and removed, the challenge is to generate a suitable encoding for the simplified game graph.

Efficient Handling of Obligation Constraints

slide-17
SLIDE 17

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Unreachable and simulation equivalent states

The composed automaton may contain simulation equivalent states even if the original two automata do not.

Efficient Handling of Obligation Constraints

slide-18
SLIDE 18

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Unreachable and simulation equivalent states

The composed automaton may contain simulation equivalent states even if the original two automata do not.

a ∨ ¬c ¬a ∧ c ¬a ∧ c ∧ b AΦ1 ¬a ∧ ¬b ∧ ¬c a ∧ b ¬a ∧ b ∧ ¬c a ∧ ¬b ¬a ∧ ¬b ∧ c ¬a ∧ b ∧ c a ∧ b ¬a ∧ b ∧ ¬c q0 q1 q2 a ∧ ¬b q3 ¬a ∧ b ∧ c AΦ (a ∨ ¬c) ∧ b AΦ2 a ∧ ¬b ¬a ∧ b ¬a ∧ ¬b a ∧ b ¬a a ∧ b a ∧ ¬b ¬a ∧ c a ∧ b ¬a ∧ ¬c

In this example, q1 and q2 are simulation equivalent.

Efficient Handling of Obligation Constraints

slide-19
SLIDE 19

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Unreachable and simulation equivalent states... (continued)

q0 = s0 q2 = ¬s0 ∧ ¬s1 q3 = ¬s0 ∧ s1 s0 = (s0 ∨ b) ∧ ¬a ∧ ¬c s1 = a ∧ ¬b

¬a ∧ ¬b ∧ ¬c a ∧ ¬b ¬a ∧ ¬b ∧ c q0 q2 a ∧ ¬b q3 AΦ ¬a ∧ ¬c (a ∨ c) ∧ b ¬a ∧ b ∧ ¬c (¬a ∧ c) ∨ (a ∧ b) Efficient Handling of Obligation Constraints

slide-20
SLIDE 20

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Cyclic Dependencies – bad for BDDs

¬s0 AΦ1 b ¬b b ∧ c ¬b ∧ ¬c AΦ s1 · s2 s1 · ¬s2 ¬s1 · s2 ¬s1 · ¬s2 ¬a ∧ ¬b ¬a ∧ b a ∧ ¬b ∧ c a ∧ ¬b ¬a ∧ ¬b a ∧ b ¬a ∧ b ∧ c a ∧ b ∧ c ¬a ∧ b ∧ c a ∧ b ∧ c ¬a ∧ ¬b ∧ ¬c a ∧ ¬b ∧ ¬c a ∧ ¬b ∧ ¬c a ∧ ¬b a ∧ b AΦ2 s1 · ¬s2 a ∧ ¬ ∧ ¬c a ∧ b ∧ c ¬a ∧ ¬b ¬a ∧ b a ∧ ¬b ∧ c a ∧ b ∧ ¬c s0 s1 · s2 ¬a ¬s1 · ¬s2

s0 = b, s1 = a, s2 = (a ∧ c ∧ s2) ∨ (a ∧ ¬b ∧ ¬s1) ∨ (a ∧ b ∧ ¬c ∧ s1) S1 = a ∨ (¬S2 ∧ b) S2 = (¬a ∧ b) ∨ (a ∧ ¬b ∧ ¬S2) ∨ (a ∧ c ∧ S1) ∨ (a ∧ ¬c ∧ S1)

Efficient Handling of Obligation Constraints

slide-21
SLIDE 21

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Why do Safety Properties exist in a specification?

The safety properties in the specification capture the transition relation of implementations that can satisfy the specification. Useful pieces of information about the transition relation are scattered accross different properties. {a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} → set of safety properties. Both the outputs depend on the previous value of the input a.

Efficient Handling of Obligation Constraints

slide-22
SLIDE 22

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Why do Safety Properties exist in a specification?

The safety properties in the specification capture the transition relation of implementations that can satisfy the specification. Useful pieces of information about the transition relation are scattered accross different properties. {a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} → set of safety properties. Both the outputs depend on the previous value of the input a.

Efficient Handling of Obligation Constraints

slide-23
SLIDE 23

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Why do Safety Properties exist in a specification?

The safety properties in the specification capture the transition relation of implementations that can satisfy the specification. Useful pieces of information about the transition relation are scattered accross different properties. {a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} → set of safety properties. Both the outputs depend on the previous value of the input a.

Efficient Handling of Obligation Constraints

slide-24
SLIDE 24

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Why do Safety Properties exist in a specification? . . . (continued)

The existing approaches are often unable to take advantage of useful information because it is often obscured and hard to recover.

Efficient Handling of Obligation Constraints

slide-25
SLIDE 25

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Automata Based conversion

{a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} → set of safety properties. The states of the game represent the memory that is required to remember some past event.

q0 q1 ¬a a ¬a ∧ x a ∧ x G(a → X x) q0 q1 G(¬a → X y) ¬a a a ∧ y ¬a ∧ y

The state space of each game is encoded with a single binary variable.

Efficient Handling of Obligation Constraints

slide-26
SLIDE 26

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Automata Based conversion . . . (continued)

¬a ∧ x a ∧ x q1, q1 q0, q0 ¬a ∧ y a ∧ y G(a → X x) ∧ G(¬a → X y)

The composed game has two reachable states. However, it is encoded by two binary variables.

Efficient Handling of Obligation Constraints

slide-27
SLIDE 27

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages

An R-generable language L can be generated by a relation such that every two consecutive letters of a word in the language satisfy some relation R. ∀w ∈ L . ∀i ≥ 0 .(wi, wi+1) ∈ R R-generable languages are accepted by 1-definite safety automata which are initially free. Not all safety languages are R-generable. However, every safety language defined over Σ can be embedded in an R-generable language defined over ˆ Σ, where Σ ⊆ ˆ Σ.

Efficient Handling of Obligation Constraints

slide-28
SLIDE 28

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages

An R-generable language L can be generated by a relation such that every two consecutive letters of a word in the language satisfy some relation R. ∀w ∈ L . ∀i ≥ 0 .(wi, wi+1) ∈ R R-generable languages are accepted by 1-definite safety automata which are initially free. Not all safety languages are R-generable. However, every safety language defined over Σ can be embedded in an R-generable language defined over ˆ Σ, where Σ ⊆ ˆ Σ.

Efficient Handling of Obligation Constraints

slide-29
SLIDE 29

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages

An R-generable language L can be generated by a relation such that every two consecutive letters of a word in the language satisfy some relation R. ∀w ∈ L . ∀i ≥ 0 .(wi, wi+1) ∈ R R-generable languages are accepted by 1-definite safety automata which are initially free. Not all safety languages are R-generable. However, every safety language defined over Σ can be embedded in an R-generable language defined over ˆ Σ, where Σ ⊆ ˆ Σ.

Efficient Handling of Obligation Constraints

slide-30
SLIDE 30

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages

An R-generable language L can be generated by a relation such that every two consecutive letters of a word in the language satisfy some relation R. ∀w ∈ L . ∀i ≥ 0 .(wi, wi+1) ∈ R R-generable languages are accepted by 1-definite safety automata which are initially free. Not all safety languages are R-generable. However, every safety language defined over Σ can be embedded in an R-generable language defined over ˆ Σ, where Σ ⊆ ˆ Σ.

Efficient Handling of Obligation Constraints

slide-31
SLIDE 31

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

Efficient Handling of Obligation Constraints

slide-32
SLIDE 32

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

R = ¬rL ∨ r ∨ g where rL and gL represent the previous values of the inputs r and g.

Efficient Handling of Obligation Constraints

slide-33
SLIDE 33

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

Γ : ˆ Σ → Σ Γ : ˆ Σω → Σω

Efficient Handling of Obligation Constraints

slide-34
SLIDE 34

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

R = (rL ∧ ¬gL ∧ ¬xL) ∧ ((r ∧ ¬g ∧ ¬x) ∨ (g ∧ x)) ∨ (xL ∧ x) L(Aφ) ⊆ Γ(L(ˆ Aφ))

Efficient Handling of Obligation Constraints

slide-35
SLIDE 35

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

R = (rL ∧ ¬gL ∧ ¬xL) ∧ ((r ∧ ¬g ∧ ¬x) ∨ (g ∧ x)) ∨ (xL ∧ x) I = (r ∧ ¬g ∧ ¬x) ∨ (g ∧ x) .

Efficient Handling of Obligation Constraints

slide-36
SLIDE 36

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

R-Generable languages... (continued)

⊤ g r ∧ ¬g r ∧ ¬g r ¬r Aφ Aψ G(r → X(r ∨ g)) ¬r ∧ g G(r → X(r W g)) ˆ Aψ r W g r ∧ ¬g ∧ ¬x x g ∧ x

Γ(L(ˆ Aφ)) = L(Aφ) The projection function Γ when restricted to L(Aφ) and L(ˆ Aφ) is a bijection.

Efficient Handling of Obligation Constraints

slide-37
SLIDE 37

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Relation Based conversion

{a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} is the set of safety properties. (¬aL ∨ x) ∧ (aL ∨ y) The past events that need to be remembered are not abstracted by state variables.

Efficient Handling of Obligation Constraints

slide-38
SLIDE 38

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Relation Based conversion

{a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} is the set of safety properties. (¬aL ∨ x) ∧ (aL ∨ y) The past events that need to be remembered are not abstracted by state variables.

Efficient Handling of Obligation Constraints

slide-39
SLIDE 39

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Relation Based conversion

{a} → is the set of inputs {x, y} → is the set of outputs {G(a → X x), G(¬a → X y)} is the set of safety properties. (¬aL ∨ x) ∧ (aL ∨ y) The past events that need to be remembered are not abstracted by state variables.

Efficient Handling of Obligation Constraints

slide-40
SLIDE 40

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Checking Realizability

Given I = {r} O = {g, h, m} R = (¬rL ∨ ¬gL ∨ ¬m) ∧ (¬rL ∨ ¬hL ∨ m) Z0 = ∃O . ∀I . R ∧ ⊤ = ¬rL ∨ ¬gL ∨ ¬hL T = (¬r ∨ ¬g ∨ ¬h) Z1 = ∃O . ∀I . R ∧ Z = ¬rL ∨ ¬gL ∨ ¬hL It is an SCC computation using R as the transition relation and OL ∪ IL as the current state variables. The variables O ∪ I are interpreted both as the input variables and next state variables.

Efficient Handling of Obligation Constraints

slide-41
SLIDE 41

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Checking Realizability

Given I = {r} O = {g, h, m} R = (¬rL ∨ ¬gL ∨ ¬m) ∧ (¬rL ∨ ¬hL ∨ m) Z0 = ∃O . ∀I . R ∧ ⊤ = ¬rL ∨ ¬gL ∨ ¬hL T = (¬r ∨ ¬g ∨ ¬h) Z1 = ∃O . ∀I . R ∧ Z = ¬rL ∨ ¬gL ∨ ¬hL It is an SCC computation using R as the transition relation and OL ∪ IL as the current state variables. The variables O ∪ I are interpreted both as the input variables and next state variables.

Efficient Handling of Obligation Constraints

slide-42
SLIDE 42

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Checking Realizability

Given I = {r} O = {g, h, m} R = (¬rL ∨ ¬gL ∨ ¬m) ∧ (¬rL ∨ ¬hL ∨ m) Z0 = ∃O . ∀I . R ∧ ⊤ = ¬rL ∨ ¬gL ∨ ¬hL T = (¬r ∨ ¬g ∨ ¬h) Z1 = ∃O . ∀I . R ∧ Z = ¬rL ∨ ¬gL ∨ ¬hL It is an SCC computation using R as the transition relation and OL ∪ IL as the current state variables. The variables O ∪ I are interpreted both as the input variables and next state variables.

Efficient Handling of Obligation Constraints

slide-43
SLIDE 43

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Boolean Equations and Combinational Synthesis

The equation is R ∧ Z = ⊤ where O are the unknowns and OL ∪ IL ∪ I are the independant variables. h = hi g = (¬r ∨ ¬hi) ∧ gi m = hL ∨ (¬rL ∧ mi)

Efficient Handling of Obligation Constraints

slide-44
SLIDE 44

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Parameterized Transition relation

Parameterized transition relation is essential for the correctness of this SAFETY FIRST approach. Consider the liveness property G F(m) ∧ G F(¬m). h = hi g = (¬r ∨ ¬hi) ∧ gi m = hL ∨ (¬rL ∧ mi)

Efficient Handling of Obligation Constraints

slide-45
SLIDE 45

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Parameterized Transition relation

Parameterized transition relation is essential for the correctness of this SAFETY FIRST approach. Consider the liveness property G F(m) ∧ G F(¬m). h = hi g = (¬r ∨ ¬hi) ∧ gi m = hL ∨ (¬rL ∧ mi)

Efficient Handling of Obligation Constraints

slide-46
SLIDE 46

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Results - Time

5000 10000 15000 20000 25000 30000 35000 40000 45000 50000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Time (seconds) Number of clients in AMBA Arbiter The time Required to Synthesize ’Anzu’ ’Relation-Based’ ’Safety-First’

Efficient Handling of Obligation Constraints

slide-47
SLIDE 47

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Results - Sequential Logic

10 20 30 40 50 60 70 80 90 100 110 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Number of Registers Number of clients in AMBA Arbiter The amount of Sequential Logic ’Anzu’ ’Relation-Based’ ’Safety-First’

Efficient Handling of Obligation Constraints

slide-48
SLIDE 48

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Results - Combinational Logic

50000 100000 150000 200000 250000 300000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Number of Gates Number of clients in AMBA Arbiter The amount of Combinational Logic ’Anzu’ ’Relation-Based’

Efficient Handling of Obligation Constraints

slide-49
SLIDE 49

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Advantages of Relation based approach

1 The relation often requires fewer symbolic variables. 2 The relation captures the intent of safety properties in the

specification, therefore, debugging is a lot easier.

3 The problem of sequential synthesis is converted to a problem of

combinational synthesis.

4 Retiming may improve the parameteric transition relation. 5 This approach has been extended to obligation properties.

Efficient Handling of Obligation Constraints

slide-50
SLIDE 50

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Advantages of Relation based approach

1 The relation often requires fewer symbolic variables. 2 The relation captures the intent of safety properties in the

specification, therefore, debugging is a lot easier.

3 The problem of sequential synthesis is converted to a problem of

combinational synthesis.

4 Retiming may improve the parameteric transition relation. 5 This approach has been extended to obligation properties.

Efficient Handling of Obligation Constraints

slide-51
SLIDE 51

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Advantages of Relation based approach

1 The relation often requires fewer symbolic variables. 2 The relation captures the intent of safety properties in the

specification, therefore, debugging is a lot easier.

3 The problem of sequential synthesis is converted to a problem of

combinational synthesis.

4 Retiming may improve the parameteric transition relation. 5 This approach has been extended to obligation properties.

Efficient Handling of Obligation Constraints

slide-52
SLIDE 52

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Advantages of Relation based approach

1 The relation often requires fewer symbolic variables. 2 The relation captures the intent of safety properties in the

specification, therefore, debugging is a lot easier.

3 The problem of sequential synthesis is converted to a problem of

combinational synthesis.

4 Retiming may improve the parameteric transition relation. 5 This approach has been extended to obligation properties.

Efficient Handling of Obligation Constraints

slide-53
SLIDE 53

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Advantages of Relation based approach

1 The relation often requires fewer symbolic variables. 2 The relation captures the intent of safety properties in the

specification, therefore, debugging is a lot easier.

3 The problem of sequential synthesis is converted to a problem of

combinational synthesis.

4 Retiming may improve the parameteric transition relation. 5 This approach has been extended to obligation properties.

Efficient Handling of Obligation Constraints

slide-54
SLIDE 54

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

THANK YOU

Efficient Handling of Obligation Constraints

slide-55
SLIDE 55

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Parameterized Transition relation

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → (X x ∨ X y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties {G(a → F(x ↔ ¬y))} is the liveness property x = xi y = (aL ∧ ¬yL) ∧ xi ∨ (aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-56
SLIDE 56

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Parameterized Transition relation

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → (X x ∨ X y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties {G(a → F(x ↔ ¬y))} is the liveness property x = xi y = (aL ∧ ¬yL) ∧ xi ∨ (aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-57
SLIDE 57

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Parameterized Transition relation

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → (X x ∨ X y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties {G(a → F(x ↔ ¬y))} is the liveness property x = xi y = (aL ∧ ¬yL) ∧ xi ∨ (aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-58
SLIDE 58

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Boolean Equations and Combinational Synthesis

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → X(x ∨ y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties

Efficient Handling of Obligation Constraints

slide-59
SLIDE 59

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Boolean Equations and Combinational Synthesis

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → X(x ∨ y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties (¬aL ∨ yL ∨ x ∨ y ) ∧ (aL ∨ ¬xL ∨ ¬a ∨ ¬y ) = ⊤

Efficient Handling of Obligation Constraints

slide-60
SLIDE 60

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Boolean Equations and Combinational Synthesis

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → X(x ∨ y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties R = (¬aL ∨ yL ∨ x ∨ y ) ∧ (aL ∨ ¬xL ∨ ¬a ∨ ¬y )

Efficient Handling of Obligation Constraints

slide-61
SLIDE 61

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Boolean Equations and Combinational Synthesis

{a} → set of inputs {x, y} → set of outputs {G((a ∧ ¬y) → X(x ∨ y)), G((¬a ∧ x ∧ X a) → X ¬y)} is the set of safety properties R = (¬aL ∨ yL ∨ x ∨ y ) ∧ (aL ∨ ¬xL ∨ ¬a ∨ ¬y ) x = xi y = (aL ∧ ¬yL) ∧ xi ∨ (aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-62
SLIDE 62

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-63
SLIDE 63

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-64
SLIDE 64

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-65
SLIDE 65

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-66
SLIDE 66

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-67
SLIDE 67

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

LTL and R-generable Languages

Languages described by certain LTL properties can be identified as R-generable without constructing the corresponding automaton. E.g. G(a → X x) or G((a ∨ X b) ↔ X x) G(a → X X y) does not describe an R-generable language. This syntactic characterization is sufficient but not necessary. E.g. G(r → (r W g)) R-generable languages are those that only need to remember the previous letter.

Efficient Handling of Obligation Constraints

slide-68
SLIDE 68

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Optimal augmentation of the alphabet

Augmenting the alphabet of individual properties may not be the

  • ptimal strategy.

(¬r ∨ g) ∧ ¬y ¬r ∧ ¬g ∧ y g ∧ x r ∧ ¬g ∧ ¬x r ∧ ¬g ∧ ¬y x g ∧ ¬y r ∧ ¬g ∧ ¬y qin q2 q1 qin q1 ˆ Aφ1 ˆ Aφ2

φ1 = r W g φ2 = G(r ∧ ¬g → X(r ∨ g ∨ X(r ∨ g)))

Efficient Handling of Obligation Constraints

slide-69
SLIDE 69

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Optimal augmentation of the alphabet

Augmenting the alphabet of individual properties may not be the

  • ptimal strategy.

¬r ∨ g r ∧ ¬g ¬r ∨ g r ∧ ¬g g g r ∧ ¬g r ∧ ¬g r ∧ ¬g Aφ1 × Aφ2 Aφ r ∧ ¬g g g ¬r ∧ ¬g g ¬r ∧ ¬g r ∧ ¬g q3 q4 qin q1 q2 r ∧ ¬g g g r ∧ ¬g q1 q3 qin q2

After generating the automaton for φ or composing the automata Aφ1 × Aφ2 it becomes clear that the alphabet needed to be augmented by only two letters.

Efficient Handling of Obligation Constraints

slide-70
SLIDE 70

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Retiming

{a, xi, yi} → set of inputs {aL, xL, yL} → set of memory elements {x, y} → set of outputs

Efficient Handling of Obligation Constraints

slide-71
SLIDE 71

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Retiming

{a, xi, yi} → set of inputs {aL, xL, yL} → set of memory elements {x, y} → set of outputs x = xi y = ( aL ∧ ¬yL ) ∧ xi ∨ ( aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-72
SLIDE 72

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Retiming

{a, xi, yi} → set of inputs {aL, xL, yL} → set of memory elements {x, y} → set of outputs x = xi y = ( aL ∧ ¬yL ) ∧ xi ∨ ( aL ∨ ¬xL ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-73
SLIDE 73

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Retiming

{a, xi, yi} → set of inputs {aL, xL, yL} → set of memory elements {x, y} → set of outputs x = xi y = ( aL ∧ ¬yL ) ∧ xi ∨ ( aL ∨ ¬xL ∨ a) ∧ yi {m1, m2} → set of memory elements where m1 = a ∧ ¬y m2 = (a ∨ ¬x) y = m1 ∧ xi ∨ (m2 ∨ a) ∧ yi

Efficient Handling of Obligation Constraints

slide-74
SLIDE 74

Introduction: Synthesis from ω-regular properties The Challenges in improving Quality of Results R-Generable languages Experimental Results Conclusions

Retiming.. . (continued)

The efficiency of retiming heuristic is dependant on the factorization

  • f the function.

Efficient Handling of Obligation Constraints