YES
eq(0, 0) → true
eq(s(X), s(Y)) → eq(X, Y)
eq(X, Y) → false
inf(X) → cons(X, inf(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(Y, take(X, L))
length(nil) → 0
length(cons(X, L)) → s(length(L))
eq: empty set
0: empty set
true: empty set
s: empty set
false: empty set
inf: {1}
cons: empty set
take: {1, 2}
nil: empty set
length: {1}
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
eq(0, 0) → true
eq(s(X), s(Y)) → eq(X, Y)
eq(X, Y) → false
inf(X) → cons(X, inf(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(Y, take(X, L))
length(nil) → 0
length(cons(X, L)) → s(length(L))
eq: empty set
0: empty set
true: empty set
s: empty set
false: empty set
inf: {1}
cons: empty set
take: {1, 2}
nil: empty set
length: {1}
We applied the Lucas [26] to transform the context-sensitive TRS to an usual TRS.
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
eq → true
eq → eq
eq → false
inf(X) → cons
take(0, X) → nil
take(s, cons) → cons
length(nil) → 0
length(cons) → s
eq → true
eq → eq
eq → false
inf(X) → cons
take(0, X) → nil
take(s, cons) → cons
length(nil) → 0
length(cons) → s
Used ordering:
eq → true
eq → false
take(s, cons) → cons
length(nil) → 0
length(cons) → s
POL(0) = 0
POL(cons) = 2
POL(eq) = 2
POL(false) = 0
POL(inf(x1)) = 2 + x1
POL(length(x1)) = 2 + 2·x1
POL(nil) = 0
POL(s) = 1
POL(take(x1, x2)) = 2·x1 + 2·x2
POL(true) = 1
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
eq → eq
inf(X) → cons
take(0, X) → nil
eq → eq
inf(X) → cons
take(0, X) → nil
Used ordering:
inf(X) → cons
take(0, X) → nil
POL(0) = 2
POL(cons) = 1
POL(eq) = 0
POL(inf(x1)) = 2 + x1
POL(nil) = 1
POL(take(x1, x2)) = 2 + 2·x1 + x2
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ AAECC Innermost
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
eq → eq
eq → eq
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
eq → eq
eq
EQ → EQ
eq → eq
eq
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ UsableRulesProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
EQ → EQ
eq → eq
eq
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
EQ → EQ
eq
eq
↳ CSR
↳ Lucas-Transformation
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ RRRPoloQTRSProof
↳ QTRS
↳ AAECC Innermost
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonTerminationProof
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
EQ → EQ
EQ → EQ
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ Incomplete Giesl Middeldorp-Transformation
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
TAKE(s(X), cons(Y, L)) → A(L)
A(0Inact) → 01
A(infInact(x1)) → INF(x1)
LENGTH(cons(X, L)) → A(L)
A(sInact(x1)) → S(x1)
A(takeInact(x1, x2)) → TAKE(x1, x2)
EQ(sInact(X), sInact(Y)) → EQ(a(X), a(Y))
INF(X) → S(X)
A(lengthInact(x1)) → LENGTH(x1)
TAKE(s(X), cons(Y, L)) → A(X)
LENGTH(nil) → 01
EQ(sInact(X), sInact(Y)) → A(Y)
LENGTH(cons(X, L)) → S(lengthInact(a(L)))
EQ(sInact(X), sInact(Y)) → A(X)
TAKE(s(X), cons(Y, L)) → A(Y)
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
TAKE(s(X), cons(Y, L)) → A(L)
A(0Inact) → 01
A(infInact(x1)) → INF(x1)
LENGTH(cons(X, L)) → A(L)
A(sInact(x1)) → S(x1)
A(takeInact(x1, x2)) → TAKE(x1, x2)
EQ(sInact(X), sInact(Y)) → EQ(a(X), a(Y))
INF(X) → S(X)
A(lengthInact(x1)) → LENGTH(x1)
TAKE(s(X), cons(Y, L)) → A(X)
LENGTH(nil) → 01
EQ(sInact(X), sInact(Y)) → A(Y)
LENGTH(cons(X, L)) → S(lengthInact(a(L)))
EQ(sInact(X), sInact(Y)) → A(X)
TAKE(s(X), cons(Y, L)) → A(Y)
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ Incomplete Giesl Middeldorp-Transformation
TAKE(s(X), cons(Y, L)) → A(L)
LENGTH(cons(X, L)) → A(L)
A(lengthInact(x1)) → LENGTH(x1)
A(takeInact(x1, x2)) → TAKE(x1, x2)
TAKE(s(X), cons(Y, L)) → A(X)
TAKE(s(X), cons(Y, L)) → A(Y)
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
↳ Incomplete Giesl Middeldorp-Transformation
TAKE(s(X), cons(Y, L)) → A(L)
LENGTH(cons(X, L)) → A(L)
A(lengthInact(x1)) → LENGTH(x1)
A(takeInact(x1, x2)) → TAKE(x1, x2)
TAKE(s(X), cons(Y, L)) → A(X)
TAKE(s(X), cons(Y, L)) → A(Y)
From the DPs we obtained the following set of size-change graphs:
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(X), sInact(Y)) → EQ(a(X), a(Y))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(inf(x0), a(y1))
EQ(sInact(sInact(x0)), sInact(y1)) → EQ(s(x0), a(y1))
EQ(sInact(lengthInact(x0)), sInact(y1)) → EQ(length(x0), a(y1))
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(inf(x0), a(y1))
EQ(sInact(sInact(x0)), sInact(y1)) → EQ(s(x0), a(y1))
EQ(sInact(lengthInact(x0)), sInact(y1)) → EQ(length(x0), a(y1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(cons(x0, infInact(s(x0))), a(y1))
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(infInact(x0), a(y1))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(x0)), sInact(y1)) → EQ(s(x0), a(y1))
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(cons(x0, infInact(s(x0))), a(y1))
EQ(sInact(lengthInact(x0)), sInact(y1)) → EQ(length(x0), a(y1))
EQ(sInact(infInact(x0)), sInact(y1)) → EQ(infInact(x0), a(y1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(x0)), sInact(y1)) → EQ(s(x0), a(y1))
EQ(sInact(lengthInact(x0)), sInact(y1)) → EQ(length(x0), a(y1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(x0)), sInact(y1)) → EQ(length(x0), a(y1))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(takeInact(x0, x1)), sInact(y1)) → EQ(take(x0, x1), a(y1))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(takeInact(x0, x1)), sInact(y2)) → EQ(takeInact(x0, x1), a(y2))
EQ(sInact(takeInact(s(x0), cons(x1, x2))), sInact(y2)) → EQ(cons(a(x1), takeInact(a(x0), a(x2))), a(y2))
EQ(sInact(takeInact(0, x0)), sInact(y2)) → EQ(nil, a(y2))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(takeInact(s(x0), cons(x1, x2))), sInact(y2)) → EQ(cons(a(x1), takeInact(a(x0), a(x2))), a(y2))
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(takeInact(x0, x1)), sInact(y2)) → EQ(takeInact(x0, x1), a(y2))
EQ(sInact(takeInact(0, x0)), sInact(y2)) → EQ(nil, a(y2))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(0Inact), sInact(y1)) → EQ(0, a(y1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(0Inact), sInact(y0)) → EQ(0Inact, a(y0))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(0Inact), sInact(y0)) → EQ(0Inact, a(y0))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
EQ(sInact(x0), sInact(y1)) → EQ(x0, a(y1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), take(x0, x1))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(sInact(y0)), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(s(y0), cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), takeInact(x0, x1))
EQ(sInact(sInact(y0)), sInact(takeInact(0, x0))) → EQ(s(y0), nil)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(s(y0), cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(sInact(y0)), sInact(takeInact(x0, x1))) → EQ(s(y0), takeInact(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(takeInact(0, x0))) → EQ(s(y0), nil)
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), cons(x0, infInact(s(x0))))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), infInact(x0))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), infInact(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(infInact(x0))) → EQ(s(y0), cons(x0, infInact(s(x0))))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0Inact)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(sInact(y0)), sInact(0Inact)) → EQ(s(y0), 0Inact)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), takeInact(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(length(y0), cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(lengthInact(y0)), sInact(takeInact(0, x0))) → EQ(length(y0), nil)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(lengthInact(y0)), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(length(y0), cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(takeInact(0, x0))) → EQ(length(y0), nil)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(lengthInact(y0)), sInact(takeInact(x0, x1))) → EQ(length(y0), takeInact(x0, x1))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0Inact)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(0Inact)) → EQ(length(y0), 0Inact)
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), inf(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), cons(x0, infInact(s(x0))))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), infInact(x0))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), infInact(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(infInact(x0))) → EQ(length(y0), cons(x0, infInact(s(x0))))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, inf(x0))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, infInact(x0))
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, cons(x0, infInact(s(x0))))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, infInact(x0))
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(infInact(x0))) → EQ(y0, cons(x0, infInact(s(x0))))
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0)
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0Inact)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(y0), sInact(0Inact)) → EQ(y0, 0Inact)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, take(x0, x1))
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
EQ(sInact(y0), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(y0, cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(y0), sInact(takeInact(0, x0))) → EQ(y0, nil)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, takeInact(x0, x1))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(takeInact(s(x0), cons(x1, x2)))) → EQ(y0, cons(a(x1), takeInact(a(x0), a(x2))))
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(y0), sInact(takeInact(x0, x1))) → EQ(y0, takeInact(x0, x1))
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(y0), sInact(takeInact(0, x0))) → EQ(y0, nil)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDPOrderProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
EQ(sInact(y0), sInact(x0)) → EQ(y0, x0)
EQ(sInact(sInact(y0)), sInact(x0)) → EQ(s(y0), x0)
EQ(sInact(sInact(y0)), sInact(lengthInact(x0))) → EQ(s(y0), length(x0))
EQ(sInact(sInact(y0)), sInact(sInact(x0))) → EQ(s(y0), s(x0))
EQ(sInact(y0), sInact(sInact(x0))) → EQ(y0, s(x0))
EQ(sInact(y0), sInact(lengthInact(x0))) → EQ(y0, length(x0))
Used ordering: Polynomial interpretation [25]:
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
POL(0) = 1
POL(0Inact) = 1
POL(EQ(x1, x2)) = x1
POL(a(x1)) = 1
POL(cons(x1, x2)) = 0
POL(inf(x1)) = 0
POL(infInact(x1)) = 0
POL(length(x1)) = 1
POL(lengthInact(x1)) = 0
POL(nil) = 0
POL(s(x1)) = 1 + x1
POL(sInact(x1)) = 1 + x1
POL(take(x1, x2)) = 0
POL(takeInact(x1, x2)) = 0
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
a(takeInact(x1, x2)) → take(x1, x2)
take(0, X) → nil
length(x1) → lengthInact(x1)
0 → 0Inact
length(cons(X, L)) → s(lengthInact(a(L)))
s(x1) → sInact(x1)
length(nil) → 0
take(x1, x2) → takeInact(x1, x2)
a(lengthInact(x1)) → length(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
EQ(sInact(lengthInact(y0)), sInact(x0)) → EQ(length(y0), x0)
EQ(sInact(lengthInact(y0)), sInact(sInact(x0))) → EQ(length(y0), s(x0))
Used ordering: Polynomial interpretation [25]:
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
POL(0) = 1
POL(0Inact) = 0
POL(EQ(x1, x2)) = x2
POL(a(x1)) = 1 + x1
POL(cons(x1, x2)) = 0
POL(inf(x1)) = 0
POL(infInact(x1)) = 0
POL(length(x1)) = 1
POL(lengthInact(x1)) = 0
POL(nil) = 1
POL(s(x1)) = 1 + x1
POL(sInact(x1)) = 1 + x1
POL(take(x1, x2)) = 1
POL(takeInact(x1, x2)) = 1
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
a(takeInact(x1, x2)) → take(x1, x2)
take(0, X) → nil
length(x1) → lengthInact(x1)
0 → 0Inact
length(cons(X, L)) → s(lengthInact(a(L)))
s(x1) → sInact(x1)
length(nil) → 0
take(x1, x2) → takeInact(x1, x2)
a(lengthInact(x1)) → length(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ Narrowing
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ Incomplete Giesl Middeldorp-Transformation
EQ(sInact(lengthInact(y0)), sInact(lengthInact(x0))) → EQ(length(y0), length(x0))
eq(0Inact, 0Inact) → true
eq(sInact(X), sInact(Y)) → eq(a(X), a(Y))
eq(X, Y) → false
inf(X) → cons(X, infInact(s(X)))
take(0, X) → nil
take(s(X), cons(Y, L)) → cons(a(Y), takeInact(a(X), a(L)))
length(nil) → 0
length(cons(X, L)) → s(lengthInact(a(L)))
a(x) → x
length(x1) → lengthInact(x1)
a(lengthInact(x1)) → length(x1)
s(x1) → sInact(x1)
a(sInact(x1)) → s(x1)
0 → 0Inact
a(0Inact) → 0
take(x1, x2) → takeInact(x1, x2)
a(takeInact(x1, x2)) → take(x1, x2)
inf(x1) → infInact(x1)
a(infInact(x1)) → inf(x1)
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
mark(eq(x1, x2)) → eqActive(x1, x2)
eqActive(x1, x2) → eq(x1, x2)
mark(inf(x1)) → infActive(mark(x1))
infActive(x1) → inf(x1)
mark(take(x1, x2)) → takeActive(mark(x1), mark(x2))
takeActive(x1, x2) → take(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(0) → 0
mark(true) → true
mark(s(x1)) → s(x1)
mark(false) → false
mark(cons(x1, x2)) → cons(x1, x2)
mark(nil) → nil
eqActive(0, 0) → true
eqActive(s(X), s(Y)) → eqActive(X, Y)
eqActive(X, Y) → false
infActive(X) → cons(X, inf(s(X)))
takeActive(0, X) → nil
takeActive(s(X), cons(Y, L)) → cons(Y, take(X, L))
lengthActive(nil) → 0
lengthActive(cons(X, L)) → s(length(L))
MARK(take(x1, x2)) → MARK(x2)
MARK(inf(x1)) → MARK(x1)
EQACTIVE(s(X), s(Y)) → EQACTIVE(X, Y)
MARK(take(x1, x2)) → TAKEACTIVE(mark(x1), mark(x2))
MARK(take(x1, x2)) → MARK(x1)
MARK(eq(x1, x2)) → EQACTIVE(x1, x2)
MARK(length(x1)) → LENGTHACTIVE(mark(x1))
MARK(length(x1)) → MARK(x1)
MARK(inf(x1)) → INFACTIVE(mark(x1))
mark(eq(x1, x2)) → eqActive(x1, x2)
eqActive(x1, x2) → eq(x1, x2)
mark(inf(x1)) → infActive(mark(x1))
infActive(x1) → inf(x1)
mark(take(x1, x2)) → takeActive(mark(x1), mark(x2))
takeActive(x1, x2) → take(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(0) → 0
mark(true) → true
mark(s(x1)) → s(x1)
mark(false) → false
mark(cons(x1, x2)) → cons(x1, x2)
mark(nil) → nil
eqActive(0, 0) → true
eqActive(s(X), s(Y)) → eqActive(X, Y)
eqActive(X, Y) → false
infActive(X) → cons(X, inf(s(X)))
takeActive(0, X) → nil
takeActive(s(X), cons(Y, L)) → cons(Y, take(X, L))
lengthActive(nil) → 0
lengthActive(cons(X, L)) → s(length(L))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
MARK(take(x1, x2)) → MARK(x2)
MARK(inf(x1)) → MARK(x1)
EQACTIVE(s(X), s(Y)) → EQACTIVE(X, Y)
MARK(take(x1, x2)) → TAKEACTIVE(mark(x1), mark(x2))
MARK(take(x1, x2)) → MARK(x1)
MARK(eq(x1, x2)) → EQACTIVE(x1, x2)
MARK(length(x1)) → LENGTHACTIVE(mark(x1))
MARK(length(x1)) → MARK(x1)
MARK(inf(x1)) → INFACTIVE(mark(x1))
mark(eq(x1, x2)) → eqActive(x1, x2)
eqActive(x1, x2) → eq(x1, x2)
mark(inf(x1)) → infActive(mark(x1))
infActive(x1) → inf(x1)
mark(take(x1, x2)) → takeActive(mark(x1), mark(x2))
takeActive(x1, x2) → take(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(0) → 0
mark(true) → true
mark(s(x1)) → s(x1)
mark(false) → false
mark(cons(x1, x2)) → cons(x1, x2)
mark(nil) → nil
eqActive(0, 0) → true
eqActive(s(X), s(Y)) → eqActive(X, Y)
eqActive(X, Y) → false
infActive(X) → cons(X, inf(s(X)))
takeActive(0, X) → nil
takeActive(s(X), cons(Y, L)) → cons(Y, take(X, L))
lengthActive(nil) → 0
lengthActive(cons(X, L)) → s(length(L))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
EQACTIVE(s(X), s(Y)) → EQACTIVE(X, Y)
mark(eq(x1, x2)) → eqActive(x1, x2)
eqActive(x1, x2) → eq(x1, x2)
mark(inf(x1)) → infActive(mark(x1))
infActive(x1) → inf(x1)
mark(take(x1, x2)) → takeActive(mark(x1), mark(x2))
takeActive(x1, x2) → take(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(0) → 0
mark(true) → true
mark(s(x1)) → s(x1)
mark(false) → false
mark(cons(x1, x2)) → cons(x1, x2)
mark(nil) → nil
eqActive(0, 0) → true
eqActive(s(X), s(Y)) → eqActive(X, Y)
eqActive(X, Y) → false
infActive(X) → cons(X, inf(s(X)))
takeActive(0, X) → nil
takeActive(s(X), cons(Y, L)) → cons(Y, take(X, L))
lengthActive(nil) → 0
lengthActive(cons(X, L)) → s(length(L))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDPSizeChangeProof
↳ QDP
EQACTIVE(s(X), s(Y)) → EQACTIVE(X, Y)
From the DPs we obtained the following set of size-change graphs:
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
MARK(take(x1, x2)) → MARK(x2)
MARK(inf(x1)) → MARK(x1)
MARK(take(x1, x2)) → MARK(x1)
MARK(length(x1)) → MARK(x1)
mark(eq(x1, x2)) → eqActive(x1, x2)
eqActive(x1, x2) → eq(x1, x2)
mark(inf(x1)) → infActive(mark(x1))
infActive(x1) → inf(x1)
mark(take(x1, x2)) → takeActive(mark(x1), mark(x2))
takeActive(x1, x2) → take(x1, x2)
mark(length(x1)) → lengthActive(mark(x1))
lengthActive(x1) → length(x1)
mark(0) → 0
mark(true) → true
mark(s(x1)) → s(x1)
mark(false) → false
mark(cons(x1, x2)) → cons(x1, x2)
mark(nil) → nil
eqActive(0, 0) → true
eqActive(s(X), s(Y)) → eqActive(X, Y)
eqActive(X, Y) → false
infActive(X) → cons(X, inf(s(X)))
takeActive(0, X) → nil
takeActive(s(X), cons(Y, L)) → cons(Y, take(X, L))
lengthActive(nil) → 0
lengthActive(cons(X, L)) → s(length(L))
↳ CSR
↳ Lucas-Transformation
↳ Zantema-Transformation
↳ Incomplete Giesl Middeldorp-Transformation
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QDPSizeChangeProof
MARK(take(x1, x2)) → MARK(x2)
MARK(inf(x1)) → MARK(x1)
MARK(take(x1, x2)) → MARK(x1)
MARK(length(x1)) → MARK(x1)
From the DPs we obtained the following set of size-change graphs: