YES(?,O(n^1)) 0.16/0.23 YES(?,O(n^1)) 0.16/0.23 0.16/0.23 Problem: 0.16/0.23 double(0()) -> 0() 0.16/0.23 double(s(x)) -> s(s(double(x))) 0.16/0.23 half(0()) -> 0() 0.16/0.23 half(s(0())) -> 0() 0.16/0.23 half(s(s(x))) -> s(half(x)) 0.16/0.23 -(x,0()) -> x 0.16/0.23 -(s(x),s(y)) -> -(x,y) 0.16/0.23 if(0(),y,z) -> y 0.16/0.23 if(s(x),y,z) -> z 0.16/0.23 half(double(x)) -> x 0.16/0.23 0.16/0.23 Proof: 0.16/0.23 Bounds Processor: 0.16/0.23 bound: 1 0.16/0.23 enrichment: match 0.16/0.23 automaton: 0.16/0.23 final states: {6,5,4,3} 0.16/0.23 transitions: 0.16/0.23 -1(1,2) -> 5* 0.16/0.23 -1(2,1) -> 5* 0.16/0.23 -1(1,1) -> 5* 0.16/0.23 -1(2,2) -> 5* 0.16/0.23 s1(12) -> 12,4 0.16/0.23 s1(7) -> 8* 0.16/0.23 s1(8) -> 7,3 0.16/0.23 half1(2) -> 12* 0.16/0.23 half1(1) -> 12* 0.16/0.23 01() -> 12,7,4,3 0.16/0.23 double1(2) -> 7* 0.16/0.23 double1(1) -> 7* 0.16/0.23 double0(2) -> 3* 0.16/0.23 double0(1) -> 3* 0.16/0.23 00() -> 1* 0.16/0.23 s0(2) -> 2* 0.16/0.23 s0(1) -> 2* 0.16/0.23 half0(2) -> 4* 0.16/0.23 half0(1) -> 4* 0.16/0.23 -0(1,2) -> 5* 0.16/0.23 -0(2,1) -> 5* 0.16/0.23 -0(1,1) -> 5* 0.16/0.23 -0(2,2) -> 5* 0.16/0.23 if0(1,1,1) -> 6* 0.16/0.23 if0(2,2,1) -> 6* 0.16/0.23 if0(1,1,2) -> 6* 0.16/0.23 if0(2,2,2) -> 6* 0.16/0.23 if0(1,2,1) -> 6* 0.16/0.23 if0(2,1,1) -> 6* 0.16/0.23 if0(1,2,2) -> 6* 0.16/0.23 if0(2,1,2) -> 6* 0.16/0.23 1 -> 6,5 0.16/0.23 2 -> 6,5 0.16/0.23 problem: 0.16/0.23 0.16/0.23 Qed 0.16/0.24 EOF