10.07.2015 Views

A New Look at the Automatic Synthesis of Linear Ranking Functions$

A New Look at the Automatic Synthesis of Linear Ranking Functions$

A New Look at the Automatic Synthesis of Linear Ranking Functions$

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.3. An Altern<strong>at</strong>ive Implement<strong>at</strong>ion ApproachAs long as <strong>the</strong> distinction between invariants (24) and (25) is retained, <strong>the</strong>method <strong>of</strong> Podelski and Rybalchenko can be implemented following an altern<strong>at</strong>iveapproach. The linear invariants (26) are more precisely described by( ) ( ) ( )AB 0 x bBx ′ ≤(30)b CA CA ′ Cwhere A B ∈ Q r×n , A C ∈ Q s×n , A ′ C ∈ Qs×n , b B ∈ Q r , b C ∈ Q s . As shownin <strong>the</strong> technical report version <strong>of</strong> this paper [3, Section 5.3], <strong>the</strong> existence <strong>of</strong> alinear ranking function for <strong>the</strong> system (30) is equivalent to <strong>the</strong> existence <strong>of</strong> threevectors v 1 ∈ Q r +, v 2 ∈ Q r +, v 3 ∈ Q s + such th<strong>at</strong>(v 1 − v 2 ) T A B − v T 3 A C = 0, (31a)v T 2 A B + v T 3 (A C + A ′ C) = 0,v 2 b B + v 3 b C < 0.(31b)(31c)As already noted, <strong>the</strong> two vectors <strong>of</strong> <strong>the</strong> original Podelski and Rybalchenkomethod can be reconstructed as λ 1 = 〈v 1 , 0〉 and λ 2 = 〈v 2 , v 3 〉.Note th<strong>at</strong> <strong>the</strong> same approach is still valid when starting from <strong>the</strong> singlem<strong>at</strong>rix form (26) in full generality, i.e., when we can’t assume th<strong>at</strong> <strong>the</strong> distinctionbetween invariants (24) and (25) has been retained or th<strong>at</strong> invariants are listedin <strong>the</strong> order we used to build <strong>the</strong> m<strong>at</strong>rix form (26): it is enough to applya straightforward permut<strong>at</strong>ion to (26) to rearrange it in <strong>the</strong> form (30). Inth<strong>at</strong> case, due to <strong>the</strong> permut<strong>at</strong>ion involved, we would solve a different linearprogramming problem; however, we still obtain <strong>the</strong> same space <strong>of</strong> linear rankingfunctions we would have obtained by applying <strong>the</strong> original method starting from<strong>the</strong> m<strong>at</strong>rix form (26), as we prove using <strong>the</strong> following lemma.Lemma 5.2. Let S be <strong>the</strong> space <strong>of</strong> linear ranking functions obtained by applying<strong>the</strong> method <strong>of</strong> Podelski and Rybalchenko to ( A A ′) 〈x, x ′ 〉 ≤ b, i.e.,S := { 〈λ T 2 A ′ , λ T 1 b〉 ∈ Q n+1 ∣ ∣ 〈λ1 , λ 2 〉 is a solution <strong>of</strong> (27) } ,and let P ∈ Q (r+s)×(r+s) be a permut<strong>at</strong>ion m<strong>at</strong>rix. 14 Then <strong>the</strong> applic<strong>at</strong>ion <strong>of</strong><strong>the</strong> method <strong>of</strong> Podelski and Rybalchenko to P ( A A ′) 〈x, x ′ 〉 ≤ P b yields <strong>the</strong>same space <strong>of</strong> linear ranking functions S.Pro<strong>of</strong>. The system (27) corresponding to P ( Aη T 1 P A ′ = 0,A ′) 〈x, x ′ 〉 ≤ P b becomes(32a)(η T 1 − η T 2 )P A = 0, (32b)η T 2 P (A + A ′ ) = 0,η T 2 P b < 0,(32c)(32d)14 We recall th<strong>at</strong> a k-dimensional permut<strong>at</strong>ion m<strong>at</strong>rix is a square m<strong>at</strong>rix obtained by apermut<strong>at</strong>ion <strong>of</strong> <strong>the</strong> rows or columns <strong>of</strong> <strong>the</strong> k-dimensional identity m<strong>at</strong>rix.24

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!