MAYBE Time: 3.579 Problem: Equations: plusAC(plusAC(x4,x5),x6) -> plusAC(x4,plusAC(x5,x6)) plusAC(x4,x5) -> plusAC(x5,x4) timesAC(timesAC(x4,x5),x6) -> timesAC(x4,timesAC(x5,x6)) timesAC(x4,x5) -> timesAC(x5,x4) plusAC(x4,plusAC(x5,x6)) -> plusAC(plusAC(x4,x5),x6) plusAC(x5,x4) -> plusAC(x4,x5) timesAC(x4,timesAC(x5,x6)) -> timesAC(timesAC(x4,x5),x6) timesAC(x5,x4) -> timesAC(x4,x5) TRS: 0(S()) -> S() plusAC(S(),x) -> x plusAC(0(x),0(y)) -> 0(plusAC(x,y)) plusAC(0(x),1(y)) -> 1(plusAC(x,y)) plusAC(0(x),j(y)) -> j(plusAC(x,y)) plusAC(1(x),1(y)) -> j(plusAC(1(S()),plusAC(x,y))) plusAC(j(x),j(y)) -> 1(plusAC(j(S()),plusAC(x,y))) plusAC(1(x),j(y)) -> 0(plusAC(x,y)) opp(S()) -> S() opp(0(x)) -> 0(opp(x)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x,y) -> plusAC(opp(y),x) timesAC(S(),x) -> S() timesAC(0(x),y) -> 0(timesAC(x,y)) timesAC(1(x),y) -> plusAC(0(timesAC(x,y)),y) timesAC(j(x),y) -> minus(0(timesAC(x,y)),y) sign(x) -> if_sign(x,S()) if_sign(S(),x) -> x if_sign(0(x),y) -> if_sign(x,y) if_sign(1(x),y) -> if_sign(x,1(S())) if_sign(j(x),y) -> if_sign(x,j(S())) abs(x) -> if_abs(x,x,S()) if_abs(0(x),y,z) -> if_abs(x,y,z) if_abs(1(x),y,z) -> if_abs(x,y,1(S())) if_abs(j(x),y,z) -> if_abs(x,y,j(S())) if_abs(S(),x,S()) -> S() if_abs(S(),x,1(S())) -> x if_abs(S(),x,j(S())) -> opp(x) min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S()) min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S()) min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S()) if_min(0(x),y,z,u) -> if_min(x,y,z,u) if_min(1(x),y,z,u) -> if_min(x,y,z,1(S())) if_min(j(x),y,z,u) -> if_min(x,y,z,j(S())) if_min(S(),x,y,S()) -> x if_min(S(),x,y,1(S())) -> x if_min(S(),x,y,j(S())) -> y Proof: DP Processor: Equations#: plus{AC,#}(plusAC(x4,x5),x6) -> plus{AC,#}(x4,plusAC(x5,x6)) plus{AC,#}(x4,x5) -> plus{AC,#}(x5,x4) times{AC,#}(timesAC(x4,x5),x6) -> times{AC,#}(x4,timesAC(x5,x6)) times{AC,#}(x4,x5) -> times{AC,#}(x5,x4) plus{AC,#}(x4,plusAC(x5,x6)) -> plus{AC,#}(plusAC(x4,x5),x6) plus{AC,#}(x5,x4) -> plus{AC,#}(x4,x5) times{AC,#}(x4,timesAC(x5,x6)) -> times{AC,#}(timesAC(x4,x5),x6) times{AC,#}(x5,x4) -> times{AC,#}(x4,x5) DPs: plus{AC,#}(0(x),0(y)) -> plus{AC,#}(x,y) plus{AC,#}(0(x),0(y)) -> 0#(plusAC(x,y)) plus{AC,#}(0(x),1(y)) -> plus{AC,#}(x,y) plus{AC,#}(0(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),1(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),1(y)) -> plus{AC,#}(1(S()),plusAC(x,y)) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(j(S()),plusAC(x,y)) plus{AC,#}(1(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),j(y)) -> 0#(plusAC(x,y)) opp#(0(x)) -> opp#(x) opp#(0(x)) -> 0#(opp(x)) opp#(1(x)) -> opp#(x) opp#(j(x)) -> opp#(x) minus#(x,y) -> opp#(y) minus#(x,y) -> plus{AC,#}(opp(y),x) times{AC,#}(0(x),y) -> times{AC,#}(x,y) times{AC,#}(0(x),y) -> 0#(timesAC(x,y)) times{AC,#}(1(x),y) -> times{AC,#}(x,y) times{AC,#}(1(x),y) -> 0#(timesAC(x,y)) times{AC,#}(1(x),y) -> plus{AC,#}(0(timesAC(x,y)),y) times{AC,#}(j(x),y) -> times{AC,#}(x,y) times{AC,#}(j(x),y) -> 0#(timesAC(x,y)) times{AC,#}(j(x),y) -> minus#(0(timesAC(x,y)),y) sign#(x) -> if_sign#(x,S()) if_sign#(0(x),y) -> if_sign#(x,y) if_sign#(1(x),y) -> if_sign#(x,1(S())) if_sign#(j(x),y) -> if_sign#(x,j(S())) abs#(x) -> if_abs#(x,x,S()) if_abs#(0(x),y,z) -> if_abs#(x,y,z) if_abs#(1(x),y,z) -> if_abs#(x,y,1(S())) if_abs#(j(x),y,z) -> if_abs#(x,y,j(S())) if_abs#(S(),x,j(S())) -> opp#(x) min#(x,y) -> abs#(x) min#(x,y) -> abs#(y) min#(x,y) -> minus#(abs(y),abs(x)) min#(x,y) -> if_min#(minus(abs(y),abs(x)),x,y,S()) min'#(x,y) -> abs#(1(x)) min'#(x,y) -> abs#(1(y)) min'#(x,y) -> minus#(abs(1(y)),abs(1(x))) min'#(x,y) -> if_min#(minus(abs(1(y)),abs(1(x))),x,y,S()) min''#(x,y) -> abs#(j(x)) min''#(x,y) -> abs#(j(y)) min''#(x,y) -> minus#(abs(j(y)),abs(j(x))) min''#(x,y) -> if_min#(minus(abs(j(y)),abs(j(x))),x,y,S()) if_min#(0(x),y,z,u) -> if_min#(x,y,z,u) if_min#(1(x),y,z,u) -> if_min#(x,y,z,1(S())) if_min#(j(x),y,z,u) -> if_min#(x,y,z,j(S())) plus{AC,#}(x7,plusAC(S(),x)) -> plus{AC,#}(x7,x) plus{AC,#}(x8,plusAC(0(x),0(y))) -> plus{AC,#}(x,y) plus{AC,#}(x8,plusAC(0(x),0(y))) -> 0#(plusAC(x,y)) plus{AC,#}(x8,plusAC(0(x),0(y))) -> plus{AC,#}(x8,0(plusAC(x,y))) plus{AC,#}(x9,plusAC(0(x),1(y))) -> plus{AC,#}(x,y) plus{AC,#}(x9,plusAC(0(x),1(y))) -> plus{AC,#}(x9,1(plusAC(x,y))) plus{AC,#}(x10,plusAC(0(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x10,plusAC(0(x),j(y))) -> plus{AC,#}(x10,j(plusAC(x,y))) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(x,y) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(1(S()),plusAC(x,y)) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(x11,j(plusAC(1(S()),plusAC(x,y)))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(j(S()),plusAC(x,y)) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x12,1(plusAC(j(S()),plusAC(x,y)))) plus{AC,#}(x13,plusAC(1(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x13,plusAC(1(x),j(y))) -> 0#(plusAC(x,y)) plus{AC,#}(x13,plusAC(1(x),j(y))) -> plus{AC,#}(x13,0(plusAC(x,y))) times{AC,#}(x14,timesAC(S(),x)) -> times{AC,#}(x14,S()) times{AC,#}(x15,timesAC(0(x),y)) -> times{AC,#}(x,y) times{AC,#}(x15,timesAC(0(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x15,timesAC(0(x),y)) -> times{AC,#}(x15,0(timesAC(x,y))) times{AC,#}(x16,timesAC(1(x),y)) -> times{AC,#}(x,y) times{AC,#}(x16,timesAC(1(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x16,timesAC(1(x),y)) -> plus{AC,#}(0(timesAC(x,y)),y) times{AC,#}(x16,timesAC(1(x),y)) -> times{AC,#}(x16,plusAC(0(timesAC(x,y)),y)) times{AC,#}(x17,timesAC(j(x),y)) -> times{AC,#}(x,y) times{AC,#}(x17,timesAC(j(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x17,timesAC(j(x),y)) -> minus#(0(timesAC(x,y)),y) times{AC,#}(x17,timesAC(j(x),y)) -> times{AC,#}(x17,minus(0(timesAC(x,y)),y)) Equations: plusAC(plusAC(x4,x5),x6) -> plusAC(x4,plusAC(x5,x6)) plusAC(x4,x5) -> plusAC(x5,x4) timesAC(timesAC(x4,x5),x6) -> timesAC(x4,timesAC(x5,x6)) timesAC(x4,x5) -> timesAC(x5,x4) plusAC(x4,plusAC(x5,x6)) -> plusAC(plusAC(x4,x5),x6) plusAC(x5,x4) -> plusAC(x4,x5) timesAC(x4,timesAC(x5,x6)) -> timesAC(timesAC(x4,x5),x6) timesAC(x5,x4) -> timesAC(x4,x5) TRS: 0(S()) -> S() plusAC(S(),x) -> x plusAC(0(x),0(y)) -> 0(plusAC(x,y)) plusAC(0(x),1(y)) -> 1(plusAC(x,y)) plusAC(0(x),j(y)) -> j(plusAC(x,y)) plusAC(1(x),1(y)) -> j(plusAC(1(S()),plusAC(x,y))) plusAC(j(x),j(y)) -> 1(plusAC(j(S()),plusAC(x,y))) plusAC(1(x),j(y)) -> 0(plusAC(x,y)) opp(S()) -> S() opp(0(x)) -> 0(opp(x)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x,y) -> plusAC(opp(y),x) timesAC(S(),x) -> S() timesAC(0(x),y) -> 0(timesAC(x,y)) timesAC(1(x),y) -> plusAC(0(timesAC(x,y)),y) timesAC(j(x),y) -> minus(0(timesAC(x,y)),y) sign(x) -> if_sign(x,S()) if_sign(S(),x) -> x if_sign(0(x),y) -> if_sign(x,y) if_sign(1(x),y) -> if_sign(x,1(S())) if_sign(j(x),y) -> if_sign(x,j(S())) abs(x) -> if_abs(x,x,S()) if_abs(0(x),y,z) -> if_abs(x,y,z) if_abs(1(x),y,z) -> if_abs(x,y,1(S())) if_abs(j(x),y,z) -> if_abs(x,y,j(S())) if_abs(S(),x,S()) -> S() if_abs(S(),x,1(S())) -> x if_abs(S(),x,j(S())) -> opp(x) min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S()) min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S()) min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S()) if_min(0(x),y,z,u) -> if_min(x,y,z,u) if_min(1(x),y,z,u) -> if_min(x,y,z,1(S())) if_min(j(x),y,z,u) -> if_min(x,y,z,j(S())) if_min(S(),x,y,S()) -> x if_min(S(),x,y,1(S())) -> x if_min(S(),x,y,j(S())) -> y S: plus{AC,#}(plusAC(x18,x19),x20) -> plus{AC,#}(x18,x19) plus{AC,#}(x18,plusAC(x19,x20)) -> plus{AC,#}(x19,x20) times{AC,#}(timesAC(x18,x19),x20) -> times{AC,#}(x18,x19) times{AC,#}(x18,timesAC(x19,x20)) -> times{AC,#}(x19,x20) AC-EDG Processor: Equations#: plus{AC,#}(plusAC(x4,x5),x6) -> plus{AC,#}(x4,plusAC(x5,x6)) plus{AC,#}(x4,x5) -> plus{AC,#}(x5,x4) times{AC,#}(timesAC(x4,x5),x6) -> times{AC,#}(x4,timesAC(x5,x6)) times{AC,#}(x4,x5) -> times{AC,#}(x5,x4) plus{AC,#}(x4,plusAC(x5,x6)) -> plus{AC,#}(plusAC(x4,x5),x6) plus{AC,#}(x5,x4) -> plus{AC,#}(x4,x5) times{AC,#}(x4,timesAC(x5,x6)) -> times{AC,#}(timesAC(x4,x5),x6) times{AC,#}(x5,x4) -> times{AC,#}(x4,x5) DPs: plus{AC,#}(0(x),0(y)) -> plus{AC,#}(x,y) plus{AC,#}(0(x),0(y)) -> 0#(plusAC(x,y)) plus{AC,#}(0(x),1(y)) -> plus{AC,#}(x,y) plus{AC,#}(0(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),1(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),1(y)) -> plus{AC,#}(1(S()),plusAC(x,y)) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(j(S()),plusAC(x,y)) plus{AC,#}(1(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(1(x),j(y)) -> 0#(plusAC(x,y)) opp#(0(x)) -> opp#(x) opp#(0(x)) -> 0#(opp(x)) opp#(1(x)) -> opp#(x) opp#(j(x)) -> opp#(x) minus#(x,y) -> opp#(y) minus#(x,y) -> plus{AC,#}(opp(y),x) times{AC,#}(0(x),y) -> times{AC,#}(x,y) times{AC,#}(0(x),y) -> 0#(timesAC(x,y)) times{AC,#}(1(x),y) -> times{AC,#}(x,y) times{AC,#}(1(x),y) -> 0#(timesAC(x,y)) times{AC,#}(1(x),y) -> plus{AC,#}(0(timesAC(x,y)),y) times{AC,#}(j(x),y) -> times{AC,#}(x,y) times{AC,#}(j(x),y) -> 0#(timesAC(x,y)) times{AC,#}(j(x),y) -> minus#(0(timesAC(x,y)),y) sign#(x) -> if_sign#(x,S()) if_sign#(0(x),y) -> if_sign#(x,y) if_sign#(1(x),y) -> if_sign#(x,1(S())) if_sign#(j(x),y) -> if_sign#(x,j(S())) abs#(x) -> if_abs#(x,x,S()) if_abs#(0(x),y,z) -> if_abs#(x,y,z) if_abs#(1(x),y,z) -> if_abs#(x,y,1(S())) if_abs#(j(x),y,z) -> if_abs#(x,y,j(S())) if_abs#(S(),x,j(S())) -> opp#(x) min#(x,y) -> abs#(x) min#(x,y) -> abs#(y) min#(x,y) -> minus#(abs(y),abs(x)) min#(x,y) -> if_min#(minus(abs(y),abs(x)),x,y,S()) min'#(x,y) -> abs#(1(x)) min'#(x,y) -> abs#(1(y)) min'#(x,y) -> minus#(abs(1(y)),abs(1(x))) min'#(x,y) -> if_min#(minus(abs(1(y)),abs(1(x))),x,y,S()) min''#(x,y) -> abs#(j(x)) min''#(x,y) -> abs#(j(y)) min''#(x,y) -> minus#(abs(j(y)),abs(j(x))) min''#(x,y) -> if_min#(minus(abs(j(y)),abs(j(x))),x,y,S()) if_min#(0(x),y,z,u) -> if_min#(x,y,z,u) if_min#(1(x),y,z,u) -> if_min#(x,y,z,1(S())) if_min#(j(x),y,z,u) -> if_min#(x,y,z,j(S())) plus{AC,#}(x7,plusAC(S(),x)) -> plus{AC,#}(x7,x) plus{AC,#}(x8,plusAC(0(x),0(y))) -> plus{AC,#}(x,y) plus{AC,#}(x8,plusAC(0(x),0(y))) -> 0#(plusAC(x,y)) plus{AC,#}(x8,plusAC(0(x),0(y))) -> plus{AC,#}(x8,0(plusAC(x,y))) plus{AC,#}(x9,plusAC(0(x),1(y))) -> plus{AC,#}(x,y) plus{AC,#}(x9,plusAC(0(x),1(y))) -> plus{AC,#}(x9,1(plusAC(x,y))) plus{AC,#}(x10,plusAC(0(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x10,plusAC(0(x),j(y))) -> plus{AC,#}(x10,j(plusAC(x,y))) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(x,y) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(1(S()),plusAC(x,y)) plus{AC,#}(x11,plusAC(1(x),1(y))) -> plus{AC,#}(x11,j(plusAC(1(S()),plusAC(x,y)))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(j(S()),plusAC(x,y)) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x12,1(plusAC(j(S()),plusAC(x,y)))) plus{AC,#}(x13,plusAC(1(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x13,plusAC(1(x),j(y))) -> 0#(plusAC(x,y)) plus{AC,#}(x13,plusAC(1(x),j(y))) -> plus{AC,#}(x13,0(plusAC(x,y))) times{AC,#}(x14,timesAC(S(),x)) -> times{AC,#}(x14,S()) times{AC,#}(x15,timesAC(0(x),y)) -> times{AC,#}(x,y) times{AC,#}(x15,timesAC(0(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x15,timesAC(0(x),y)) -> times{AC,#}(x15,0(timesAC(x,y))) times{AC,#}(x16,timesAC(1(x),y)) -> times{AC,#}(x,y) times{AC,#}(x16,timesAC(1(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x16,timesAC(1(x),y)) -> plus{AC,#}(0(timesAC(x,y)),y) times{AC,#}(x16,timesAC(1(x),y)) -> times{AC,#}(x16,plusAC(0(timesAC(x,y)),y)) times{AC,#}(x17,timesAC(j(x),y)) -> times{AC,#}(x,y) times{AC,#}(x17,timesAC(j(x),y)) -> 0#(timesAC(x,y)) times{AC,#}(x17,timesAC(j(x),y)) -> minus#(0(timesAC(x,y)),y) times{AC,#}(x17,timesAC(j(x),y)) -> times{AC,#}(x17,minus(0(timesAC(x,y)),y)) Equations: plusAC(plusAC(x4,x5),x6) -> plusAC(x4,plusAC(x5,x6)) plusAC(x4,x5) -> plusAC(x5,x4) timesAC(timesAC(x4,x5),x6) -> timesAC(x4,timesAC(x5,x6)) timesAC(x4,x5) -> timesAC(x5,x4) plusAC(x4,plusAC(x5,x6)) -> plusAC(plusAC(x4,x5),x6) plusAC(x5,x4) -> plusAC(x4,x5) timesAC(x4,timesAC(x5,x6)) -> timesAC(timesAC(x4,x5),x6) timesAC(x5,x4) -> timesAC(x4,x5) TRS: 0(S()) -> S() plusAC(S(),x) -> x plusAC(0(x),0(y)) -> 0(plusAC(x,y)) plusAC(0(x),1(y)) -> 1(plusAC(x,y)) plusAC(0(x),j(y)) -> j(plusAC(x,y)) plusAC(1(x),1(y)) -> j(plusAC(1(S()),plusAC(x,y))) plusAC(j(x),j(y)) -> 1(plusAC(j(S()),plusAC(x,y))) plusAC(1(x),j(y)) -> 0(plusAC(x,y)) opp(S()) -> S() opp(0(x)) -> 0(opp(x)) opp(1(x)) -> j(opp(x)) opp(j(x)) -> 1(opp(x)) minus(x,y) -> plusAC(opp(y),x) timesAC(S(),x) -> S() timesAC(0(x),y) -> 0(timesAC(x,y)) timesAC(1(x),y) -> plusAC(0(timesAC(x,y)),y) timesAC(j(x),y) -> minus(0(timesAC(x,y)),y) sign(x) -> if_sign(x,S()) if_sign(S(),x) -> x if_sign(0(x),y) -> if_sign(x,y) if_sign(1(x),y) -> if_sign(x,1(S())) if_sign(j(x),y) -> if_sign(x,j(S())) abs(x) -> if_abs(x,x,S()) if_abs(0(x),y,z) -> if_abs(x,y,z) if_abs(1(x),y,z) -> if_abs(x,y,1(S())) if_abs(j(x),y,z) -> if_abs(x,y,j(S())) if_abs(S(),x,S()) -> S() if_abs(S(),x,1(S())) -> x if_abs(S(),x,j(S())) -> opp(x) min(x,y) -> if_min(minus(abs(y),abs(x)),x,y,S()) min'(x,y) -> if_min(minus(abs(1(y)),abs(1(x))),x,y,S()) min''(x,y) -> if_min(minus(abs(j(y)),abs(j(x))),x,y,S()) if_min(0(x),y,z,u) -> if_min(x,y,z,u) if_min(1(x),y,z,u) -> if_min(x,y,z,1(S())) if_min(j(x),y,z,u) -> if_min(x,y,z,j(S())) if_min(S(),x,y,S()) -> x if_min(S(),x,y,1(S())) -> x if_min(S(),x,y,j(S())) -> y S: plus{AC,#}(plusAC(x18,x19),x20) -> plus{AC,#}(x18,x19) plus{AC,#}(x18,plusAC(x19,x20)) -> plus{AC,#}(x19,x20) times{AC,#}(timesAC(x18,x19),x20) -> times{AC,#}(x18,x19) times{AC,#}(x18,timesAC(x19,x20)) -> times{AC,#}(x19,x20) Open