Termination Proof

by AProVE (version ba869e7b28377cd372aedcb96abeb62c4ad6aaa5 rene 20130719 unpublished dirty )

Input

The rewrite relation of the following TRS is considered.

Tabs(SRlbeta(x)) → SRlbeta(Tabs(x))
Tabs(SRcp(x)) → SRcp(Tabs(x))
Tabs(SRllet(x)) → SRllet(Tabs(x))
Tabs(SRlapp(x)) → SRlapp(Tabs(x))
Tabs(SRlcase(x)) → SRlcase(Tabs(x))
Tabs(SRlseq(x)) → SRlseq(Tabs(x))
Tabs(SRcase(x)) → SRcase(Tabs(x))
Tabs(SRcase(x)) → SRcase(x)
Tabs(SRcase(x)) → SRcase(Tabs(Tcpx(Tcpx(Txch(Txch(x))))))
Tabs(SRseq(x)) → SRseq(Tabs(x))
Tabs(SRseq(x)) → SRseq(x)
Tabs(Answer) → Answer
SRlll(x) → SRlseq(x)
SRlll(x) → SRlapp(x)
SRlll(x) → SRllet(x)
SRlll(x) → SRlcase(x)
Txch(SRlbeta(x)) → SRlbeta(Txch(x))
Txch(SRcp(x)) → SRcp(Txch(x))
Txch(SRllet(x)) → SRllet(Txch(x))
Txch(SRlapp(x)) → SRlapp(Txch(x))
Txch(SRlcase(x)) → SRlcase(Txch(x))
Txch(SRlseq(x)) → SRlseq(Txch(x))
Txch(SRcase(x)) → SRcase(Txch(x))
Txch(SRcase(x)) → SRcase(x)
Txch(SRseq(x)) → SRseq(Txch(x))
Txch(SRseq(x)) → SRseq(x)
Txch(Answer) → Answer
Tcpx(SRlbeta(x)) → SRlbeta(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(x)
Tcpx(SRllet(x)) → SRllet(Tcpx(x))
Tcpx(SRlapp(x)) → SRlapp(Tcpx(x))
Tcpx(SRlcase(x)) → SRlcase(Tcpx(x))
Tcpx(SRlseq(x)) → SRlseq(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(x)
Tcpx(SRseq(x)) → SRseq(Tcpx(x))
Tcpx(SRseq(x)) → SRseq(x)
Tcpx(Answer) → Answer
Tcpx(SRcp(x)) → SRcp(Tcpx(Tcpx(x)))
The evaluation strategy is innermost.

Proof

1 Rule Removal

Using the linear polynomial interpretation over the naturals
[Tabs(x1)] = 1 · x1
[SRlbeta(x1)] = 1 · x1
[SRcp(x1)] = 1 · x1
[SRllet(x1)] = 1 · x1
[SRlapp(x1)] = 1 · x1
[SRlcase(x1)] = 1 · x1
[SRlseq(x1)] = 1 · x1
[SRcase(x1)] = 1 · x1
[Tcpx(x1)] = 1 · x1
[Txch(x1)] = 1 · x1
[SRseq(x1)] = 1 · x1
[Answer] = 0
[SRlll(x1)] = 1 · x1 + 1
the rules
Tabs(SRlbeta(x)) → SRlbeta(Tabs(x))
Tabs(SRcp(x)) → SRcp(Tabs(x))
Tabs(SRllet(x)) → SRllet(Tabs(x))
Tabs(SRlapp(x)) → SRlapp(Tabs(x))
Tabs(SRlcase(x)) → SRlcase(Tabs(x))
Tabs(SRlseq(x)) → SRlseq(Tabs(x))
Tabs(SRcase(x)) → SRcase(Tabs(x))
Tabs(SRcase(x)) → SRcase(x)
Tabs(SRcase(x)) → SRcase(Tabs(Tcpx(Tcpx(Txch(Txch(x))))))
Tabs(SRseq(x)) → SRseq(Tabs(x))
Tabs(SRseq(x)) → SRseq(x)
Tabs(Answer) → Answer
Txch(SRlbeta(x)) → SRlbeta(Txch(x))
Txch(SRcp(x)) → SRcp(Txch(x))
Txch(SRllet(x)) → SRllet(Txch(x))
Txch(SRlapp(x)) → SRlapp(Txch(x))
Txch(SRlcase(x)) → SRlcase(Txch(x))
Txch(SRlseq(x)) → SRlseq(Txch(x))
Txch(SRcase(x)) → SRcase(Txch(x))
Txch(SRcase(x)) → SRcase(x)
Txch(SRseq(x)) → SRseq(Txch(x))
Txch(SRseq(x)) → SRseq(x)
Txch(Answer) → Answer
Tcpx(SRlbeta(x)) → SRlbeta(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(x)
Tcpx(SRllet(x)) → SRllet(Tcpx(x))
Tcpx(SRlapp(x)) → SRlapp(Tcpx(x))
Tcpx(SRlcase(x)) → SRlcase(Tcpx(x))
Tcpx(SRlseq(x)) → SRlseq(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(x)
Tcpx(SRseq(x)) → SRseq(Tcpx(x))
Tcpx(SRseq(x)) → SRseq(x)
Tcpx(Answer) → Answer
Tcpx(SRcp(x)) → SRcp(Tcpx(Tcpx(x)))
remain.

1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[Tabs(x1)] = 1 · x1 + 1
[SRlbeta(x1)] = 1 · x1
[SRcp(x1)] = 1 · x1
[SRllet(x1)] = 1 · x1
[SRlapp(x1)] = 1 · x1
[SRlcase(x1)] = 1 · x1
[SRlseq(x1)] = 1 · x1
[SRcase(x1)] = 1 · x1
[Tcpx(x1)] = 1 · x1
[Txch(x1)] = 1 · x1
[SRseq(x1)] = 1 · x1
[Answer] = 0
the rules
Tabs(SRlbeta(x)) → SRlbeta(Tabs(x))
Tabs(SRcp(x)) → SRcp(Tabs(x))
Tabs(SRllet(x)) → SRllet(Tabs(x))
Tabs(SRlapp(x)) → SRlapp(Tabs(x))
Tabs(SRlcase(x)) → SRlcase(Tabs(x))
Tabs(SRlseq(x)) → SRlseq(Tabs(x))
Tabs(SRcase(x)) → SRcase(Tabs(x))
Tabs(SRcase(x)) → SRcase(Tabs(Tcpx(Tcpx(Txch(Txch(x))))))
Tabs(SRseq(x)) → SRseq(Tabs(x))
Txch(SRlbeta(x)) → SRlbeta(Txch(x))
Txch(SRcp(x)) → SRcp(Txch(x))
Txch(SRllet(x)) → SRllet(Txch(x))
Txch(SRlapp(x)) → SRlapp(Txch(x))
Txch(SRlcase(x)) → SRlcase(Txch(x))
Txch(SRlseq(x)) → SRlseq(Txch(x))
Txch(SRcase(x)) → SRcase(Txch(x))
Txch(SRcase(x)) → SRcase(x)
Txch(SRseq(x)) → SRseq(Txch(x))
Txch(SRseq(x)) → SRseq(x)
Txch(Answer) → Answer
Tcpx(SRlbeta(x)) → SRlbeta(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(Tcpx(x))
Tcpx(SRcp(x)) → SRcp(x)
Tcpx(SRllet(x)) → SRllet(Tcpx(x))
Tcpx(SRlapp(x)) → SRlapp(Tcpx(x))
Tcpx(SRlcase(x)) → SRlcase(Tcpx(x))
Tcpx(SRlseq(x)) → SRlseq(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(Tcpx(x))
Tcpx(SRcase(x)) → SRcase(x)
Tcpx(SRseq(x)) → SRseq(Tcpx(x))
Tcpx(SRseq(x)) → SRseq(x)
Tcpx(Answer) → Answer
Tcpx(SRcp(x)) → SRcp(Tcpx(Tcpx(x)))
remain.

1.1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
Tabs#(SRlbeta(x)) → Tabs#(x)
Tabs#(SRcp(x)) → Tabs#(x)
Tabs#(SRllet(x)) → Tabs#(x)
Tabs#(SRlapp(x)) → Tabs#(x)
Tabs#(SRlcase(x)) → Tabs#(x)
Tabs#(SRlseq(x)) → Tabs#(x)
Tabs#(SRcase(x)) → Tabs#(x)
Tabs#(SRcase(x)) → Tabs#(Tcpx(Tcpx(Txch(Txch(x)))))
Tabs#(SRcase(x)) → Tcpx#(Tcpx(Txch(Txch(x))))
Tabs#(SRcase(x)) → Tcpx#(Txch(Txch(x)))
Tabs#(SRcase(x)) → Txch#(Txch(x))
Tabs#(SRcase(x)) → Txch#(x)
Tabs#(SRseq(x)) → Tabs#(x)
Txch#(SRlbeta(x)) → Txch#(x)
Txch#(SRcp(x)) → Txch#(x)
Txch#(SRllet(x)) → Txch#(x)
Txch#(SRlapp(x)) → Txch#(x)
Txch#(SRlcase(x)) → Txch#(x)
Txch#(SRlseq(x)) → Txch#(x)
Txch#(SRcase(x)) → Txch#(x)
Txch#(SRseq(x)) → Txch#(x)
Tcpx#(SRlbeta(x)) → Tcpx#(x)
Tcpx#(SRcp(x)) → Tcpx#(x)
Tcpx#(SRllet(x)) → Tcpx#(x)
Tcpx#(SRlapp(x)) → Tcpx#(x)
Tcpx#(SRlcase(x)) → Tcpx#(x)
Tcpx#(SRlseq(x)) → Tcpx#(x)
Tcpx#(SRcase(x)) → Tcpx#(x)
Tcpx#(SRseq(x)) → Tcpx#(x)
Tcpx#(SRcp(x)) → Tcpx#(Tcpx(x))

1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 3 components.