Translating ltl to automata
This presentation is the property of its rightful owner.
Sponsored Links
1 / 13

Translating LTL to Automata PowerPoint PPT Presentation


  • 49 Views
  • Uploaded on
  • Presentation posted in: General

Translating LTL to Automata. Literature: Peled ch. 6.8 – end of 6 Mads Dam. Automaton State. Already processed formulas. Previous state identifier. Name:. Incoming. Formulas to be processed. New:. Old:. Formulas for next state. Next:. Initial nodes:. Final nodes = automaton states:.

Download Presentation

Translating LTL to Automata

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Translating ltl to automata

Translating LTL to Automata

Literature: Peled ch. 6.8 – end of 6

Mads Dam


Automaton state

Automaton State

Already processed formulas

Previous state identifier

Name:

Incoming

Formulas to be processed

New:

Old:

Formulas for next state

Next:

Initial nodes:

Final nodes = automaton states:

Name:

Name:

Incoming

Incoming

New:

Old: ;

New:;

Old:1,...,n

Next:;

Next:1,...,m


Positive form

Positive Form

Positive form: Negation only on primitive state assertions:

::=  | : | Æ | Ç |  U  |  V  | O

Rewriting procedure:

::) 

:(Æ) ) :Ç:

:(Ç) ) :Æ:

:( U ) ) (:) V (:)

:( V ) ) (:) U (:)

:(O) ) O:

<>) true U 

[]) false V 

Rule of substitutivity:

 )

C[] ) C[]

Context C[]:

Formula (term) with a “hole” []


Base step

Base Step

Name

Current configuration:

Incoming: A

New: 1

Old:2

Next:3

Condition: 1 = ; (all formulas have been processed)

Is there node Name’ with identical Old, Next?

- Then discard Name and add Name.Incoming to Name’.Incoming

Otherwise:

- Name is a new state

- Create new name and node:

Name’

Incoming: {Name}

New: 3

Old:;

Next:;


Case proposition symbol

Case: Proposition Symbol

Name

Is : 2 2?

Yes: Discard the node

No: Next configuration:

Case for : in New is similar

Current configuration:

Incoming: A

New: , 1

Old:2

Next:3

Name

Incoming: A

New: 1

Old:, 2

Next:3


Case conjunction

Case: Conjunction

Name

Next configuration:

Current configuration:

Incoming: A

New:  Æ , 1

Old:2

Next:3

Name

Incoming: A

New: ,,1

Old: Æ ,2

Next:3


Case disjunction

Case: Disjunction

Name

Configuration split into two:

Current configuration:

Incoming: A

New:  Ç, 1

Old:2

Next:3

Name’

Name’’

Incoming: A

Incoming: A

New: ,1

Old: Ç , 2

New: ,1

Old: Ç , 2

Next:3

Next:3


Case until

Case: Until

Name

Configuration split into two:

Current configuration:

Incoming: A

New:  U , 1

Old:2

Next:3

Name’

Name’’

Incoming: A

Incoming: A

New: , 1

Old: U , 2

New: , 1

Old: U , 2

Next:3

Next: U , 3


Case release

Case: Release

Name

Configuration split into two:

Current configuration:

Incoming: A

New:  V , 1

Old:2

Next:3

Name’

Name’’

Incoming: A

Incoming: A

New: , , 1

Old: V , 2

New: , 1

Old: V , 2

Next:3

Next: V , 3


Case next

Case: Next

Name

Next configuration:

Current configuration:

Incoming: A

New: O, 1

Old:2

Next:3

Name

Incoming: A

New: 1

Old: O, 2

Next:, 3


Constructing the automaton

Constructing the Automaton

Automaton: (Q,,,I,F)

  •  = truth assignments of propositional symbols in 

    Ex: {a, b, : c, : d} 2

  • Q = {final nodes} = {q | q.New = ;}

  •  = {(q,,q’) | q.Name2 q’.Incoming and

    { |  2 q’.Old} µ  and {: | : 2 q’.Old} µ}

  • I = {q}, q special initial node to kick off construction

  • Generalized Buchi automaton acceptance set F = {f1,...,fn}:

    Each fi determined by subformula of shape i U i

    fi = {q | either i2 q.Old or i U i  q.Old}


Complexity

Complexity

Let  be given LTL formula

Size of state is O(||)

Size of automaton is O(2||)

Alternative construction can be given such that

  • States can be recognized in poly time and space

  • Transitions can be recognised in poly time and space

    Then complexity of deciding satisfaction is

  • Polynomial for Buchi automata

  • (use a binary search procedure)

  • PSPACE complete for LTL

  • NONELEMENTARY for monadic 2nd order logic

    But keep in mind the state space explosion problem!


State space explosion

State Space Explosion

|Global state space|: exponential in number of component processes

Strategies: BDD’s:

  • Symbolic representation of states, as DAG’s

    Partial order reduction:

  • Recognise states reached by different interleavings

  • Symmetry reductions

a

a

b

b

=>

a

b

b

a

=


  • Login