NO Termination w.r.t. Q proof of /home/cern_httpd/provide/research/cycsrs/tpdb/TPDB-d9b80194f163/SRS_Standard/Zantema_04/z017-rotate.srs

(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

begin(end(x)) → rewrite(end(x))
begin(a(x)) → rotate(cut(Ca(guess(x))))
begin(b(x)) → rotate(cut(Cb(guess(x))))
begin(c(x)) → rotate(cut(Cc(guess(x))))
guess(a(x)) → Ca(guess(x))
guess(b(x)) → Cb(guess(x))
guess(c(x)) → Cc(guess(x))
guess(a(x)) → moveleft(Ba(wait(x)))
guess(b(x)) → moveleft(Bb(wait(x)))
guess(c(x)) → moveleft(Bc(wait(x)))
guess(end(x)) → finish(end(x))
Ca(moveleft(Ba(x))) → moveleft(Ba(Aa(x)))
Cb(moveleft(Ba(x))) → moveleft(Ba(Ab(x)))
Cc(moveleft(Ba(x))) → moveleft(Ba(Ac(x)))
Ca(moveleft(Bb(x))) → moveleft(Bb(Aa(x)))
Cb(moveleft(Bb(x))) → moveleft(Bb(Ab(x)))
Cc(moveleft(Bb(x))) → moveleft(Bb(Ac(x)))
Ca(moveleft(Bc(x))) → moveleft(Bc(Aa(x)))
Cb(moveleft(Bc(x))) → moveleft(Bc(Ab(x)))
Cc(moveleft(Bc(x))) → moveleft(Bc(Ac(x)))
cut(moveleft(Ba(x))) → Da(cut(goright(x)))
cut(moveleft(Bb(x))) → Db(cut(goright(x)))
cut(moveleft(Bc(x))) → Dc(cut(goright(x)))
goright(Aa(x)) → Ca(goright(x))
goright(Ab(x)) → Cb(goright(x))
goright(Ac(x)) → Cc(goright(x))
goright(wait(a(x))) → moveleft(Ba(wait(x)))
goright(wait(b(x))) → moveleft(Bb(wait(x)))
goright(wait(c(x))) → moveleft(Bc(wait(x)))
goright(wait(end(x))) → finish(end(x))
Ca(finish(x)) → finish(a(x))
Cb(finish(x)) → finish(b(x))
Cc(finish(x)) → finish(c(x))
cut(finish(x)) → finish2(x)
Da(finish2(x)) → finish2(a(x))
Db(finish2(x)) → finish2(b(x))
Dc(finish2(x)) → finish2(c(x))
rotate(finish2(x)) → rewrite(x)
rewrite(a(b(x))) → begin(b(a(a(x))))
rewrite(b(c(x))) → begin(c(b(x)))
rewrite(a(a(x))) → begin(a(c(a(x))))

Q is empty.

(1) NonTerminationProof (COMPLETE transformation)

We used the non-termination processor [OPPELT08] to show that the SRS problem is infinite.

Found the self-embedding DerivationStructure:
rewrite b c endrewrite b c end

rewrite b c endrewrite b c end
by OverlapClosure OC 3
rewrite b c endrotate finish2 b c end
by OverlapClosure OC 3
rewrite b c endrotate Db finish2 c end
by OverlapClosure OC 3
rewrite b c endrotate Db cut finish c end
by OverlapClosure OC 3
rewrite b c endrotate Db cut Cc finish end
by OverlapClosure OC 2
rewrite b crotate Db cut Cc goright wait
by OverlapClosure OC 3
rewrite b crotate Db cut goright Ac wait
by OverlapClosure OC 3
rewrite b crotate cut moveleft Bb Ac wait
by OverlapClosure OC 3
rewrite b crotate cut Cc moveleft Bb wait
by OverlapClosure OC 2
rewrite b crotate cut Cc guess b
by OverlapClosure OC 3
rewrite b cbegin c b
by original rule (OC 1)
begin crotate cut Cc guess
by original rule (OC 1)
guess bmoveleft Bb wait
by original rule (OC 1)
Cc moveleft Bbmoveleft Bb Ac
by original rule (OC 1)
cut moveleft BbDb cut goright
by original rule (OC 1)
goright AcCc goright
by original rule (OC 1)
goright wait endfinish end
by original rule (OC 1)
Cc finishfinish c
by original rule (OC 1)
cut finishfinish2
by original rule (OC 1)
Db finish2finish2 b
by original rule (OC 1)
rotate finish2rewrite
by original rule (OC 1)

(2) NO