YES(?,O(n^1)) 3.33/1.01 YES(?,O(n^1)) 3.33/1.02 3.33/1.02 Problem: 3.33/1.02 active(f(X)) -> mark(if(X,c(),f(true()))) 3.33/1.02 active(if(true(),X,Y)) -> mark(X) 3.33/1.02 active(if(false(),X,Y)) -> mark(Y) 3.33/1.02 active(f(X)) -> f(active(X)) 3.33/1.02 active(if(X1,X2,X3)) -> if(active(X1),X2,X3) 3.33/1.02 active(if(X1,X2,X3)) -> if(X1,active(X2),X3) 3.33/1.02 f(mark(X)) -> mark(f(X)) 3.33/1.02 if(mark(X1),X2,X3) -> mark(if(X1,X2,X3)) 3.33/1.02 if(X1,mark(X2),X3) -> mark(if(X1,X2,X3)) 3.33/1.02 proper(f(X)) -> f(proper(X)) 3.33/1.02 proper(if(X1,X2,X3)) -> if(proper(X1),proper(X2),proper(X3)) 3.33/1.02 proper(c()) -> ok(c()) 3.33/1.02 proper(true()) -> ok(true()) 3.33/1.02 proper(false()) -> ok(false()) 3.33/1.02 f(ok(X)) -> ok(f(X)) 3.33/1.02 if(ok(X1),ok(X2),ok(X3)) -> ok(if(X1,X2,X3)) 3.33/1.02 top(mark(X)) -> top(proper(X)) 3.33/1.02 top(ok(X)) -> top(active(X)) 3.33/1.02 3.33/1.02 Proof: 3.33/1.02 Bounds Processor: 3.33/1.02 bound: 2 3.33/1.02 enrichment: match 3.33/1.02 automaton: 3.33/1.02 final states: {10,9,8,7,6} 3.33/1.02 transitions: 3.33/1.02 top1(18) -> 10* 3.33/1.02 active1(5) -> 18* 3.33/1.02 active1(2) -> 18* 3.33/1.02 active1(4) -> 18* 3.33/1.02 active1(1) -> 18* 3.33/1.02 active1(3) -> 18* 3.33/1.02 proper1(5) -> 18* 3.33/1.02 proper1(2) -> 18* 3.33/1.02 proper1(4) -> 18* 3.33/1.02 proper1(1) -> 18* 3.33/1.02 proper1(3) -> 18* 3.33/1.02 ok1(15) -> 18,9 3.33/1.02 ok1(14) -> 14,8 3.33/1.02 ok1(11) -> 11,7 3.33/1.02 if1(5,2,1) -> 14* 3.33/1.02 if1(3,2,2) -> 14* 3.33/1.02 if1(5,4,1) -> 14* 3.33/1.02 if1(3,4,2) -> 14* 3.33/1.02 if1(2,1,5) -> 14* 3.33/1.02 if1(2,3,5) -> 14* 3.33/1.02 if1(2,5,5) -> 14* 3.33/1.02 if1(1,1,4) -> 14* 3.33/1.02 if1(1,3,4) -> 14* 3.33/1.02 if1(1,5,4) -> 14* 3.33/1.02 if1(5,1,3) -> 14* 3.33/1.02 if1(5,3,3) -> 14* 3.33/1.02 if1(5,5,3) -> 14* 3.33/1.02 if1(4,1,2) -> 14* 3.33/1.02 if1(1,1,1) -> 14* 3.33/1.02 if1(4,3,2) -> 14* 3.33/1.02 if1(1,3,1) -> 14* 3.33/1.02 if1(4,5,2) -> 14* 3.33/1.02 if1(1,5,1) -> 14* 3.33/1.02 if1(3,2,5) -> 14* 3.33/1.02 if1(3,4,5) -> 14* 3.33/1.02 if1(2,2,4) -> 14* 3.33/1.02 if1(2,4,4) -> 14* 3.33/1.02 if1(1,2,3) -> 14* 3.33/1.02 if1(1,4,3) -> 14* 3.33/1.02 if1(5,2,2) -> 14* 3.33/1.02 if1(2,2,1) -> 14* 3.33/1.02 if1(5,4,2) -> 14* 3.33/1.02 if1(2,4,1) -> 14* 3.33/1.02 if1(4,1,5) -> 14* 3.33/1.02 if1(4,3,5) -> 14* 3.33/1.02 if1(4,5,5) -> 14* 3.33/1.02 if1(3,1,4) -> 14* 3.33/1.02 if1(3,3,4) -> 14* 3.33/1.02 if1(3,5,4) -> 14* 3.33/1.02 if1(2,1,3) -> 14* 3.33/1.02 if1(2,3,3) -> 14* 3.33/1.02 if1(2,5,3) -> 14* 3.33/1.02 if1(3,1,1) -> 14* 3.33/1.02 if1(1,1,2) -> 14* 3.33/1.02 if1(3,3,1) -> 14* 3.33/1.02 if1(1,3,2) -> 14* 3.33/1.02 if1(3,5,1) -> 14* 3.33/1.02 if1(1,5,2) -> 14* 3.33/1.02 if1(5,2,5) -> 14* 3.33/1.02 if1(5,4,5) -> 14* 3.33/1.02 if1(4,2,4) -> 14* 3.33/1.02 if1(4,4,4) -> 14* 3.33/1.02 if1(3,2,3) -> 14* 3.33/1.02 if1(3,4,3) -> 14* 3.33/1.02 if1(4,2,1) -> 14* 3.33/1.02 if1(2,2,2) -> 14* 3.33/1.02 if1(4,4,1) -> 14* 3.33/1.02 if1(2,4,2) -> 14* 3.33/1.02 if1(1,1,5) -> 14* 3.33/1.02 if1(1,3,5) -> 14* 3.33/1.02 if1(1,5,5) -> 14* 3.33/1.02 if1(5,1,4) -> 14* 3.33/1.02 if1(5,3,4) -> 14* 3.33/1.02 if1(5,5,4) -> 14* 3.33/1.02 if1(4,1,3) -> 14* 3.33/1.02 if1(4,3,3) -> 14* 3.33/1.02 if1(4,5,3) -> 14* 3.33/1.02 if1(5,1,1) -> 14* 3.33/1.02 if1(3,1,2) -> 14* 3.33/1.02 if1(5,3,1) -> 14* 3.33/1.02 if1(3,3,2) -> 14* 3.33/1.02 if1(5,5,1) -> 14* 3.33/1.02 if1(3,5,2) -> 14* 3.33/1.02 if1(2,2,5) -> 14* 3.33/1.02 if1(2,4,5) -> 14* 3.33/1.02 if1(1,2,4) -> 14* 3.33/1.02 if1(1,4,4) -> 14* 3.33/1.02 if1(5,2,3) -> 14* 3.33/1.02 if1(5,4,3) -> 14* 3.33/1.02 if1(4,2,2) -> 14* 3.33/1.02 if1(1,2,1) -> 14* 3.33/1.02 if1(4,4,2) -> 14* 3.33/1.02 if1(1,4,1) -> 14* 3.33/1.02 if1(3,1,5) -> 14* 3.33/1.02 if1(3,3,5) -> 14* 3.33/1.02 if1(3,5,5) -> 14* 3.33/1.02 if1(2,1,4) -> 14* 3.33/1.02 if1(2,3,4) -> 14* 3.33/1.02 if1(2,5,4) -> 14* 3.33/1.02 if1(1,1,3) -> 14* 3.33/1.02 if1(1,3,3) -> 14* 3.33/1.02 if1(1,5,3) -> 14* 3.33/1.02 if1(5,1,2) -> 14* 3.33/1.02 if1(2,1,1) -> 14* 3.33/1.02 if1(5,3,2) -> 14* 3.33/1.02 if1(2,3,1) -> 14* 3.33/1.02 if1(5,5,2) -> 14* 3.33/1.02 if1(2,5,1) -> 14* 3.33/1.02 if1(4,2,5) -> 14* 3.33/1.02 if1(4,4,5) -> 14* 3.33/1.02 if1(3,2,4) -> 14* 3.33/1.02 if1(3,4,4) -> 14* 3.33/1.02 if1(2,2,3) -> 14* 3.33/1.02 if1(2,4,3) -> 14* 3.33/1.02 if1(3,2,1) -> 14* 3.33/1.02 if1(1,2,2) -> 14* 3.33/1.02 if1(3,4,1) -> 14* 3.33/1.02 if1(1,4,2) -> 14* 3.33/1.02 if1(5,1,5) -> 14* 3.33/1.02 if1(5,3,5) -> 14* 3.33/1.02 if1(5,5,5) -> 14* 3.33/1.02 if1(4,1,4) -> 14* 3.33/1.02 if1(4,3,4) -> 14* 3.33/1.02 if1(4,5,4) -> 14* 3.33/1.02 if1(3,1,3) -> 14* 3.33/1.02 if1(3,3,3) -> 14* 3.33/1.02 if1(3,5,3) -> 14* 3.33/1.02 if1(4,1,1) -> 14* 3.33/1.02 if1(2,1,2) -> 14* 3.33/1.02 if1(4,3,1) -> 14* 3.33/1.02 if1(2,3,2) -> 14* 3.33/1.02 if1(4,5,1) -> 14* 3.33/1.02 if1(2,5,2) -> 14* 3.33/1.02 if1(1,2,5) -> 14* 3.33/1.02 if1(1,4,5) -> 14* 3.33/1.02 if1(5,2,4) -> 14* 3.33/1.02 if1(5,4,4) -> 14* 3.33/1.02 if1(4,2,3) -> 14* 3.33/1.02 if1(4,4,3) -> 14* 3.33/1.02 f1(5) -> 11* 3.33/1.02 f1(2) -> 11* 3.33/1.02 f1(4) -> 11* 3.33/1.02 f1(1) -> 11* 3.33/1.02 f1(3) -> 11* 3.33/1.02 false1() -> 15* 3.33/1.02 true1() -> 15* 3.33/1.02 c1() -> 15* 3.33/1.02 mark1(14) -> 14,8 3.33/1.02 mark1(11) -> 11,7 3.33/1.02 top2(19) -> 10* 3.33/1.02 active0(5) -> 6* 3.33/1.02 active0(2) -> 6* 3.33/1.02 active0(4) -> 6* 3.33/1.02 active0(1) -> 6* 3.33/1.02 active0(3) -> 6* 3.33/1.02 active2(15) -> 19* 3.33/1.02 f0(5) -> 7* 3.33/1.02 f0(2) -> 7* 3.33/1.02 f0(4) -> 7* 3.33/1.02 f0(1) -> 7* 3.33/1.02 f0(3) -> 7* 3.33/1.02 mark0(5) -> 1* 3.33/1.02 mark0(2) -> 1* 3.33/1.02 mark0(4) -> 1* 3.33/1.02 mark0(1) -> 1* 3.33/1.02 mark0(3) -> 1* 3.33/1.02 if0(5,4,1) -> 8* 3.33/1.02 if0(3,4,2) -> 8* 3.33/1.02 if0(2,1,5) -> 8* 3.33/1.02 if0(2,3,5) -> 8* 3.33/1.02 if0(2,5,5) -> 8* 3.33/1.02 if0(1,1,4) -> 8* 3.33/1.02 if0(1,3,4) -> 8* 3.33/1.02 if0(1,5,4) -> 8* 3.33/1.02 if0(5,1,3) -> 8* 3.33/1.02 if0(5,3,3) -> 8* 3.33/1.02 if0(5,5,3) -> 8* 3.33/1.02 if0(4,1,2) -> 8* 3.33/1.02 if0(1,1,1) -> 8* 3.33/1.02 if0(4,3,2) -> 8* 3.33/1.02 if0(1,3,1) -> 8* 3.33/1.02 if0(4,5,2) -> 8* 3.33/1.02 if0(1,5,1) -> 8* 3.33/1.02 if0(3,2,5) -> 8* 3.33/1.02 if0(3,4,5) -> 8* 3.33/1.02 if0(2,2,4) -> 8* 3.33/1.02 if0(2,4,4) -> 8* 3.33/1.02 if0(1,2,3) -> 8* 3.33/1.02 if0(1,4,3) -> 8* 3.33/1.02 if0(5,2,2) -> 8* 3.33/1.02 if0(2,2,1) -> 8* 3.33/1.02 if0(5,4,2) -> 8* 3.33/1.02 if0(2,4,1) -> 8* 3.33/1.02 if0(4,1,5) -> 8* 3.33/1.02 if0(4,3,5) -> 8* 3.33/1.02 if0(4,5,5) -> 8* 3.33/1.02 if0(3,1,4) -> 8* 3.33/1.02 if0(3,3,4) -> 8* 3.33/1.02 if0(3,5,4) -> 8* 3.33/1.02 if0(2,1,3) -> 8* 3.33/1.02 if0(2,3,3) -> 8* 3.33/1.02 if0(2,5,3) -> 8* 3.33/1.02 if0(3,1,1) -> 8* 3.33/1.02 if0(1,1,2) -> 8* 3.33/1.02 if0(3,3,1) -> 8* 3.33/1.02 if0(1,3,2) -> 8* 3.33/1.02 if0(3,5,1) -> 8* 3.33/1.02 if0(1,5,2) -> 8* 3.33/1.02 if0(5,2,5) -> 8* 3.33/1.02 if0(5,4,5) -> 8* 3.33/1.02 if0(4,2,4) -> 8* 3.33/1.02 if0(4,4,4) -> 8* 3.33/1.02 if0(3,2,3) -> 8* 3.33/1.02 if0(3,4,3) -> 8* 3.33/1.02 if0(4,2,1) -> 8* 3.33/1.02 if0(2,2,2) -> 8* 3.33/1.02 if0(4,4,1) -> 8* 3.33/1.02 if0(2,4,2) -> 8* 3.33/1.02 if0(1,1,5) -> 8* 3.33/1.02 if0(1,3,5) -> 8* 3.33/1.02 if0(1,5,5) -> 8* 3.33/1.02 if0(5,1,4) -> 8* 3.33/1.02 if0(5,3,4) -> 8* 3.33/1.02 if0(5,5,4) -> 8* 3.33/1.02 if0(4,1,3) -> 8* 3.33/1.02 if0(4,3,3) -> 8* 3.33/1.02 if0(4,5,3) -> 8* 3.33/1.02 if0(5,1,1) -> 8* 3.33/1.02 if0(3,1,2) -> 8* 3.33/1.02 if0(5,3,1) -> 8* 3.33/1.02 if0(3,3,2) -> 8* 3.33/1.02 if0(5,5,1) -> 8* 3.33/1.02 if0(3,5,2) -> 8* 3.33/1.02 if0(2,2,5) -> 8* 3.33/1.02 if0(2,4,5) -> 8* 3.33/1.02 if0(1,2,4) -> 8* 3.33/1.02 if0(1,4,4) -> 8* 3.33/1.02 if0(5,2,3) -> 8* 3.33/1.02 if0(5,4,3) -> 8* 3.33/1.02 if0(4,2,2) -> 8* 3.33/1.02 if0(1,2,1) -> 8* 3.33/1.02 if0(4,4,2) -> 8* 3.33/1.02 if0(1,4,1) -> 8* 3.33/1.02 if0(3,1,5) -> 8* 3.33/1.02 if0(3,3,5) -> 8* 3.33/1.02 if0(3,5,5) -> 8* 3.33/1.02 if0(2,1,4) -> 8* 3.33/1.02 if0(2,3,4) -> 8* 3.33/1.02 if0(2,5,4) -> 8* 3.33/1.02 if0(1,1,3) -> 8* 3.33/1.02 if0(1,3,3) -> 8* 3.33/1.02 if0(1,5,3) -> 8* 3.33/1.02 if0(5,1,2) -> 8* 3.33/1.02 if0(2,1,1) -> 8* 3.33/1.02 if0(5,3,2) -> 8* 3.33/1.02 if0(2,3,1) -> 8* 3.33/1.02 if0(5,5,2) -> 8* 3.33/1.02 if0(2,5,1) -> 8* 3.33/1.02 if0(4,2,5) -> 8* 3.33/1.02 if0(4,4,5) -> 8* 3.33/1.02 if0(3,2,4) -> 8* 3.33/1.02 if0(3,4,4) -> 8* 3.33/1.02 if0(2,2,3) -> 8* 3.33/1.02 if0(2,4,3) -> 8* 3.33/1.02 if0(3,2,1) -> 8* 3.33/1.02 if0(1,2,2) -> 8* 3.33/1.02 if0(3,4,1) -> 8* 3.33/1.02 if0(1,4,2) -> 8* 3.33/1.02 if0(5,1,5) -> 8* 3.33/1.02 if0(5,3,5) -> 8* 3.33/1.02 if0(5,5,5) -> 8* 3.33/1.02 if0(4,1,4) -> 8* 3.33/1.02 if0(4,3,4) -> 8* 3.33/1.02 if0(4,5,4) -> 8* 3.33/1.02 if0(3,1,3) -> 8* 3.33/1.02 if0(3,3,3) -> 8* 3.33/1.02 if0(3,5,3) -> 8* 3.33/1.02 if0(4,1,1) -> 8* 3.33/1.02 if0(2,1,2) -> 8* 3.33/1.02 if0(4,3,1) -> 8* 3.33/1.02 if0(2,3,2) -> 8* 3.33/1.02 if0(4,5,1) -> 8* 3.33/1.02 if0(2,5,2) -> 8* 3.33/1.02 if0(1,2,5) -> 8* 3.33/1.02 if0(1,4,5) -> 8* 3.33/1.02 if0(5,2,4) -> 8* 3.33/1.02 if0(5,4,4) -> 8* 3.33/1.02 if0(4,2,3) -> 8* 3.33/1.02 if0(4,4,3) -> 8* 3.33/1.02 if0(5,2,1) -> 8* 3.33/1.02 if0(3,2,2) -> 8* 3.33/1.02 c0() -> 2* 3.33/1.02 true0() -> 3* 3.33/1.02 false0() -> 4* 3.33/1.02 proper0(5) -> 9* 3.33/1.02 proper0(2) -> 9* 3.33/1.02 proper0(4) -> 9* 3.33/1.02 proper0(1) -> 9* 3.33/1.02 proper0(3) -> 9* 3.33/1.02 ok0(5) -> 5* 3.33/1.02 ok0(2) -> 5* 3.33/1.02 ok0(4) -> 5* 3.33/1.02 ok0(1) -> 5* 3.33/1.02 ok0(3) -> 5* 3.33/1.02 top0(5) -> 10* 3.33/1.02 top0(2) -> 10* 3.33/1.02 top0(4) -> 10* 3.33/1.02 top0(1) -> 10* 3.33/1.02 top0(3) -> 10* 3.33/1.02 problem: 3.33/1.02 3.33/1.02 Qed 3.33/1.03 EOF