model checking concurrent systems with unboundedly many
play

Model Checking Concurrent Systems with Unboundedly Many Processes - PowerPoint PPT Presentation

Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics Ahmet Kara MOVEP 2012, Marseille Interaction of Unboundedly Many Processes n m o 1 2 3 p 4 Ahmet Kara Model Checking Concurrent Systems with


  1. Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics Ahmet Kara MOVEP 2012, Marseille

  2. Interaction of Unboundedly Many Processes n m o 1 2 3 p 4 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 1

  3. Interaction of Unboundedly Many Processes 1 • A system run Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  4. Interaction of Unboundedly Many Processes 1 2 • A system run spawn 1 2 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  5. Interaction of Unboundedly Many Processes 1 2 3 • A system run spawn spawn 1 2 2 3 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  6. Interaction of Unboundedly Many Processes m 1 2 3 • A system run se ( m ) spawn spawn 1 2 1 2 3 2 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  7. Interaction of Unboundedly Many Processes n m 1 2 3 • A system run se ( m ) se ( n ) spawn spawn 1 2 1 1 2 3 2 2 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  8. Interaction of Unboundedly Many Processes n 1 2 3 • A system run se ( m ) se ( n ) rec ( m ) spawn spawn 1 2 1 1 2 2 3 2 2 1 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  9. Interaction of Unboundedly Many Processes n o 1 2 3 • A system run se ( m ) se ( n ) rec ( m ) se ( o ) spawn spawn 1 2 1 1 2 2 2 3 2 2 1 3 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  10. Interaction of Unboundedly Many Processes n o 1 2 3 4 • A system run se ( m ) se ( n ) rec ( m ) se ( o ) spawn spawn spawn 1 2 1 1 2 2 3 2 3 2 2 1 3 4 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  11. Interaction of Unboundedly Many Processes n o 1 2 3 p 4 • A system run se ( m ) se ( n ) rec ( m ) se ( o ) se ( p ) spawn spawn spawn 1 2 1 1 2 2 3 3 2 3 2 2 1 3 4 2 Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  12. Interaction of Unboundedly Many Processes n o 1 2 3 p 4 • A system run se ( m ) se ( n ) rec ( m ) se ( o ) se ( p ) spawn spawn spawn 1 2 1 1 2 2 3 3 2 3 2 2 1 3 4 2 • A system property „Every sent message is received eventually.” m G( se ( m ) →↓ x. F rec ( m ) ∧ x @ 1 ∼ @ 2 ∧ x @ 2 ∼ @ 1 ) � Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 2

  13. Words and Data Words A Word over Σ = { a, b, c } c c a c a c b b Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 3

  14. Words and Data Words A Word over Σ = { a, b, c } c c a c a c b b A Data Word over Σ = { a, b, c } c c a c a c b b 1 4 3 2 2 3 7 2 7 4 2 5 9 1 3 2 Definition: Data Words • Let ◮ Σ be a finite alphabet ◮ D be an infinite set of data values • w ∈ (Σ × D m ) ∗ is an m-dimensional data word over Σ Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 3

  15. Words and Data Words A Word over Σ = { a, b, c } c c a c a c b b A Data Word over Σ = { a, b, c } c c a c a c b b 1 4 3 2 2 3 7 2 7 4 2 5 9 1 3 2 • D = { 1 , 2 , 3 , . . . } Definition: Data Words • Let ◮ Σ be a finite alphabet ◮ D be an infinite set of data values • w ∈ (Σ × D m ) ∗ is an m-dimensional data word over Σ Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 3

  16. Logics on Data Words – Data Logics • Even very weak logics on data words have an undecidable satisfiability problem. ◮ First order logic with only three variables is not decidable [Boja´ nczyk et al. 06] ◮ LTL is in general not decidable [Demri et al. 06] ➞ Focus on restricted logics where the only predicate on data values is the equality relation Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 4

  17. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  18. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  19. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  20. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  21. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 x F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  22. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 x F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  23. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 x F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

  24. Logics on Data Words – Freeze LTL ( LTL ⇓ ) • Freeze LTL ( LTL ⇓ ) [Demri et al. 06]: ◮ contains the usual temporal operators like X , F , U , . . . ◮ allows to put a variable x on a position ◮ allows to compare the data values of the x -position with the data values of a current position Example “There is a b -position such that an a -position with the same data value follows somewhere in the future.” a c a a c b b b 1 2 3 1 4 3 7 2 x F( b ∧ ↓ x. F( a ∧ x @ 1 ∼ @ 1 ))) Ahmet Kara Model Checking Concurrent Systems with Unboundedly Many Processes Using Data Logics � � Slide 5

Recommend


More recommend