Certification Problem

Input (TPDB TRS_Standard/Transformed_CSR_04/LengthOfFiniteLists_nokinds_noand_GM)

The rewrite relation of the following TRS is considered.

a__zeros cons(0,zeros) (1)
a__U11(tt) tt (2)
a__U21(tt) tt (3)
a__U31(tt) tt (4)
a__U41(tt,V2) a__U42(a__isNatIList(V2)) (5)
a__U42(tt) tt (6)
a__U51(tt,V2) a__U52(a__isNatList(V2)) (7)
a__U52(tt) tt (8)
a__U61(tt,L,N) a__U62(a__isNat(N),L) (9)
a__U62(tt,L) s(a__length(mark(L))) (10)
a__isNat(0) tt (11)
a__isNat(length(V1)) a__U11(a__isNatList(V1)) (12)
a__isNat(s(V1)) a__U21(a__isNat(V1)) (13)
a__isNatIList(V) a__U31(a__isNatList(V)) (14)
a__isNatIList(zeros) tt (15)
a__isNatIList(cons(V1,V2)) a__U41(a__isNat(V1),V2) (16)
a__isNatList(nil) tt (17)
a__isNatList(cons(V1,V2)) a__U51(a__isNat(V1),V2) (18)
a__length(nil) 0 (19)
a__length(cons(N,L)) a__U61(a__isNatList(L),L,N) (20)
mark(zeros) a__zeros (21)
mark(U11(X)) a__U11(mark(X)) (22)
mark(U21(X)) a__U21(mark(X)) (23)
mark(U31(X)) a__U31(mark(X)) (24)
mark(U41(X1,X2)) a__U41(mark(X1),X2) (25)
mark(U42(X)) a__U42(mark(X)) (26)
mark(isNatIList(X)) a__isNatIList(X) (27)
mark(U51(X1,X2)) a__U51(mark(X1),X2) (28)
mark(U52(X)) a__U52(mark(X)) (29)
mark(isNatList(X)) a__isNatList(X) (30)
mark(U61(X1,X2,X3)) a__U61(mark(X1),X2,X3) (31)
mark(U62(X1,X2)) a__U62(mark(X1),X2) (32)
mark(isNat(X)) a__isNat(X) (33)
mark(length(X)) a__length(mark(X)) (34)
mark(cons(X1,X2)) cons(mark(X1),X2) (35)
mark(0) 0 (36)
mark(tt) tt (37)
mark(s(X)) s(mark(X)) (38)
mark(nil) nil (39)
a__zeros zeros (40)
a__U11(X) U11(X) (41)
a__U21(X) U21(X) (42)
a__U31(X) U31(X) (43)
a__U41(X1,X2) U41(X1,X2) (44)
a__U42(X) U42(X) (45)
a__isNatIList(X) isNatIList(X) (46)
a__U51(X1,X2) U51(X1,X2) (47)
a__U52(X) U52(X) (48)
a__isNatList(X) isNatList(X) (49)
a__U61(X1,X2,X3) U61(X1,X2,X3) (50)
a__U62(X1,X2) U62(X1,X2) (51)
a__isNat(X) isNat(X) (52)
a__length(X) length(X) (53)

Property / Task

Prove or disprove termination.

Answer / Result

Yes.

Proof (by ttt2 @ termCOMP 2023)

1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[a__length(x1)] =
1 1 1
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[tt] =
0 0 0
0 0 0
0 0 0
[a__isNat(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U41(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
0 0 0
0 0 0
· x2 +
1 0 0
0 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[cons(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
1 1 1
1 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[a__U62(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[nil] =
0 0 0
0 0 0
0 0 0
[U42(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U62(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
1 0 0
1 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[mark(x1)] =
1 0 0
0 0 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[isNatIList(x1)] =
1 1 0
0 0 0
0 0 0
· x1 +
1 0 0
1 0 0
1 0 0
[U11(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U51(x1, x2)] =
1 1 1
0 0 0
0 0 0
· x1 +
1 0 0
0 0 1
0 0 1
· x2 +
0 0 0
0 0 0
0 0 0
[a__U11(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[isNat(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U42(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__zeros] =
0 0 0
0 0 0
0 0 0
[a__U31(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
1 0 0
1 0 0
[length(x1)] =
1 1 1
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[U41(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
0 0 0
0 0 0
· x2 +
1 0 0
0 0 0
0 0 0
[isNatList(x1)] =
1 0 0
0 1 0
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U61(x1, x2, x3)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[U61(x1, x2, x3)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[a__isNatList(x1)] =
1 0 0
0 1 0
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U31(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
1 0 0
1 0 0
[a__U51(x1, x2)] =
1 1 1
0 0 0
0 0 0
· x1 +
1 0 0
0 0 1
0 0 1
· x2 +
0 0 0
0 0 0
0 0 0
[a__isNatIList(x1)] =
1 1 0
0 0 0
0 0 0
· x1 +
1 0 0
1 0 0
1 0 0
[a__U52(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U52(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[zeros] =
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
a__U31(tt) tt (4)
a__isNatIList(zeros) tt (15)

1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[a__length(x1)] =
1 1 1
1 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[tt] =
0 0 0
0 0 0
0 0 0
[a__isNat(x1)] =
1 0 0
1 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U41(x1, x2)] =
1 0 0
1 0 1
0 0 0
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[0] =
0 0 0
1 0 0
0 0 0
[cons(x1, x2)] =
1 0 0
0 0 0
0 0 1
· x1 +
1 1 1
1 1 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__U62(x1, x2)] =
1 0 0
0 0 1
0 0 0
· x1 +
1 1 1
1 1 1
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[nil] =
0 0 0
1 0 0
0 0 0
[U42(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U62(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 1
1 1 1
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[mark(x1)] =
1 0 0
0 1 1
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[isNatIList(x1)] =
1 1 1
1 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U11(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U51(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__U11(x1)] =
1 0 0
0 0 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[isNat(x1)] =
1 0 0
1 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U42(x1)] =
1 0 0
0 0 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[a__zeros] =
0 0 0
0 0 0
0 0 0
[a__U31(x1)] =
1 1 1
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[length(x1)] =
1 1 1
1 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[U41(x1, x2)] =
1 0 0
1 0 1
0 0 0
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[isNatList(x1)] =
1 1 0
0 0 1
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U61(x1, x2, x3)] =
1 0 0
0 0 1
0 0 0
· x1 +
1 1 1
1 1 1
0 0 0
· x2 +
1 0 1
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[U61(x1, x2, x3)] =
1 0 0
0 0 1
0 0 0
· x1 +
1 1 1
1 1 1
0 0 0
· x2 +
1 0 1
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[a__isNatList(x1)] =
1 1 0
0 0 1
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U31(x1)] =
1 1 1
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U51(x1, x2)] =
1 0 0
0 0 1
0 0 0
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__isNatIList(x1)] =
1 1 1
1 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U52(x1)] =
1 0 0
0 0 1
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U52(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[zeros] =
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
a__isNatList(nil) tt (17)
a__length(nil) 0 (19)

1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[a__length(x1)] =
1 0 1
0 0 1
0 1 0
· x1 +
1 0 0
0 0 0
0 0 0
[tt] =
1 0 0
0 0 0
0 0 0
[a__isNat(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[a__U41(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
1 0 0
1 0 0
[0] =
0 0 0
0 0 0
0 0 0
[cons(x1, x2)] =
1 1 1
0 1 0
0 0 1
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[a__U62(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
0 1 1
0 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[nil] =
0 0 0
1 0 0
1 0 0
[U42(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[U62(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 0 0
0 1 1
0 1 1
· x2 +
0 0 0
0 0 0
0 0 0
[s(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[mark(x1)] =
1 0 1
0 0 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[isNatIList(x1)] =
1 1 1
0 0 0
0 0 0
· x1 +
0 0 0
1 0 0
1 0 0
[U11(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[U51(x1, x2)] =
1 0 1
0 0 1
0 1 0
· x1 +
1 0 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__U11(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[isNat(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[a__U42(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[a__zeros] =
0 0 0
0 0 0
0 0 0
[a__U31(x1)] =
1 0 1
0 0 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[length(x1)] =
1 0 1
0 0 1
0 1 0
· x1 +
1 0 0
0 0 0
0 0 0
[U41(x1, x2)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
0 0 0
0 0 0
· x2 +
0 0 0
1 0 0
1 0 0
[isNatList(x1)] =
1 0 1
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[a__U61(x1, x2, x3)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 1 1
1 1 1
1 1 1
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[U61(x1, x2, x3)] =
1 0 0
0 1 0
0 0 1
· x1 +
1 0 0
1 1 1
1 1 1
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
0 0 0
0 0 0
0 0 0
[a__isNatList(x1)] =
1 0 1
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
[U21(x1)] =
1 0 0
0 1 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[U31(x1)] =
1 0 1
0 0 1
0 1 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U51(x1, x2)] =
1 0 1
0 0 1
0 1 0
· x1 +
1 0 1
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__isNatIList(x1)] =
1 1 1
0 0 0
0 0 0
· x1 +
1 0 0
1 0 0
1 0 0
[a__U52(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[a__U21(x1)] =
1 0 0
0 1 1
0 1 1
· x1 +
0 0 0
0 0 0
0 0 0
[U52(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[zeros] =
0 0 0
0 0 0
0 0 0
all of the following rules can be deleted.
a__isNat(length(V1)) a__U11(a__isNatList(V1)) (12)
mark(U41(X1,X2)) a__U41(mark(X1),X2) (25)
mark(nil) nil (39)
a__isNatIList(X) isNatIList(X) (46)

1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (3 x 3)-matrices with strict dimension 1 over the naturals
[a__length(x1)] =
1 1 0
1 0 1
1 0 0
· x1 +
1 0 0
0 0 0
1 0 0
[tt] =
0 0 0
0 0 0
0 0 0
[a__isNat(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U41(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
0 0 0
1 0 0
· x2 +
1 0 0
1 0 0
0 0 0
[0] =
0 0 0
0 0 0
0 0 0
[cons(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
1 0 0
0 0 0
· x2 +
0 0 0
0 0 0
1 0 0
[a__U62(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
1 1 0
0 0 0
· x2 +
1 0 0
1 0 0
0 0 0
[U42(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U62(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
1 1 0
0 0 0
· x2 +
1 0 0
1 0 0
0 0 0
[s(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[mark(x1)] =
1 0 0
0 1 0
0 0 1
· x1 +
0 0 0
0 0 0
0 0 0
[isNatIList(x1)] =
1 0 1
0 1 0
0 1 1
· x1 +
1 0 0
1 0 0
0 0 0
[U11(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U51(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__U11(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[isNat(x1)] =
1 0 0
1 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U42(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__zeros] =
0 0 0
0 0 0
1 0 0
[a__U31(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[length(x1)] =
1 1 0
1 0 1
1 0 0
· x1 +
1 0 0
0 0 0
1 0 0
[U41(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 0 0
0 0 0
0 0 0
· x2 +
1 0 0
1 0 0
0 0 0
[isNatList(x1)] =
1 0 0
0 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U61(x1, x2, x3)] =
1 0 0
0 0 0
1 1 0
· x1 +
1 1 0
1 1 0
0 0 0
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
1 0 0
1 0 0
1 0 0
[U61(x1, x2, x3)] =
1 0 0
0 0 0
1 1 0
· x1 +
1 1 0
1 1 0
0 0 0
· x2 +
1 0 0
0 0 0
0 0 0
· x3 +
1 0 0
1 0 0
1 0 0
[a__isNatList(x1)] =
1 0 0
0 1 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U31(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U51(x1, x2)] =
1 0 0
0 0 0
0 0 0
· x1 +
1 1 0
0 0 0
0 0 0
· x2 +
0 0 0
0 0 0
0 0 0
[a__isNatIList(x1)] =
1 0 0
0 1 0
0 1 1
· x1 +
1 0 0
1 0 0
0 0 0
[a__U52(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[a__U21(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[U52(x1)] =
1 0 0
0 0 0
0 0 0
· x1 +
0 0 0
0 0 0
0 0 0
[zeros] =
0 0 0
0 0 0
1 0 0
all of the following rules can be deleted.
a__isNatIList(V) a__U31(a__isNatList(V)) (14)

1.1.1.1.1 Dependency Pair Transformation

The following set of initial dependency pairs has been identified.
a__U41#(tt,V2) a__isNatIList#(V2) (54)
a__U41#(tt,V2) a__U42#(a__isNatIList(V2)) (55)
a__U51#(tt,V2) a__isNatList#(V2) (56)
a__U51#(tt,V2) a__U52#(a__isNatList(V2)) (57)
a__U61#(tt,L,N) a__isNat#(N) (58)
a__U61#(tt,L,N) a__U62#(a__isNat(N),L) (59)
a__U62#(tt,L) mark#(L) (60)
a__U62#(tt,L) a__length#(mark(L)) (61)
a__isNat#(s(V1)) a__isNat#(V1) (62)
a__isNat#(s(V1)) a__U21#(a__isNat(V1)) (63)
a__isNatIList#(cons(V1,V2)) a__isNat#(V1) (64)
a__isNatIList#(cons(V1,V2)) a__U41#(a__isNat(V1),V2) (65)
a__isNatList#(cons(V1,V2)) a__isNat#(V1) (66)
a__isNatList#(cons(V1,V2)) a__U51#(a__isNat(V1),V2) (67)
a__length#(cons(N,L)) a__isNatList#(L) (68)
a__length#(cons(N,L)) a__U61#(a__isNatList(L),L,N) (69)
mark#(zeros) a__zeros# (70)
mark#(U11(X)) mark#(X) (71)
mark#(U11(X)) a__U11#(mark(X)) (72)
mark#(U21(X)) mark#(X) (73)
mark#(U21(X)) a__U21#(mark(X)) (74)
mark#(U31(X)) mark#(X) (75)
mark#(U31(X)) a__U31#(mark(X)) (76)
mark#(U42(X)) mark#(X) (77)
mark#(U42(X)) a__U42#(mark(X)) (78)
mark#(isNatIList(X)) a__isNatIList#(X) (79)
mark#(U51(X1,X2)) mark#(X1) (80)
mark#(U51(X1,X2)) a__U51#(mark(X1),X2) (81)
mark#(U52(X)) mark#(X) (82)
mark#(U52(X)) a__U52#(mark(X)) (83)
mark#(isNatList(X)) a__isNatList#(X) (84)
mark#(U61(X1,X2,X3)) mark#(X1) (85)
mark#(U61(X1,X2,X3)) a__U61#(mark(X1),X2,X3) (86)
mark#(U62(X1,X2)) mark#(X1) (87)
mark#(U62(X1,X2)) a__U62#(mark(X1),X2) (88)
mark#(isNat(X)) a__isNat#(X) (89)
mark#(length(X)) mark#(X) (90)
mark#(length(X)) a__length#(mark(X)) (91)
mark#(cons(X1,X2)) mark#(X1) (92)
mark#(s(X)) mark#(X) (93)

1.1.1.1.1.1 Dependency Graph Processor

The dependency pairs are split into 4 components.