YES(?,O(n^1)) 0.16/0.30 YES(?,O(n^1)) 0.16/0.30 0.16/0.30 Problem: 0.16/0.30 merge(x,nil()) -> x 0.16/0.30 merge(nil(),y) -> y 0.16/0.30 merge(++(x,y),++(u(),v())) -> ++(x,merge(y,++(u(),v()))) 0.16/0.30 merge(++(x,y),++(u(),v())) -> ++(u(),merge(++(x,y),v())) 0.16/0.30 0.16/0.30 Proof: 0.16/0.30 Bounds Processor: 0.16/0.30 bound: 1 0.16/0.30 enrichment: match 0.16/0.30 automaton: 0.16/0.30 final states: {5} 0.16/0.30 transitions: 0.16/0.30 ++1(3,1) -> 18* 0.16/0.30 ++1(3,3) -> 18* 0.16/0.30 ++1(3,13) -> 15,5 0.16/0.30 ++1(3,15) -> 15,5 0.16/0.30 ++1(4,2) -> 18* 0.16/0.30 ++1(4,4) -> 18* 0.16/0.30 ++1(1,2) -> 18* 0.16/0.30 ++1(1,4) -> 18* 0.16/0.30 ++1(11,10) -> 12* 0.16/0.30 ++1(2,1) -> 18* 0.16/0.30 ++1(2,3) -> 18* 0.16/0.30 ++1(2,13) -> 15,5 0.16/0.30 ++1(2,15) -> 15,5 0.16/0.30 ++1(3,2) -> 18* 0.16/0.30 ++1(3,4) -> 18* 0.16/0.30 ++1(4,1) -> 18* 0.16/0.30 ++1(4,3) -> 18* 0.16/0.30 ++1(4,13) -> 15,5 0.16/0.30 ++1(4,15) -> 15,5 0.16/0.30 ++1(1,1) -> 18* 0.16/0.30 ++1(1,3) -> 18* 0.16/0.30 ++1(1,13) -> 15,5 0.16/0.30 ++1(1,15) -> 15,5 0.16/0.30 ++1(11,19) -> 15,5 0.16/0.30 ++1(2,2) -> 18* 0.16/0.30 ++1(2,4) -> 18* 0.16/0.30 u1() -> 11* 0.16/0.30 merge1(2,12) -> 15* 0.16/0.30 merge1(4,12) -> 15* 0.16/0.30 merge1(1,12) -> 13* 0.16/0.30 merge1(18,10) -> 19* 0.16/0.30 merge1(3,12) -> 13* 0.16/0.30 v1() -> 10* 0.16/0.30 merge0(3,1) -> 5* 0.16/0.30 merge0(3,3) -> 5* 0.16/0.30 merge0(4,2) -> 5* 0.16/0.30 merge0(4,4) -> 5* 0.16/0.30 merge0(1,2) -> 5* 0.16/0.30 merge0(1,4) -> 5* 0.16/0.30 merge0(2,1) -> 5* 0.16/0.30 merge0(2,3) -> 5* 0.16/0.30 merge0(3,2) -> 5* 0.16/0.30 merge0(3,4) -> 5* 0.16/0.30 merge0(4,1) -> 5* 0.16/0.30 merge0(4,3) -> 5* 0.16/0.30 merge0(1,1) -> 5* 0.16/0.30 merge0(1,3) -> 5* 0.16/0.30 merge0(2,2) -> 5* 0.16/0.30 merge0(2,4) -> 5* 0.16/0.30 nil0() -> 1* 0.16/0.30 ++0(3,1) -> 2* 0.16/0.30 ++0(3,3) -> 2* 0.16/0.30 ++0(4,2) -> 2* 0.16/0.30 ++0(4,4) -> 2* 0.16/0.30 ++0(1,2) -> 2* 0.16/0.30 ++0(1,4) -> 2* 0.16/0.30 ++0(2,1) -> 2* 0.16/0.30 ++0(2,3) -> 2* 0.16/0.30 ++0(3,2) -> 2* 0.16/0.30 ++0(3,4) -> 2* 0.16/0.30 ++0(4,1) -> 2* 0.16/0.30 ++0(4,3) -> 2* 0.16/0.30 ++0(1,1) -> 2* 0.16/0.30 ++0(1,3) -> 2* 0.16/0.30 ++0(2,2) -> 2* 0.16/0.30 ++0(2,4) -> 2* 0.16/0.30 u0() -> 3* 0.16/0.30 v0() -> 4* 0.16/0.30 1 -> 5* 0.16/0.30 2 -> 5* 0.16/0.30 3 -> 5* 0.16/0.30 4 -> 5* 0.16/0.30 12 -> 13* 0.16/0.30 problem: 0.16/0.30 0.16/0.30 Qed 0.16/0.30 EOF