Termination Proof

by AProVE (version ba869e7b28377cd372aedcb96abeb62c4ad6aaa5 rene 20130719 unpublished dirty )

Input

The rewrite relation of the following TRS is considered.

Tllet(SRlbeta(x)) → SRlbeta(Tllet(x))
Tllet(SRlbeta(x)) → SRllet(SRlbeta(x))
Tllet(SRcp(x)) → SRcp(Tllet(x))
Tllet(SRcp(x)) → SRllet(SRcp(x))
Tllet(SRllet(x)) → SRllet(Tllet(x))
Tllet(SRllet(x)) → SRllet(SRllet(x))
Tllet(SRlapp(x)) → SRlapp(Tllet(x))
Tllet(SRlapp(x)) → SRlapp(Tlapp(Tllet(x)))
Tllet(SRlapp(x)) → SRlapp(SRlapp(SRllet(x)))
Tllet(SRlapp(x)) → SRllet(SRlapp(x))
Tllet(Answer) → Answer
Tllet(Answer) → SRllet(Answer)
SRlll(x) → SRlapp(x)
SRlll(x) → SRllet(x)
Tlapp(SRlbeta(x)) → SRlbeta(Tlapp(x))
Tlapp(SRlbeta(x)) → SRlapp(SRlbeta(x))
Tlapp(SRcp(x)) → SRcp(Tlapp(x))
Tlapp(SRcp(x)) → SRlapp(SRcp(x))
Tlapp(SRllet(x)) → SRllet(Tlapp(x))
Tlapp(SRllet(x)) → SRlapp(SRllet(x))
Tlapp(SRlapp(x)) → SRlapp(Tlapp(x))
Tlapp(SRlapp(x)) → SRlapp(SRlapp(x))
Tlapp(Answer) → Answer
The evaluation strategy is innermost.

Proof

1 Rule Removal

Using the linear polynomial interpretation over the naturals
[Tllet(x1)] = 1 · x1 + 1
[SRlbeta(x1)] = 1 · x1
[SRllet(x1)] = 1 · x1 + 1
[SRcp(x1)] = 1 · x1
[SRlapp(x1)] = 1 · x1
[Tlapp(x1)] = 1 · x1
[Answer] = 0
[SRlll(x1)] = 1 · x1 + 2
the rules
Tllet(SRlbeta(x)) → SRlbeta(Tllet(x))
Tllet(SRlbeta(x)) → SRllet(SRlbeta(x))
Tllet(SRcp(x)) → SRcp(Tllet(x))
Tllet(SRcp(x)) → SRllet(SRcp(x))
Tllet(SRllet(x)) → SRllet(Tllet(x))
Tllet(SRllet(x)) → SRllet(SRllet(x))
Tllet(SRlapp(x)) → SRlapp(Tllet(x))
Tllet(SRlapp(x)) → SRlapp(Tlapp(Tllet(x)))
Tllet(SRlapp(x)) → SRlapp(SRlapp(SRllet(x)))
Tllet(SRlapp(x)) → SRllet(SRlapp(x))
Tllet(Answer) → SRllet(Answer)
Tlapp(SRlbeta(x)) → SRlbeta(Tlapp(x))
Tlapp(SRlbeta(x)) → SRlapp(SRlbeta(x))
Tlapp(SRcp(x)) → SRcp(Tlapp(x))
Tlapp(SRcp(x)) → SRlapp(SRcp(x))
Tlapp(SRllet(x)) → SRllet(Tlapp(x))
Tlapp(SRllet(x)) → SRlapp(SRllet(x))
Tlapp(SRlapp(x)) → SRlapp(Tlapp(x))
Tlapp(SRlapp(x)) → SRlapp(SRlapp(x))
Tlapp(Answer) → Answer
remain.

1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[Tllet(x1)] = 1 · x1 + 1
[SRlbeta(x1)] = 1 · x1
[SRllet(x1)] = 1 · x1
[SRcp(x1)] = 1 · x1
[SRlapp(x1)] = 1 · x1
[Tlapp(x1)] = 1 · x1
[Answer] = 0
the rules
Tllet(SRlbeta(x)) → SRlbeta(Tllet(x))
Tllet(SRcp(x)) → SRcp(Tllet(x))
Tllet(SRllet(x)) → SRllet(Tllet(x))
Tllet(SRlapp(x)) → SRlapp(Tllet(x))
Tllet(SRlapp(x)) → SRlapp(Tlapp(Tllet(x)))
Tlapp(SRlbeta(x)) → SRlbeta(Tlapp(x))
Tlapp(SRlbeta(x)) → SRlapp(SRlbeta(x))
Tlapp(SRcp(x)) → SRcp(Tlapp(x))
Tlapp(SRcp(x)) → SRlapp(SRcp(x))
Tlapp(SRllet(x)) → SRllet(Tlapp(x))
Tlapp(SRllet(x)) → SRlapp(SRllet(x))
Tlapp(SRlapp(x)) → SRlapp(Tlapp(x))
Tlapp(SRlapp(x)) → SRlapp(SRlapp(x))
Tlapp(Answer) → Answer
remain.

1.1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
Tllet#(SRlbeta(x)) → Tllet#(x)
Tllet#(SRcp(x)) → Tllet#(x)
Tllet#(SRllet(x)) → Tllet#(x)
Tllet#(SRlapp(x)) → Tllet#(x)
Tllet#(SRlapp(x)) → Tlapp#(Tllet(x))
Tlapp#(SRlbeta(x)) → Tlapp#(x)
Tlapp#(SRcp(x)) → Tlapp#(x)
Tlapp#(SRllet(x)) → Tlapp#(x)
Tlapp#(SRlapp(x)) → Tlapp#(x)

1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 2 components.