Input TRS: 1: app(nil(),y) -> y 2: app(cons(n,x),y) -> cons(n,app(x,y)) 3: reverse(nil()) -> nil() 4: reverse(cons(n,x)) -> app(reverse(x),cons(n,nil())) 5: shuffle(nil()) -> nil() 6: shuffle(cons(n,x)) -> cons(n,shuffle(reverse(x))) 7: shuffle(cons(n,cons(m,x))) ->= shuffle(cons(m,cons(n,x))) Number of strict rules: 6 Direct Order(PosReal,>,Poly) ... removes: 3 5 6 reverse(x1) weight: (/ 1 4) + x1 shuffle(x1) weight: (/ 122449 4) + 2 * x1 nil() weight: 0 cons(x1,x2) weight: (/ 23415 4) + x2 + x1 app(x1,x2) weight: x2 + x1 Number of strict rules: 3 Direct Order(PosReal,>,Poly) ... removes: 4 1 reverse(x1) weight: (/ 1 8) + 2 * x1 shuffle(x1) weight: 30612 + 2 * x1 nil() weight: (/ 1 16) cons(x1,x2) weight: (/ 3 16) + x2 + x1 app(x1,x2) weight: (/ 1 16) + x2 + x1 Number of strict rules: 1 Direct Order(PosReal,>,Poly) ... removes: 2 reverse(x1) weight: (/ 3 8) + 2 * x1 shuffle(x1) weight: 2 * x1 nil() weight: (/ 1 8) cons(x1,x2) weight: (/ 5 8) + x2 + x1 app(x1,x2) weight: (/ 1 8) + x2 + 2 * x1 Number of strict rules: 0 YES