the strength of the sct criterion
play

The strength of the SCT criterion Silvia Steila joint work with - PowerPoint PPT Presentation

The strength of the SCT criterion Silvia Steila joint work with Emanuele Frittaion and Keita Yokoyama University of Bern JAIST February 28th, 2017 A first informal question Assume that a child really likes biscuits, he has z -many biscuits.


  1. The strength of the SCT criterion Silvia Steila joint work with Emanuele Frittaion and Keita Yokoyama University of Bern JAIST February 28th, 2017

  2. A first informal question Assume that a child really likes biscuits, he has z -many biscuits. Assume that his grandmother gave him x -many gold coins and y -many silver coins to buy biscuits by pursuing the following rules at each purchase: ◮ the child may spend one silver coin to duplicate his number of biscuits; ◮ the child may spend one gold coin and all his silver coins to duplicate his number of biscuits and to get one silver coin for every biscuit he has. Does the child get infinitely many biscuits?

  3. A first formal question f(x,y,z) := if ( x = 0 OR y = 0 ) then (x,y,z); else if (y > 1) then c0: f( x, y-1, 2*z ); else c1: f( x-1, 2*z, 2*z ) Does this program terminate for any x , y and z ?

  4. Programs We consider a basic first order functional language: x ∈ Par parameter identifier f ∈ Fun function identifier o ∈ Op primitive operator a ∈ AExp arithmetic expression ::= x | x + 1 | x − 1 | o ( a , . . . , a ) | f ( a , . . . , a ) b ∈ BExp boolean expression ::= x = 0 | x = 1 | x < y | x ≤ y | b ∧ b | b ∨ b | ¬ b e ∈ Exp expression ::= a | if b then e else e d ∈ Def function definition ::= f ( x 0 , . . . , x n − 1 ) = e P ∈ Prog program ::= d 0 , . . . , d m − 1

  5. Size change Graphs Let P be a program and f , g ∈ Fun ( P ). ◮ A size-change graph G : f → g for P is a bipartite graph on ( Par ( f ) , Par ( g )). ◮ The set of edges is a subset of Par ( f ) × {↓ , ⇓} × Par ( g ) such that there is at most one edge for any x ∈ Par ( f ) and y ∈ Par ( g ). ⇓ x x y y ↓ z z f is the source function of G and g is the target function of G .

  6. Safe size change Graphs A size-change graph G : f → g for a call τ : f → g is safe if it reflects the relationship between the parameter values in the program call. f(x,y,z) := if ( x = 0 OR y = 0 ) then (x,y,z); else if (y > 1) c0: f(x,y-1, 2*z) else c1: f(x-1,2*z,2*z). G c 0 G c 1 ⇓ ↓ x x x x ↓ y y y y z z z z

  7. Composition of size change graphs G 0 G 1 ⇓ ↓ x x x x ⇓ y y y y ⇓ ↓ z z z z G 0 ; G 1 ↓ x x y y ⇓ z z

  8. Multipaths and Threads ◮ G is idempotent if G ; G = G . ◮ Given a finite set of size-change graphs G , cl( G ) is the smallest set which contains G and is closed by composition. ◮ A multipath M is a sequence G 0 , . . . , G n , . . . of graphs such that the target function of G i is the source function of G i +1 for all i . ◮ A thread is a connected path of edges in M that starts at some G t , where t ∈ N . ◮ A multipath M has infinite descent if some thread in M contains infinitely many decreasing edges.

  9. SCT Criterion ◮ A description G of P is a finite set of size-change graphs such that to every call τ : f → g of P corresponds exactly one G τ ∈ G . ◮ A description G of P is safe if each graph in G is safe. ◮ We say that a description G of P is size-change terminating (SCT) if every infinite multipath M = G 0 , . . . , G n , . . . , where every graph G n ∈ G , has an infinite descent. Theorem (Lee, Jones, Ben Amram 2001) A program P is SCT iff every idempotent G ∈ cl( G P ) has an arc ↓ − → x . x

  10. SCT Criterion ◮ A description G of P is a finite set of size-change graphs such that to every call τ : f → g of P corresponds exactly one G τ ∈ G . ◮ A description G of P is safe if each graph in G is safe. ◮ We say that a description G of P is size-change terminating (SCT) if every infinite multipath M = G 0 , . . . , G n , . . . , where every graph G n ∈ G , has an infinite descent. Theorem (Lee, Jones, Ben Amram 2001) Let G be a description of P . Then G is SCT iff every idempotent ↓ G ∈ cl( G ) has an arc x − → x .

  11. From SCT to termination ◮ A multipath M has infinite descent if some thread in M contains infinitely many decreasing edges. ◮ We say that a description G of P is size-change terminating (SCT) if every infinite multipath M = G 0 , . . . , G n , . . . , where every graph G n ∈ G , has an infinite descent. ◮ A program P with a safe SCT description does not have infinite state transition sequences. ◮ Thus the existence of a safe SCT description is a sufficient condition for termination.

  12. An answer f(x,y,z) := if ( x = 0 OR y = 0 ) then (x,y,z); else if (y > 1) then c0: f( x, y-1, 2*z ); else c1: f( x-1, 2*z, 2*z ) A safe description: G c 0 G c 1 ⇓ ↓ x x x x ↓ y y y y z z z z ↓ Since every idempotent G ∈ cl( G ) has an arc x − → x , then the program terminates.

  13. A second question f(x,y,z) := if ( x = 0 OR y = 0 ) then (x,y,z); else if (y > 1) then c0: f( x, y-1, 2*z ); else c1: f( x-1, 2*z, 2*z ) Where can we prove that this program terminates?

  14. Reverse Mathematics Given a theorem of ordinary mathematics, what is the weakest subsystem of second order arithmetic in which it is provable? ◮ RCA 0 : axioms of arithmetic, Σ 0 1 -induction, ∆ 0 1 -comprehension. ◮ WKL 0 : RCA 0 , Σ 0 1 -separation. ◮ ACA 0 : RCA 0 , arithmetical comprehension. ◮ ATR 0 : ACA 0 , Σ 1 1 -separation. ◮ Π 1 1 -CA 0 : ACA 0 , Π 1 1 -comprehension. Γ-induction: for any ϕ ( x ) in Γ, ( ϕ (0) ∧ ∀ n ( ϕ ( n ) = ⇒ ϕ ( S ( n )))) = ⇒ ∀ n ϕ ( n ) . Γ-comprehension: for any ϕ ( x ) in Γ, ∃ X ∀ n ( n ∈ X ⇐ ⇒ ϕ ( n )) . Γ-separation: for any ψ ( x ), ϕ ( x ) in Γ which are exclusive, ∃ X ∀ n (( ψ ( n ) = ⇒ n ∈ X ) ∧ ( ϕ ( n ) = ⇒ n / ∈ X )) .

  15. Where can we prove that this program terminates? ◮ In which subsystem can we prove the SCT criterion? ◮ In which subsystem can we prove that every SCT program terminates? (i.e. Soundness)

  16. A safe description for Ackerman A(x,y) := if ( x = 0) then y+1; else if (y = 0) then c0: A(x-1,1); else c1: A(x-1, c2: A(x,y-1)) G c 0 , c 1 G c 2 ↓ ⇓ x x x x ↓ y y y y

  17. Infinite Ramsey Theorem for pairs If you have N -many people at a party then either there exists an infinite subset whose members all know each other or an infinite subset none of whose members know each other. ( RT 1 k ) For any c : N → k there exists i < k such that c ( x ) = i for infinitely many x . ( RT 1 ) ∀ k ∈ N RT 1 k . k ) For any c : [ N ] 2 → k there exists an infinite homogeneous ( RT 2 set X ⊆ N , that is c ′′ [ X ] 2 is constant. ( RT 2 ) ∀ k ∈ N RT 2 k .

  18. Some corollaries of Ramsey’s Theorem ( Triang k ) For any coloring c : [ N ] 2 → k there exist i ∈ k and t ∈ N such that c ( t , m ) = c ( t , l ) = c ( m , l ) = i for infinitely many pairs { m , l } . ( Triang ) ∀ k ∈ N Triang k . ( SPP k ) For any coloring c : N → k there exists I ⊆ k such that i ∈ I iff i < k and c ( x ) = i for infinitely many x . ( SPP ) ∀ k ∈ N SPP k .

  19. Where can we prove the SCT criterion? Theorem (Frittaion, S., Yokoyama 2016) Over RCA 0 : ◮ Triang implies the SCT criterion. ◮ SCT criterion implies SPP . ◮ IΣ 0 2 implies Triang .

  20. One direction of the SCT criterion is already provable in RCA 0 Proposition (RCA 0 ) Let G be a finite set of size-change graphs. If every multipath M = G 0 , . . . , G n , . . . has an infinite descent, then every idempotent ↓ G ∈ cl( G ) has an arc x − → x . ◮ Let G be idempotent. ◮ Then M = G , G , . . . , G , . . . is a multipath. ◮ By hypothesis there exists an infinite descent. ↓ ◮ Define an infinite sequence x 0 , x 1 , x 2 , . . . such that x i − → x i +1 ∈ G . ◮ By the finite pigeonhole principle there exist i < j such that x = x i = x j . ↓ ◮ By idempotence of G , x − → x ∈ G .

  21. Triang implies the SCT criterion. ◮ Let M π = G 0 , . . . , G n , . . . . ◮ Define c ( i , j ) = G i ; . . . ; G j − 1 . ◮ By Triang | cl( G ) | to c , there exist t and G ∈ cl( G ) such that ∀ n ∃ m , l ( n < m < l ∧ t < m ∧ c ( t , m ) = c ( t , l ) = c ( m , l ) = G ) . ◮ G is idempotent, indeed G ; G = c ( t , m ); c ( m , l ) = c ( t , l ) = G . ↓ ◮ By hypothesis, we have that there exists x − → x ∈ G . ◮ We prove that there exists an infinite descent starting from x in G t .

  22. SCT criterion implies SPP - Case k = 2 ◮ G = { G 0 , G 1 , G 2 } . ↓ ◮ For i < 3, the graph G i has only one strict arc z i − → z i and non-strict ⇓ arcs z j − → z j for j > i . ◮ Define:   0 if c ( x ) = 0 ∧ c ( x + 1) = 0  g ( x ) = 1 if c ( x ) = 1 ∧ c ( x + 1) = 1   2 otherwise ◮ Consider the multipath M = G g (0) , G g (1) , . . . By the SCT criterion, it has an infinite descent. ↓ ◮ There exists a parameter z i such that z i − → z i ∈ G g ( x ) ( g ( x ) = i ) for infinitely many x . ◮ If i < 2, it means that from some point on c ( x ) = i and so I = { i } . ◮ If i = 2 the color changes infinitely many times and so I = { 0 , 1 } .

  23. IΣ 0 2 implies Triang ◮ (Slaman and Yokoyama) RT 2 is Π 1 1 -conservative over BΣ 0 3 . ◮ A statement is � Π 0 4 if it is of the form ∀ X ϕ ( X ) and ϕ ( X ) ∈ Π 0 4 . 3 is � ◮ (e.g. Hajek and Pudl´ ak) BΣ 0 Π 0 4 -conservative over IΣ 0 2 . ◮ Triang is � Π 0 4 . Where BΣ 0 3 is the the bounding principle for Σ 0 3 -formulas: for every σ 0 3 formula ϕ : ∀ m [( ∀ i < m ∃ u ϕ ( i , u )) = ⇒ ∃ v ( ∀ i < m ∃ u < v ϕ ( i , u ))]

Recommend


More recommend