MAYBE
by ttt2 (version ttt2 1.15)
The rewrite relation of the following TRS is considered.
| begin(end(x0)) | → | rewrite(end(x0)) |
| begin(a(x0)) | → | rotate(cut(Ca(guess(x0)))) |
| begin(b(x0)) | → | rotate(cut(Cb(guess(x0)))) |
| begin(C(x0)) | → | rotate(cut(CC(guess(x0)))) |
| begin(c(x0)) | → | rotate(cut(Cc(guess(x0)))) |
| begin(A(x0)) | → | rotate(cut(CA(guess(x0)))) |
| begin(B(x0)) | → | rotate(cut(CB(guess(x0)))) |
| guess(a(x0)) | → | Ca(guess(x0)) |
| guess(b(x0)) | → | Cb(guess(x0)) |
| guess(C(x0)) | → | CC(guess(x0)) |
| guess(c(x0)) | → | Cc(guess(x0)) |
| guess(A(x0)) | → | CA(guess(x0)) |
| guess(B(x0)) | → | CB(guess(x0)) |
| guess(a(x0)) | → | moveleft(Ba(wait(x0))) |
| guess(b(x0)) | → | moveleft(Bb(wait(x0))) |
| guess(C(x0)) | → | moveleft(BC(wait(x0))) |
| guess(c(x0)) | → | moveleft(Bc(wait(x0))) |
| guess(A(x0)) | → | moveleft(BA(wait(x0))) |
| guess(B(x0)) | → | moveleft(BB(wait(x0))) |
| guess(end(x0)) | → | finish(end(x0)) |
| Ca(moveleft(Ba(x0))) | → | moveleft(Ba(Aa(x0))) |
| Cb(moveleft(Ba(x0))) | → | moveleft(Ba(Ab(x0))) |
| CC(moveleft(Ba(x0))) | → | moveleft(Ba(AC(x0))) |
| Cc(moveleft(Ba(x0))) | → | moveleft(Ba(Ac(x0))) |
| CA(moveleft(Ba(x0))) | → | moveleft(Ba(AA(x0))) |
| CB(moveleft(Ba(x0))) | → | moveleft(Ba(AB(x0))) |
| Ca(moveleft(Bb(x0))) | → | moveleft(Bb(Aa(x0))) |
| Cb(moveleft(Bb(x0))) | → | moveleft(Bb(Ab(x0))) |
| CC(moveleft(Bb(x0))) | → | moveleft(Bb(AC(x0))) |
| Cc(moveleft(Bb(x0))) | → | moveleft(Bb(Ac(x0))) |
| CA(moveleft(Bb(x0))) | → | moveleft(Bb(AA(x0))) |
| CB(moveleft(Bb(x0))) | → | moveleft(Bb(AB(x0))) |
| Ca(moveleft(BC(x0))) | → | moveleft(BC(Aa(x0))) |
| Cb(moveleft(BC(x0))) | → | moveleft(BC(Ab(x0))) |
| CC(moveleft(BC(x0))) | → | moveleft(BC(AC(x0))) |
| Cc(moveleft(BC(x0))) | → | moveleft(BC(Ac(x0))) |
| CA(moveleft(BC(x0))) | → | moveleft(BC(AA(x0))) |
| CB(moveleft(BC(x0))) | → | moveleft(BC(AB(x0))) |
| Ca(moveleft(Bc(x0))) | → | moveleft(Bc(Aa(x0))) |
| Cb(moveleft(Bc(x0))) | → | moveleft(Bc(Ab(x0))) |
| CC(moveleft(Bc(x0))) | → | moveleft(Bc(AC(x0))) |
| Cc(moveleft(Bc(x0))) | → | moveleft(Bc(Ac(x0))) |
| CA(moveleft(Bc(x0))) | → | moveleft(Bc(AA(x0))) |
| CB(moveleft(Bc(x0))) | → | moveleft(Bc(AB(x0))) |
| Ca(moveleft(BA(x0))) | → | moveleft(BA(Aa(x0))) |
| Cb(moveleft(BA(x0))) | → | moveleft(BA(Ab(x0))) |
| CC(moveleft(BA(x0))) | → | moveleft(BA(AC(x0))) |
| Cc(moveleft(BA(x0))) | → | moveleft(BA(Ac(x0))) |
| CA(moveleft(BA(x0))) | → | moveleft(BA(AA(x0))) |
| CB(moveleft(BA(x0))) | → | moveleft(BA(AB(x0))) |
| Ca(moveleft(BB(x0))) | → | moveleft(BB(Aa(x0))) |
| Cb(moveleft(BB(x0))) | → | moveleft(BB(Ab(x0))) |
| CC(moveleft(BB(x0))) | → | moveleft(BB(AC(x0))) |
| Cc(moveleft(BB(x0))) | → | moveleft(BB(Ac(x0))) |
| CA(moveleft(BB(x0))) | → | moveleft(BB(AA(x0))) |
| CB(moveleft(BB(x0))) | → | moveleft(BB(AB(x0))) |
| cut(moveleft(Ba(x0))) | → | Da(cut(goright(x0))) |
| cut(moveleft(Bb(x0))) | → | Db(cut(goright(x0))) |
| cut(moveleft(BC(x0))) | → | DC(cut(goright(x0))) |
| cut(moveleft(Bc(x0))) | → | Dc(cut(goright(x0))) |
| cut(moveleft(BA(x0))) | → | DA(cut(goright(x0))) |
| cut(moveleft(BB(x0))) | → | DB(cut(goright(x0))) |
| goright(Aa(x0)) | → | Ca(goright(x0)) |
| goright(Ab(x0)) | → | Cb(goright(x0)) |
| goright(AC(x0)) | → | CC(goright(x0)) |
| goright(Ac(x0)) | → | Cc(goright(x0)) |
| goright(AA(x0)) | → | CA(goright(x0)) |
| goright(AB(x0)) | → | CB(goright(x0)) |
| goright(wait(a(x0))) | → | moveleft(Ba(wait(x0))) |
| goright(wait(b(x0))) | → | moveleft(Bb(wait(x0))) |
| goright(wait(C(x0))) | → | moveleft(BC(wait(x0))) |
| goright(wait(c(x0))) | → | moveleft(Bc(wait(x0))) |
| goright(wait(A(x0))) | → | moveleft(BA(wait(x0))) |
| goright(wait(B(x0))) | → | moveleft(BB(wait(x0))) |
| goright(wait(end(x0))) | → | finish(end(x0)) |
| Ca(finish(x0)) | → | finish(a(x0)) |
| Cb(finish(x0)) | → | finish(b(x0)) |
| CC(finish(x0)) | → | finish(C(x0)) |
| Cc(finish(x0)) | → | finish(c(x0)) |
| CA(finish(x0)) | → | finish(A(x0)) |
| CB(finish(x0)) | → | finish(B(x0)) |
| cut(finish(x0)) | → | finish2(x0) |
| Da(finish2(x0)) | → | finish2(a(x0)) |
| Db(finish2(x0)) | → | finish2(b(x0)) |
| DC(finish2(x0)) | → | finish2(C(x0)) |
| Dc(finish2(x0)) | → | finish2(c(x0)) |
| DA(finish2(x0)) | → | finish2(A(x0)) |
| DB(finish2(x0)) | → | finish2(B(x0)) |
| rotate(finish2(x0)) | → | rewrite(x0) |
| rewrite(a(a(b(b(x0))))) | → | begin(C(C(x0))) |
| rewrite(b(b(c(c(x0))))) | → | begin(A(A(x0))) |
| rewrite(c(c(a(a(x0))))) | → | begin(B(B(x0))) |
| rewrite(A(A(C(C(x0))))) | → | begin(b(b(x0))) |
| rewrite(C(C(B(B(x0))))) | → | begin(a(a(x0))) |
| rewrite(B(B(A(A(x0))))) | → | begin(c(c(x0))) |
| rewrite(a(a(a(a(a(a(a(a(a(a(x0))))))))))) | → | begin(A(A(A(A(A(A(x0))))))) |
| rewrite(A(A(A(A(A(A(A(A(x0))))))))) | → | begin(a(a(a(a(a(a(a(a(x0))))))))) |
| rewrite(b(b(b(b(b(b(b(b(b(b(x0))))))))))) | → | begin(B(B(B(B(B(B(x0))))))) |
| rewrite(B(B(B(B(B(B(B(B(x0))))))))) | → | begin(b(b(b(b(b(b(b(b(x0))))))))) |
| rewrite(c(c(c(c(c(c(c(c(c(c(x0))))))))))) | → | begin(C(C(C(C(C(C(x0))))))) |
| rewrite(C(C(C(C(C(C(C(C(x0))))))))) | → | begin(c(c(c(c(c(c(c(c(x0))))))))) |
| rewrite(B(B(a(a(a(a(a(a(a(a(x0))))))))))) | → | begin(c(c(A(A(A(A(A(A(x0))))))))) |
| rewrite(A(A(A(A(A(A(b(b(x0))))))))) | → | begin(a(a(a(a(a(a(a(a(C(C(x0))))))))))) |
| rewrite(C(C(b(b(b(b(b(b(b(b(x0))))))))))) | → | begin(a(a(B(B(B(B(B(B(x0))))))))) |
| rewrite(B(B(B(B(B(B(c(c(x0))))))))) | → | begin(b(b(b(b(b(b(b(b(A(A(x0))))))))))) |
| rewrite(A(A(c(c(c(c(c(c(c(c(x0))))))))))) | → | begin(b(b(C(C(C(C(C(C(x0))))))))) |
| rewrite(C(C(C(C(C(C(a(a(x0))))))))) | → | begin(c(c(c(c(c(c(c(c(B(B(x0))))))))))) |
| rewrite(a(a(A(A(x0))))) | → | begin(x0) |
| rewrite(A(A(a(a(x0))))) | → | begin(x0) |
| rewrite(b(b(B(B(x0))))) | → | begin(x0) |
| rewrite(B(B(b(b(x0))))) | → | begin(x0) |
| rewrite(c(c(C(C(x0))))) | → | begin(x0) |
| rewrite(C(C(c(c(x0))))) | → | begin(x0) |
| begin(end(x0)) | → | rewrite(end(x0)) |
| begin(a(x0)) | → | rotate(cut(Ca(guess(x0)))) |
| begin(b(x0)) | → | rotate(cut(Cb(guess(x0)))) |
| begin(C(x0)) | → | rotate(cut(CC(guess(x0)))) |
| begin(c(x0)) | → | rotate(cut(Cc(guess(x0)))) |
| begin(A(x0)) | → | rotate(cut(CA(guess(x0)))) |
| begin(B(x0)) | → | rotate(cut(CB(guess(x0)))) |
| guess(a(x0)) | → | Ca(guess(x0)) |
| guess(b(x0)) | → | Cb(guess(x0)) |
| guess(C(x0)) | → | CC(guess(x0)) |
| guess(c(x0)) | → | Cc(guess(x0)) |
| guess(A(x0)) | → | CA(guess(x0)) |
| guess(B(x0)) | → | CB(guess(x0)) |
| guess(a(x0)) | → | moveleft(Ba(wait(x0))) |
| guess(b(x0)) | → | moveleft(Bb(wait(x0))) |
| guess(C(x0)) | → | moveleft(BC(wait(x0))) |
| guess(c(x0)) | → | moveleft(Bc(wait(x0))) |
| guess(A(x0)) | → | moveleft(BA(wait(x0))) |
| guess(B(x0)) | → | moveleft(BB(wait(x0))) |
| guess(end(x0)) | → | finish(end(x0)) |
| Ca(moveleft(Ba(x0))) | → | moveleft(Ba(Aa(x0))) |
| Cb(moveleft(Ba(x0))) | → | moveleft(Ba(Ab(x0))) |
| CC(moveleft(Ba(x0))) | → | moveleft(Ba(AC(x0))) |
| Cc(moveleft(Ba(x0))) | → | moveleft(Ba(Ac(x0))) |
| CA(moveleft(Ba(x0))) | → | moveleft(Ba(AA(x0))) |
| CB(moveleft(Ba(x0))) | → | moveleft(Ba(AB(x0))) |
| Ca(moveleft(Bb(x0))) | → | moveleft(Bb(Aa(x0))) |
| Cb(moveleft(Bb(x0))) | → | moveleft(Bb(Ab(x0))) |
| CC(moveleft(Bb(x0))) | → | moveleft(Bb(AC(x0))) |
| Cc(moveleft(Bb(x0))) | → | moveleft(Bb(Ac(x0))) |
| CA(moveleft(Bb(x0))) | → | moveleft(Bb(AA(x0))) |
| CB(moveleft(Bb(x0))) | → | moveleft(Bb(AB(x0))) |
| Ca(moveleft(BC(x0))) | → | moveleft(BC(Aa(x0))) |
| Cb(moveleft(BC(x0))) | → | moveleft(BC(Ab(x0))) |
| CC(moveleft(BC(x0))) | → | moveleft(BC(AC(x0))) |
| Cc(moveleft(BC(x0))) | → | moveleft(BC(Ac(x0))) |
| CA(moveleft(BC(x0))) | → | moveleft(BC(AA(x0))) |
| CB(moveleft(BC(x0))) | → | moveleft(BC(AB(x0))) |
| Ca(moveleft(Bc(x0))) | → | moveleft(Bc(Aa(x0))) |
| Cb(moveleft(Bc(x0))) | → | moveleft(Bc(Ab(x0))) |
| CC(moveleft(Bc(x0))) | → | moveleft(Bc(AC(x0))) |
| Cc(moveleft(Bc(x0))) | → | moveleft(Bc(Ac(x0))) |
| CA(moveleft(Bc(x0))) | → | moveleft(Bc(AA(x0))) |
| CB(moveleft(Bc(x0))) | → | moveleft(Bc(AB(x0))) |
| Ca(moveleft(BA(x0))) | → | moveleft(BA(Aa(x0))) |
| Cb(moveleft(BA(x0))) | → | moveleft(BA(Ab(x0))) |
| CC(moveleft(BA(x0))) | → | moveleft(BA(AC(x0))) |
| Cc(moveleft(BA(x0))) | → | moveleft(BA(Ac(x0))) |
| CA(moveleft(BA(x0))) | → | moveleft(BA(AA(x0))) |
| CB(moveleft(BA(x0))) | → | moveleft(BA(AB(x0))) |
| Ca(moveleft(BB(x0))) | → | moveleft(BB(Aa(x0))) |
| Cb(moveleft(BB(x0))) | → | moveleft(BB(Ab(x0))) |
| CC(moveleft(BB(x0))) | → | moveleft(BB(AC(x0))) |
| Cc(moveleft(BB(x0))) | → | moveleft(BB(Ac(x0))) |
| CA(moveleft(BB(x0))) | → | moveleft(BB(AA(x0))) |
| CB(moveleft(BB(x0))) | → | moveleft(BB(AB(x0))) |
| cut(moveleft(Ba(x0))) | → | Da(cut(goright(x0))) |
| cut(moveleft(Bb(x0))) | → | Db(cut(goright(x0))) |
| cut(moveleft(BC(x0))) | → | DC(cut(goright(x0))) |
| cut(moveleft(Bc(x0))) | → | Dc(cut(goright(x0))) |
| cut(moveleft(BA(x0))) | → | DA(cut(goright(x0))) |
| cut(moveleft(BB(x0))) | → | DB(cut(goright(x0))) |
| goright(Aa(x0)) | → | Ca(goright(x0)) |
| goright(Ab(x0)) | → | Cb(goright(x0)) |
| goright(AC(x0)) | → | CC(goright(x0)) |
| goright(Ac(x0)) | → | Cc(goright(x0)) |
| goright(AA(x0)) | → | CA(goright(x0)) |
| goright(AB(x0)) | → | CB(goright(x0)) |
| goright(wait(a(x0))) | → | moveleft(Ba(wait(x0))) |
| goright(wait(b(x0))) | → | moveleft(Bb(wait(x0))) |
| goright(wait(C(x0))) | → | moveleft(BC(wait(x0))) |
| goright(wait(c(x0))) | → | moveleft(Bc(wait(x0))) |
| goright(wait(A(x0))) | → | moveleft(BA(wait(x0))) |
| goright(wait(B(x0))) | → | moveleft(BB(wait(x0))) |
| goright(wait(end(x0))) | → | finish(end(x0)) |
| Ca(finish(x0)) | → | finish(a(x0)) |
| Cb(finish(x0)) | → | finish(b(x0)) |
| CC(finish(x0)) | → | finish(C(x0)) |
| Cc(finish(x0)) | → | finish(c(x0)) |
| CA(finish(x0)) | → | finish(A(x0)) |
| CB(finish(x0)) | → | finish(B(x0)) |
| cut(finish(x0)) | → | finish2(x0) |
| Da(finish2(x0)) | → | finish2(a(x0)) |
| Db(finish2(x0)) | → | finish2(b(x0)) |
| DC(finish2(x0)) | → | finish2(C(x0)) |
| Dc(finish2(x0)) | → | finish2(c(x0)) |
| DA(finish2(x0)) | → | finish2(A(x0)) |
| DB(finish2(x0)) | → | finish2(B(x0)) |
| rotate(finish2(x0)) | → | rewrite(x0) |
| rewrite(a(a(b(b(x0))))) | → | begin(C(C(x0))) |
| rewrite(b(b(c(c(x0))))) | → | begin(A(A(x0))) |
| rewrite(c(c(a(a(x0))))) | → | begin(B(B(x0))) |
| rewrite(A(A(C(C(x0))))) | → | begin(b(b(x0))) |
| rewrite(C(C(B(B(x0))))) | → | begin(a(a(x0))) |
| rewrite(B(B(A(A(x0))))) | → | begin(c(c(x0))) |
| rewrite(a(a(a(a(a(a(a(a(a(a(x0))))))))))) | → | begin(A(A(A(A(A(A(x0))))))) |
| rewrite(A(A(A(A(A(A(A(A(x0))))))))) | → | begin(a(a(a(a(a(a(a(a(x0))))))))) |
| rewrite(b(b(b(b(b(b(b(b(b(b(x0))))))))))) | → | begin(B(B(B(B(B(B(x0))))))) |
| rewrite(B(B(B(B(B(B(B(B(x0))))))))) | → | begin(b(b(b(b(b(b(b(b(x0))))))))) |
| rewrite(c(c(c(c(c(c(c(c(c(c(x0))))))))))) | → | begin(C(C(C(C(C(C(x0))))))) |
| rewrite(C(C(C(C(C(C(C(C(x0))))))))) | → | begin(c(c(c(c(c(c(c(c(x0))))))))) |
| rewrite(B(B(a(a(a(a(a(a(a(a(x0))))))))))) | → | begin(c(c(A(A(A(A(A(A(x0))))))))) |
| rewrite(A(A(A(A(A(A(b(b(x0))))))))) | → | begin(a(a(a(a(a(a(a(a(C(C(x0))))))))))) |
| rewrite(C(C(b(b(b(b(b(b(b(b(x0))))))))))) | → | begin(a(a(B(B(B(B(B(B(x0))))))))) |
| rewrite(B(B(B(B(B(B(c(c(x0))))))))) | → | begin(b(b(b(b(b(b(b(b(A(A(x0))))))))))) |
| rewrite(A(A(c(c(c(c(c(c(c(c(x0))))))))))) | → | begin(b(b(C(C(C(C(C(C(x0))))))))) |
| rewrite(C(C(C(C(C(C(a(a(x0))))))))) | → | begin(c(c(c(c(c(c(c(c(B(B(x0))))))))))) |
| rewrite(a(a(A(A(x0))))) | → | begin(x0) |
| rewrite(A(A(a(a(x0))))) | → | begin(x0) |
| rewrite(b(b(B(B(x0))))) | → | begin(x0) |
| rewrite(B(B(b(b(x0))))) | → | begin(x0) |
| rewrite(c(c(C(C(x0))))) | → | begin(x0) |
| rewrite(C(C(c(c(x0))))) | → | begin(x0) |