MAYBE Problem: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Proof: DP Processor: DPs: leq#(s(x),s(y)) -> leq#(x,y) -#(s(x),s(y)) -> -#(x,y) mod#(s(x),s(y)) -> -#(s(x),s(y)) mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) mod#(s(x),s(y)) -> leq#(y,x) mod#(s(x),s(y)) -> if#(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) TDG Processor: DPs: leq#(s(x),s(y)) -> leq#(x,y) -#(s(x),s(y)) -> -#(x,y) mod#(s(x),s(y)) -> -#(s(x),s(y)) mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) mod#(s(x),s(y)) -> leq#(y,x) mod#(s(x),s(y)) -> if#(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) graph: mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) -> mod#(s(x),s(y)) -> if#(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) -> mod#(s(x),s(y)) -> leq#(y,x) mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) -> mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) -> mod#(s(x),s(y)) -> -#(s(x),s(y)) mod#(s(x),s(y)) -> -#(s(x),s(y)) -> -#(s(x),s(y)) -> -#(x,y) mod#(s(x),s(y)) -> leq#(y,x) -> leq#(s(x),s(y)) -> leq#(x,y) -#(s(x),s(y)) -> -#(x,y) -> -#(s(x),s(y)) -> -#(x,y) leq#(s(x),s(y)) -> leq#(x,y) -> leq#(s(x),s(y)) -> leq#(x,y) SCC Processor: #sccs: 3 #rules: 3 #arcs: 8/36 DPs: mod#(s(x),s(y)) -> mod#(-(s(x),s(y)),s(y)) TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Open DPs: leq#(s(x),s(y)) -> leq#(x,y) TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Subterm Criterion Processor: simple projection: pi(leq#) = 1 problem: DPs: TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Qed DPs: -#(s(x),s(y)) -> -#(x,y) TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Subterm Criterion Processor: simple projection: pi(-#) = 1 problem: DPs: TRS: leq(0(),y) -> true() leq(s(x),0()) -> false() leq(s(x),s(y)) -> leq(x,y) if(true(),x,y) -> x if(false(),x,y) -> y -(x,0()) -> x -(s(x),s(y)) -> -(x,y) mod(0(),y) -> 0() mod(s(x),0()) -> 0() mod(s(x),s(y)) -> if(leq(y,x),mod(-(s(x),s(y)),s(y)),s(x)) Qed