MAYBE Time: 4.760 Problem: Equations: plusAC(plusAC(x3,x4),x5) -> plusAC(x3,plusAC(x4,x5)) plusAC(x3,x4) -> plusAC(x4,x3) timesAC(timesAC(x3,x4),x5) -> timesAC(x3,timesAC(x4,x5)) timesAC(x3,x4) -> timesAC(x4,x3) plusAC(x3,plusAC(x4,x5)) -> plusAC(plusAC(x3,x4),x5) plusAC(x4,x3) -> plusAC(x3,x4) timesAC(x3,timesAC(x4,x5)) -> timesAC(timesAC(x3,x4),x5) timesAC(x4,x3) -> timesAC(x3,x4) TRS: zero(0()) -> 0() plusAC(x,0()) -> x plusAC(zero(x),zero(y)) -> zero(plusAC(x,y)) plusAC(zero(x),un(y)) -> un(plusAC(x,y)) plusAC(zero(x),j(y)) -> j(plusAC(x,y)) plusAC(un(x),j(y)) -> zero(plusAC(x,y)) plusAC(un(x),un(y)) -> j(plusAC(x,plusAC(y,un(0())))) plusAC(j(x),j(y)) -> un(plusAC(x,plusAC(y,j(0())))) minus(x,y) -> plusAC(x,neg(y)) neg(0()) -> 0() neg(zero(x)) -> zero(neg(x)) neg(un(x)) -> j(neg(x)) neg(j(x)) -> un(neg(x)) timesAC(x,0()) -> 0() timesAC(x,timesAC(0(),z)) -> timesAC(0(),z) timesAC(x,zero(y)) -> zero(timesAC(x,y)) timesAC(x,timesAC(zero(y),z)) -> timesAC(zero(timesAC(x,y)),z) timesAC(x,un(y)) -> plusAC(x,zero(timesAC(x,y))) timesAC(x,timesAC(un(y),z)) -> timesAC(plusAC(x,zero(timesAC(x,y))),z) timesAC(x,j(y)) -> plusAC(zero(timesAC(x,y)),neg(x)) timesAC(x,timesAC(j(y),z)) -> timesAC(plusAC(zero(timesAC(x,y)),neg(x)),z) Proof: DP Processor: Equations#: plus{AC,#}(plusAC(x3,x4),x5) -> plus{AC,#}(x3,plusAC(x4,x5)) plus{AC,#}(x3,x4) -> plus{AC,#}(x4,x3) times{AC,#}(timesAC(x3,x4),x5) -> times{AC,#}(x3,timesAC(x4,x5)) times{AC,#}(x3,x4) -> times{AC,#}(x4,x3) plus{AC,#}(x3,plusAC(x4,x5)) -> plus{AC,#}(plusAC(x3,x4),x5) plus{AC,#}(x4,x3) -> plus{AC,#}(x3,x4) times{AC,#}(x3,timesAC(x4,x5)) -> times{AC,#}(timesAC(x3,x4),x5) times{AC,#}(x4,x3) -> times{AC,#}(x3,x4) DPs: plus{AC,#}(zero(x),zero(y)) -> plus{AC,#}(x,y) plus{AC,#}(zero(x),zero(y)) -> zero#(plusAC(x,y)) plus{AC,#}(zero(x),un(y)) -> plus{AC,#}(x,y) plus{AC,#}(zero(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(un(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(un(x),j(y)) -> zero#(plusAC(x,y)) plus{AC,#}(un(x),un(y)) -> plus{AC,#}(y,un(0())) plus{AC,#}(un(x),un(y)) -> plus{AC,#}(x,plusAC(y,un(0()))) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(y,j(0())) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(x,plusAC(y,j(0()))) minus#(x,y) -> neg#(y) minus#(x,y) -> plus{AC,#}(x,neg(y)) neg#(zero(x)) -> neg#(x) neg#(zero(x)) -> zero#(neg(x)) neg#(un(x)) -> neg#(x) neg#(j(x)) -> neg#(x) times{AC,#}(x,zero(y)) -> times{AC,#}(x,y) times{AC,#}(x,zero(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(zero(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(zero(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(zero(y),z)) -> times{AC,#}(zero(timesAC(x,y)),z) times{AC,#}(x,un(y)) -> times{AC,#}(x,y) times{AC,#}(x,un(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,un(y)) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x,timesAC(un(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(un(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(un(y),z)) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x,timesAC(un(y),z)) -> times{AC,#}(plusAC(x,zero(timesAC(x,y))),z) times{AC,#}(x,j(y)) -> neg#(x) times{AC,#}(x,j(y)) -> times{AC,#}(x,y) times{AC,#}(x,j(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,j(y)) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x,timesAC(j(y),z)) -> neg#(x) times{AC,#}(x,timesAC(j(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(j(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(j(y),z)) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x,timesAC(j(y),z)) -> times{AC,#}(plusAC(zero(timesAC(x,y)),neg(x)),z) plus{AC,#}(x6,plusAC(x,0())) -> plus{AC,#}(x6,x) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> plus{AC,#}(x,y) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> zero#(plusAC(x,y)) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> plus{AC,#}(x7,zero(plusAC(x,y))) plus{AC,#}(x8,plusAC(zero(x),un(y))) -> plus{AC,#}(x,y) plus{AC,#}(x8,plusAC(zero(x),un(y))) -> plus{AC,#}(x8,un(plusAC(x,y))) plus{AC,#}(x9,plusAC(zero(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x9,plusAC(zero(x),j(y))) -> plus{AC,#}(x9,j(plusAC(x,y))) plus{AC,#}(x10,plusAC(un(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x10,plusAC(un(x),j(y))) -> zero#(plusAC(x,y)) plus{AC,#}(x10,plusAC(un(x),j(y))) -> plus{AC,#}(x10,zero(plusAC(x,y))) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(y,un(0())) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(x,plusAC(y,un(0()))) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(x11,j(plusAC(x,plusAC(y,un(0()))))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(y,j(0())) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x,plusAC(y,j(0()))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x12,un(plusAC(x,plusAC(y,j(0()))))) times{AC,#}(x13,timesAC(x,0())) -> times{AC,#}(x13,0()) times{AC,#}(x14,timesAC(x,timesAC(0(),z))) -> times{AC,#}(x14,timesAC(0(),z)) times{AC,#}(x15,timesAC(x,zero(y))) -> times{AC,#}(x,y) times{AC,#}(x15,timesAC(x,zero(y))) -> zero#(timesAC(x,y)) times{AC,#}(x15,timesAC(x,zero(y))) -> times{AC,#}(x15,zero(timesAC(x,y))) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(x,y) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(zero(timesAC(x,y)),z) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(x16,timesAC(zero(timesAC(x,y)),z)) times{AC,#}(x17,timesAC(x,un(y))) -> times{AC,#}(x,y) times{AC,#}(x17,timesAC(x,un(y))) -> zero#(timesAC(x,y)) times{AC,#}(x17,timesAC(x,un(y))) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x17,timesAC(x,un(y))) -> times{AC,#}(x17,plusAC(x,zero(timesAC(x,y)))) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(x,y) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(plusAC(x,zero(timesAC(x,y))),z) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(x18,timesAC(plusAC(x,zero(timesAC(x,y))),z)) times{AC,#}(x19,timesAC(x,j(y))) -> neg#(x) times{AC,#}(x19,timesAC(x,j(y))) -> times{AC,#}(x,y) times{AC,#}(x19,timesAC(x,j(y))) -> zero#(timesAC(x,y)) times{AC,#}(x19,timesAC(x,j(y))) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x19,timesAC(x,j(y))) -> times{AC,#}(x19,plusAC(zero(timesAC(x,y)),neg(x))) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> neg#(x) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(x,y) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(plusAC(zero(timesAC(x,y)),neg(x)),z) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(x20,timesAC(plusAC(zero(timesAC(x,y)),neg(x)),z)) Equations: plusAC(plusAC(x3,x4),x5) -> plusAC(x3,plusAC(x4,x5)) plusAC(x3,x4) -> plusAC(x4,x3) timesAC(timesAC(x3,x4),x5) -> timesAC(x3,timesAC(x4,x5)) timesAC(x3,x4) -> timesAC(x4,x3) plusAC(x3,plusAC(x4,x5)) -> plusAC(plusAC(x3,x4),x5) plusAC(x4,x3) -> plusAC(x3,x4) timesAC(x3,timesAC(x4,x5)) -> timesAC(timesAC(x3,x4),x5) timesAC(x4,x3) -> timesAC(x3,x4) TRS: zero(0()) -> 0() plusAC(x,0()) -> x plusAC(zero(x),zero(y)) -> zero(plusAC(x,y)) plusAC(zero(x),un(y)) -> un(plusAC(x,y)) plusAC(zero(x),j(y)) -> j(plusAC(x,y)) plusAC(un(x),j(y)) -> zero(plusAC(x,y)) plusAC(un(x),un(y)) -> j(plusAC(x,plusAC(y,un(0())))) plusAC(j(x),j(y)) -> un(plusAC(x,plusAC(y,j(0())))) minus(x,y) -> plusAC(x,neg(y)) neg(0()) -> 0() neg(zero(x)) -> zero(neg(x)) neg(un(x)) -> j(neg(x)) neg(j(x)) -> un(neg(x)) timesAC(x,0()) -> 0() timesAC(x,timesAC(0(),z)) -> timesAC(0(),z) timesAC(x,zero(y)) -> zero(timesAC(x,y)) timesAC(x,timesAC(zero(y),z)) -> timesAC(zero(timesAC(x,y)),z) timesAC(x,un(y)) -> plusAC(x,zero(timesAC(x,y))) timesAC(x,timesAC(un(y),z)) -> timesAC(plusAC(x,zero(timesAC(x,y))),z) timesAC(x,j(y)) -> plusAC(zero(timesAC(x,y)),neg(x)) timesAC(x,timesAC(j(y),z)) -> timesAC(plusAC(zero(timesAC(x,y)),neg(x)),z) S: plus{AC,#}(plusAC(x21,x22),x23) -> plus{AC,#}(x21,x22) plus{AC,#}(x21,plusAC(x22,x23)) -> plus{AC,#}(x22,x23) times{AC,#}(timesAC(x21,x22),x23) -> times{AC,#}(x21,x22) times{AC,#}(x21,timesAC(x22,x23)) -> times{AC,#}(x22,x23) AC-EDG Processor: Equations#: plus{AC,#}(plusAC(x3,x4),x5) -> plus{AC,#}(x3,plusAC(x4,x5)) plus{AC,#}(x3,x4) -> plus{AC,#}(x4,x3) times{AC,#}(timesAC(x3,x4),x5) -> times{AC,#}(x3,timesAC(x4,x5)) times{AC,#}(x3,x4) -> times{AC,#}(x4,x3) plus{AC,#}(x3,plusAC(x4,x5)) -> plus{AC,#}(plusAC(x3,x4),x5) plus{AC,#}(x4,x3) -> plus{AC,#}(x3,x4) times{AC,#}(x3,timesAC(x4,x5)) -> times{AC,#}(timesAC(x3,x4),x5) times{AC,#}(x4,x3) -> times{AC,#}(x3,x4) DPs: plus{AC,#}(zero(x),zero(y)) -> plus{AC,#}(x,y) plus{AC,#}(zero(x),zero(y)) -> zero#(plusAC(x,y)) plus{AC,#}(zero(x),un(y)) -> plus{AC,#}(x,y) plus{AC,#}(zero(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(un(x),j(y)) -> plus{AC,#}(x,y) plus{AC,#}(un(x),j(y)) -> zero#(plusAC(x,y)) plus{AC,#}(un(x),un(y)) -> plus{AC,#}(y,un(0())) plus{AC,#}(un(x),un(y)) -> plus{AC,#}(x,plusAC(y,un(0()))) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(y,j(0())) plus{AC,#}(j(x),j(y)) -> plus{AC,#}(x,plusAC(y,j(0()))) minus#(x,y) -> neg#(y) minus#(x,y) -> plus{AC,#}(x,neg(y)) neg#(zero(x)) -> neg#(x) neg#(zero(x)) -> zero#(neg(x)) neg#(un(x)) -> neg#(x) neg#(j(x)) -> neg#(x) times{AC,#}(x,zero(y)) -> times{AC,#}(x,y) times{AC,#}(x,zero(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(zero(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(zero(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(zero(y),z)) -> times{AC,#}(zero(timesAC(x,y)),z) times{AC,#}(x,un(y)) -> times{AC,#}(x,y) times{AC,#}(x,un(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,un(y)) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x,timesAC(un(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(un(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(un(y),z)) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x,timesAC(un(y),z)) -> times{AC,#}(plusAC(x,zero(timesAC(x,y))),z) times{AC,#}(x,j(y)) -> neg#(x) times{AC,#}(x,j(y)) -> times{AC,#}(x,y) times{AC,#}(x,j(y)) -> zero#(timesAC(x,y)) times{AC,#}(x,j(y)) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x,timesAC(j(y),z)) -> neg#(x) times{AC,#}(x,timesAC(j(y),z)) -> times{AC,#}(x,y) times{AC,#}(x,timesAC(j(y),z)) -> zero#(timesAC(x,y)) times{AC,#}(x,timesAC(j(y),z)) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x,timesAC(j(y),z)) -> times{AC,#}(plusAC(zero(timesAC(x,y)),neg(x)),z) plus{AC,#}(x6,plusAC(x,0())) -> plus{AC,#}(x6,x) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> plus{AC,#}(x,y) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> zero#(plusAC(x,y)) plus{AC,#}(x7,plusAC(zero(x),zero(y))) -> plus{AC,#}(x7,zero(plusAC(x,y))) plus{AC,#}(x8,plusAC(zero(x),un(y))) -> plus{AC,#}(x,y) plus{AC,#}(x8,plusAC(zero(x),un(y))) -> plus{AC,#}(x8,un(plusAC(x,y))) plus{AC,#}(x9,plusAC(zero(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x9,plusAC(zero(x),j(y))) -> plus{AC,#}(x9,j(plusAC(x,y))) plus{AC,#}(x10,plusAC(un(x),j(y))) -> plus{AC,#}(x,y) plus{AC,#}(x10,plusAC(un(x),j(y))) -> zero#(plusAC(x,y)) plus{AC,#}(x10,plusAC(un(x),j(y))) -> plus{AC,#}(x10,zero(plusAC(x,y))) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(y,un(0())) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(x,plusAC(y,un(0()))) plus{AC,#}(x11,plusAC(un(x),un(y))) -> plus{AC,#}(x11,j(plusAC(x,plusAC(y,un(0()))))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(y,j(0())) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x,plusAC(y,j(0()))) plus{AC,#}(x12,plusAC(j(x),j(y))) -> plus{AC,#}(x12,un(plusAC(x,plusAC(y,j(0()))))) times{AC,#}(x13,timesAC(x,0())) -> times{AC,#}(x13,0()) times{AC,#}(x14,timesAC(x,timesAC(0(),z))) -> times{AC,#}(x14,timesAC(0(),z)) times{AC,#}(x15,timesAC(x,zero(y))) -> times{AC,#}(x,y) times{AC,#}(x15,timesAC(x,zero(y))) -> zero#(timesAC(x,y)) times{AC,#}(x15,timesAC(x,zero(y))) -> times{AC,#}(x15,zero(timesAC(x,y))) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(x,y) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(zero(timesAC(x,y)),z) times{AC,#}(x16,timesAC(x,timesAC(zero(y),z))) -> times{AC,#}(x16,timesAC(zero(timesAC(x,y)),z)) times{AC,#}(x17,timesAC(x,un(y))) -> times{AC,#}(x,y) times{AC,#}(x17,timesAC(x,un(y))) -> zero#(timesAC(x,y)) times{AC,#}(x17,timesAC(x,un(y))) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x17,timesAC(x,un(y))) -> times{AC,#}(x17,plusAC(x,zero(timesAC(x,y)))) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(x,y) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> plus{AC,#}(x,zero(timesAC(x,y))) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(plusAC(x,zero(timesAC(x,y))),z) times{AC,#}(x18,timesAC(x,timesAC(un(y),z))) -> times{AC,#}(x18,timesAC(plusAC(x,zero(timesAC(x,y))),z)) times{AC,#}(x19,timesAC(x,j(y))) -> neg#(x) times{AC,#}(x19,timesAC(x,j(y))) -> times{AC,#}(x,y) times{AC,#}(x19,timesAC(x,j(y))) -> zero#(timesAC(x,y)) times{AC,#}(x19,timesAC(x,j(y))) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x19,timesAC(x,j(y))) -> times{AC,#}(x19,plusAC(zero(timesAC(x,y)),neg(x))) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> neg#(x) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(x,y) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> zero#(timesAC(x,y)) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> plus{AC,#}(zero(timesAC(x,y)),neg(x)) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(plusAC(zero(timesAC(x,y)),neg(x)),z) times{AC,#}(x20,timesAC(x,timesAC(j(y),z))) -> times{AC,#}(x20,timesAC(plusAC(zero(timesAC(x,y)),neg(x)),z)) Equations: plusAC(plusAC(x3,x4),x5) -> plusAC(x3,plusAC(x4,x5)) plusAC(x3,x4) -> plusAC(x4,x3) timesAC(timesAC(x3,x4),x5) -> timesAC(x3,timesAC(x4,x5)) timesAC(x3,x4) -> timesAC(x4,x3) plusAC(x3,plusAC(x4,x5)) -> plusAC(plusAC(x3,x4),x5) plusAC(x4,x3) -> plusAC(x3,x4) timesAC(x3,timesAC(x4,x5)) -> timesAC(timesAC(x3,x4),x5) timesAC(x4,x3) -> timesAC(x3,x4) TRS: zero(0()) -> 0() plusAC(x,0()) -> x plusAC(zero(x),zero(y)) -> zero(plusAC(x,y)) plusAC(zero(x),un(y)) -> un(plusAC(x,y)) plusAC(zero(x),j(y)) -> j(plusAC(x,y)) plusAC(un(x),j(y)) -> zero(plusAC(x,y)) plusAC(un(x),un(y)) -> j(plusAC(x,plusAC(y,un(0())))) plusAC(j(x),j(y)) -> un(plusAC(x,plusAC(y,j(0())))) minus(x,y) -> plusAC(x,neg(y)) neg(0()) -> 0() neg(zero(x)) -> zero(neg(x)) neg(un(x)) -> j(neg(x)) neg(j(x)) -> un(neg(x)) timesAC(x,0()) -> 0() timesAC(x,timesAC(0(),z)) -> timesAC(0(),z) timesAC(x,zero(y)) -> zero(timesAC(x,y)) timesAC(x,timesAC(zero(y),z)) -> timesAC(zero(timesAC(x,y)),z) timesAC(x,un(y)) -> plusAC(x,zero(timesAC(x,y))) timesAC(x,timesAC(un(y),z)) -> timesAC(plusAC(x,zero(timesAC(x,y))),z) timesAC(x,j(y)) -> plusAC(zero(timesAC(x,y)),neg(x)) timesAC(x,timesAC(j(y),z)) -> timesAC(plusAC(zero(timesAC(x,y)),neg(x)),z) S: plus{AC,#}(plusAC(x21,x22),x23) -> plus{AC,#}(x21,x22) plus{AC,#}(x21,plusAC(x22,x23)) -> plus{AC,#}(x22,x23) times{AC,#}(timesAC(x21,x22),x23) -> times{AC,#}(x21,x22) times{AC,#}(x21,timesAC(x22,x23)) -> times{AC,#}(x22,x23) Open