YES(?,O(n^2)) 20.27/9.37 YES(?,O(n^2)) 20.27/9.37 20.27/9.37 Problem: 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 20.27/9.37 Proof: 20.27/9.37 Complexity Transformation Processor: 20.27/9.37 strict: 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 weak: 20.27/9.37 20.27/9.37 Matrix Interpretation Processor: dim=1 20.27/9.37 20.27/9.37 max_matrix: 20.27/9.37 1 20.27/9.37 interpretation: 20.27/9.37 [.](x0, x1) = x0 + x1 + 19, 20.27/9.37 20.27/9.37 [++](x0, x1) = x0 + x1 + 2, 20.27/9.37 20.27/9.37 [nil] = 198 20.27/9.37 orientation: 20.27/9.37 ++(nil(),y) = y + 200 >= y = y 20.27/9.37 20.27/9.37 ++(x,nil()) = x + 200 >= x = x 20.27/9.37 20.27/9.37 ++(.(x,y),z) = x + y + z + 21 >= x + y + z + 21 = .(x,++(y,z)) 20.27/9.37 20.27/9.37 ++(++(x,y),z) = x + y + z + 4 >= x + y + z + 4 = ++(x,++(y,z)) 20.27/9.37 problem: 20.27/9.37 strict: 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 weak: 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 Splitting Processor: 20.27/9.37 strict: 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 weak: 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 Matrix Interpretation Processor: dim=2 20.27/9.37 20.27/9.37 max_matrix: 20.27/9.37 [1 1] 20.27/9.37 [0 1] 20.27/9.37 interpretation: 20.27/9.37 [1] 20.27/9.37 [.](x0, x1) = x0 + x1 + [3], 20.27/9.37 20.27/9.37 [1 1] [0] 20.27/9.37 [++](x0, x1) = [0 1]x0 + x1 + [1], 20.27/9.37 20.27/9.37 [0] 20.27/9.37 [nil] = [1] 20.27/9.37 orientation: 20.27/9.37 [1 2] [1 1] [1] [1 1] [1 1] [0] 20.27/9.37 ++(++(x,y),z) = [0 1]x + [0 1]y + z + [2] >= [0 1]x + [0 1]y + z + [2] = ++(x,++(y,z)) 20.27/9.37 20.27/9.37 [1 1] [1 1] [4] [1 1] [1] 20.27/9.37 ++(.(x,y),z) = [0 1]x + [0 1]y + z + [4] >= x + [0 1]y + z + [4] = .(x,++(y,z)) 20.27/9.37 20.27/9.37 [1] 20.27/9.37 ++(nil(),y) = y + [2] >= y = y 20.27/9.37 20.27/9.37 [1 1] [0] 20.27/9.37 ++(x,nil()) = [0 1]x + [2] >= x = x 20.27/9.37 problem: 20.27/9.37 strict: 20.27/9.37 20.27/9.37 weak: 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 Qed 20.27/9.37 20.27/9.37 strict: 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 weak: 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 Matrix Interpretation Processor: dim=2 20.27/9.37 20.27/9.37 max_matrix: 20.27/9.37 [1 1] 20.27/9.37 [0 1] 20.27/9.37 interpretation: 20.27/9.37 [1 1] [3] 20.27/9.37 [.](x0, x1) = [0 0]x0 + x1 + [2], 20.27/9.37 20.27/9.37 [1 1] [2] 20.27/9.37 [++](x0, x1) = [0 1]x0 + x1 + [1], 20.27/9.37 20.27/9.37 [0] 20.27/9.37 [nil] = [0] 20.27/9.37 orientation: 20.27/9.37 [1 1] [1 1] [7] [1 1] [1 1] [5] 20.27/9.37 ++(.(x,y),z) = [0 0]x + [0 1]y + z + [3] >= [0 0]x + [0 1]y + z + [3] = .(x,++(y,z)) 20.27/9.37 20.27/9.37 [2] 20.27/9.37 ++(nil(),y) = y + [1] >= y = y 20.27/9.37 20.27/9.37 [1 1] [2] 20.27/9.37 ++(x,nil()) = [0 1]x + [1] >= x = x 20.27/9.37 20.27/9.37 [1 2] [1 1] [5] [1 1] [1 1] [4] 20.27/9.37 ++(++(x,y),z) = [0 1]x + [0 1]y + z + [2] >= [0 1]x + [0 1]y + z + [2] = ++(x,++(y,z)) 20.27/9.37 problem: 20.27/9.37 strict: 20.27/9.37 20.27/9.37 weak: 20.27/9.37 ++(.(x,y),z) -> .(x,++(y,z)) 20.27/9.37 ++(nil(),y) -> y 20.27/9.37 ++(x,nil()) -> x 20.27/9.37 ++(++(x,y),z) -> ++(x,++(y,z)) 20.27/9.37 Qed 20.27/9.38 EOF