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)))) |
guess(a(x0)) | → | Ca(guess(x0)) |
guess(b(x0)) | → | Cb(guess(x0)) |
guess(c(x0)) | → | Cc(guess(x0)) |
guess(a(x0)) | → | moveleft(Ba(wait(x0))) |
guess(b(x0)) | → | moveleft(Bb(wait(x0))) |
guess(c(x0)) | → | moveleft(Bc(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))) |
Ca(moveleft(Bb(x0))) | → | moveleft(Bb(Aa(x0))) |
Cb(moveleft(Bb(x0))) | → | moveleft(Bb(Ab(x0))) |
Cc(moveleft(Bb(x0))) | → | moveleft(Bb(Ac(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))) |
cut(moveleft(Ba(x0))) | → | Da(cut(goright(x0))) |
cut(moveleft(Bb(x0))) | → | Db(cut(goright(x0))) |
cut(moveleft(Bc(x0))) | → | Dc(cut(goright(x0))) |
goright(Aa(x0)) | → | Ca(goright(x0)) |
goright(Ab(x0)) | → | Cb(goright(x0)) |
goright(Ac(x0)) | → | Cc(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(end(x0))) | → | finish(end(x0)) |
Ca(finish(x0)) | → | finish(a(x0)) |
Cb(finish(x0)) | → | finish(b(x0)) |
Cc(finish(x0)) | → | finish(c(x0)) |
cut(finish(x0)) | → | finish2(x0) |
Da(finish2(x0)) | → | finish2(a(x0)) |
Db(finish2(x0)) | → | finish2(b(x0)) |
Dc(finish2(x0)) | → | finish2(c(x0)) |
rotate(finish2(x0)) | → | rewrite(x0) |
rewrite(a(x0)) | → | begin(x0) |
rewrite(a(a(b(x0)))) | → | begin(b(b(c(a(a(a(x0))))))) |
rewrite(a(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)))) |
guess(a(x0)) | → | Ca(guess(x0)) |
guess(b(x0)) | → | Cb(guess(x0)) |
guess(c(x0)) | → | Cc(guess(x0)) |
guess(a(x0)) | → | moveleft(Ba(wait(x0))) |
guess(b(x0)) | → | moveleft(Bb(wait(x0))) |
guess(c(x0)) | → | moveleft(Bc(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))) |
Ca(moveleft(Bb(x0))) | → | moveleft(Bb(Aa(x0))) |
Cb(moveleft(Bb(x0))) | → | moveleft(Bb(Ab(x0))) |
Cc(moveleft(Bb(x0))) | → | moveleft(Bb(Ac(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))) |
cut(moveleft(Ba(x0))) | → | Da(cut(goright(x0))) |
cut(moveleft(Bb(x0))) | → | Db(cut(goright(x0))) |
cut(moveleft(Bc(x0))) | → | Dc(cut(goright(x0))) |
goright(Aa(x0)) | → | Ca(goright(x0)) |
goright(Ab(x0)) | → | Cb(goright(x0)) |
goright(Ac(x0)) | → | Cc(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(end(x0))) | → | finish(end(x0)) |
Ca(finish(x0)) | → | finish(a(x0)) |
Cb(finish(x0)) | → | finish(b(x0)) |
Cc(finish(x0)) | → | finish(c(x0)) |
cut(finish(x0)) | → | finish2(x0) |
Da(finish2(x0)) | → | finish2(a(x0)) |
Db(finish2(x0)) | → | finish2(b(x0)) |
Dc(finish2(x0)) | → | finish2(c(x0)) |
rotate(finish2(x0)) | → | rewrite(x0) |
rewrite(a(x0)) | → | begin(x0) |
rewrite(a(a(b(x0)))) | → | begin(b(b(c(a(a(a(x0))))))) |
rewrite(a(c(x0))) | → | begin(x0) |