; @origtpdbfilename ./TRS/TRCSR/LengthOfFiniteLists_complete_iGM.trs ; @xtcfilename "./TRS_Standard/Transformed_CSR_04/LengthOfFiniteLists_complete_iGM.xml" (format TRS) (fun active 1) (fun zeros 0) (fun mark 1) (fun cons 2) (fun |0| 0) (fun U11 2) (fun tt 0) (fun U12 1) (fun isNatList 1) (fun U21 2) (fun U22 1) (fun isNat 1) (fun U31 2) (fun U32 1) (fun U41 3) (fun U42 2) (fun U43 1) (fun isNatIList 1) (fun U51 3) (fun U52 2) (fun U53 1) (fun U61 2) (fun s 1) (fun length 1) (fun and 2) (fun isNatIListKind 1) (fun isNatKind 1) (fun nil 0) (rule (active zeros) (mark (cons |0| zeros))) (rule (active (U11 tt V1)) (mark (U12 (isNatList V1)))) (rule (active (U12 tt)) (mark tt)) (rule (active (U21 tt V1)) (mark (U22 (isNat V1)))) (rule (active (U22 tt)) (mark tt)) (rule (active (U31 tt V)) (mark (U32 (isNatList V)))) (rule (active (U32 tt)) (mark tt)) (rule (active (U41 tt V1 V2)) (mark (U42 (isNat V1) V2))) (rule (active (U42 tt V2)) (mark (U43 (isNatIList V2)))) (rule (active (U43 tt)) (mark tt)) (rule (active (U51 tt V1 V2)) (mark (U52 (isNat V1) V2))) (rule (active (U52 tt V2)) (mark (U53 (isNatList V2)))) (rule (active (U53 tt)) (mark tt)) (rule (active (U61 tt L)) (mark (s (length L)))) (rule (active (and tt X)) (mark X)) (rule (active (isNat |0|)) (mark tt)) (rule (active (isNat (length V1))) (mark (U11 (isNatIListKind V1) V1))) (rule (active (isNat (s V1))) (mark (U21 (isNatKind V1) V1))) (rule (active (isNatIList V)) (mark (U31 (isNatIListKind V) V))) (rule (active (isNatIList zeros)) (mark tt)) (rule (active (isNatIList (cons V1 V2))) (mark (U41 (and (isNatKind V1) (isNatIListKind V2)) V1 V2))) (rule (active (isNatIListKind nil)) (mark tt)) (rule (active (isNatIListKind zeros)) (mark tt)) (rule (active (isNatIListKind (cons V1 V2))) (mark (and (isNatKind V1) (isNatIListKind V2)))) (rule (active (isNatKind |0|)) (mark tt)) (rule (active (isNatKind (length V1))) (mark (isNatIListKind V1))) (rule (active (isNatKind (s V1))) (mark (isNatKind V1))) (rule (active (isNatList nil)) (mark tt)) (rule (active (isNatList (cons V1 V2))) (mark (U51 (and (isNatKind V1) (isNatIListKind V2)) V1 V2))) (rule (active (length nil)) (mark |0|)) (rule (active (length (cons N L))) (mark (U61 (and (and (isNatList L) (isNatIListKind L)) (and (isNat N) (isNatKind N))) L))) (rule (mark zeros) (active zeros)) (rule (mark (cons X1 X2)) (active (cons (mark X1) X2))) (rule (mark |0|) (active |0|)) (rule (mark (U11 X1 X2)) (active (U11 (mark X1) X2))) (rule (mark tt) (active tt)) (rule (mark (U12 X)) (active (U12 (mark X)))) (rule (mark (isNatList X)) (active (isNatList X))) (rule (mark (U21 X1 X2)) (active (U21 (mark X1) X2))) (rule (mark (U22 X)) (active (U22 (mark X)))) (rule (mark (isNat X)) (active (isNat X))) (rule (mark (U31 X1 X2)) (active (U31 (mark X1) X2))) (rule (mark (U32 X)) (active (U32 (mark X)))) (rule (mark (U41 X1 X2 X3)) (active (U41 (mark X1) X2 X3))) (rule (mark (U42 X1 X2)) (active (U42 (mark X1) X2))) (rule (mark (U43 X)) (active (U43 (mark X)))) (rule (mark (isNatIList X)) (active (isNatIList X))) (rule (mark (U51 X1 X2 X3)) (active (U51 (mark X1) X2 X3))) (rule (mark (U52 X1 X2)) (active (U52 (mark X1) X2))) (rule (mark (U53 X)) (active (U53 (mark X)))) (rule (mark (U61 X1 X2)) (active (U61 (mark X1) X2))) (rule (mark (s X)) (active (s (mark X)))) (rule (mark (length X)) (active (length (mark X)))) (rule (mark (and X1 X2)) (active (and (mark X1) X2))) (rule (mark (isNatIListKind X)) (active (isNatIListKind X))) (rule (mark (isNatKind X)) (active (isNatKind X))) (rule (mark nil) (active nil)) (rule (cons (mark X1) X2) (cons X1 X2)) (rule (cons X1 (mark X2)) (cons X1 X2)) (rule (cons (active X1) X2) (cons X1 X2)) (rule (cons X1 (active X2)) (cons X1 X2)) (rule (U11 (mark X1) X2) (U11 X1 X2)) (rule (U11 X1 (mark X2)) (U11 X1 X2)) (rule (U11 (active X1) X2) (U11 X1 X2)) (rule (U11 X1 (active X2)) (U11 X1 X2)) (rule (U12 (mark X)) (U12 X)) (rule (U12 (active X)) (U12 X)) (rule (isNatList (mark X)) (isNatList X)) (rule (isNatList (active X)) (isNatList X)) (rule (U21 (mark X1) X2) (U21 X1 X2)) (rule (U21 X1 (mark X2)) (U21 X1 X2)) (rule (U21 (active X1) X2) (U21 X1 X2)) (rule (U21 X1 (active X2)) (U21 X1 X2)) (rule (U22 (mark X)) (U22 X)) (rule (U22 (active X)) (U22 X)) (rule (isNat (mark X)) (isNat X)) (rule (isNat (active X)) (isNat X)) (rule (U31 (mark X1) X2) (U31 X1 X2)) (rule (U31 X1 (mark X2)) (U31 X1 X2)) (rule (U31 (active X1) X2) (U31 X1 X2)) (rule (U31 X1 (active X2)) (U31 X1 X2)) (rule (U32 (mark X)) (U32 X)) (rule (U32 (active X)) (U32 X)) (rule (U41 (mark X1) X2 X3) (U41 X1 X2 X3)) (rule (U41 X1 (mark X2) X3) (U41 X1 X2 X3)) (rule (U41 X1 X2 (mark X3)) (U41 X1 X2 X3)) (rule (U41 (active X1) X2 X3) (U41 X1 X2 X3)) (rule (U41 X1 (active X2) X3) (U41 X1 X2 X3)) (rule (U41 X1 X2 (active X3)) (U41 X1 X2 X3)) (rule (U42 (mark X1) X2) (U42 X1 X2)) (rule (U42 X1 (mark X2)) (U42 X1 X2)) (rule (U42 (active X1) X2) (U42 X1 X2)) (rule (U42 X1 (active X2)) (U42 X1 X2)) (rule (U43 (mark X)) (U43 X)) (rule (U43 (active X)) (U43 X)) (rule (isNatIList (mark X)) (isNatIList X)) (rule (isNatIList (active X)) (isNatIList X)) (rule (U51 (mark X1) X2 X3) (U51 X1 X2 X3)) (rule (U51 X1 (mark X2) X3) (U51 X1 X2 X3)) (rule (U51 X1 X2 (mark X3)) (U51 X1 X2 X3)) (rule (U51 (active X1) X2 X3) (U51 X1 X2 X3)) (rule (U51 X1 (active X2) X3) (U51 X1 X2 X3)) (rule (U51 X1 X2 (active X3)) (U51 X1 X2 X3)) (rule (U52 (mark X1) X2) (U52 X1 X2)) (rule (U52 X1 (mark X2)) (U52 X1 X2)) (rule (U52 (active X1) X2) (U52 X1 X2)) (rule (U52 X1 (active X2)) (U52 X1 X2)) (rule (U53 (mark X)) (U53 X)) (rule (U53 (active X)) (U53 X)) (rule (U61 (mark X1) X2) (U61 X1 X2)) (rule (U61 X1 (mark X2)) (U61 X1 X2)) (rule (U61 (active X1) X2) (U61 X1 X2)) (rule (U61 X1 (active X2)) (U61 X1 X2)) (rule (s (mark X)) (s X)) (rule (s (active X)) (s X)) (rule (length (mark X)) (length X)) (rule (length (active X)) (length X)) (rule (and (mark X1) X2) (and X1 X2)) (rule (and X1 (mark X2)) (and X1 X2)) (rule (and (active X1) X2) (and X1 X2)) (rule (and X1 (active X2)) (and X1 X2)) (rule (isNatIListKind (mark X)) (isNatIListKind X)) (rule (isNatIListKind (active X)) (isNatIListKind X)) (rule (isNatKind (mark X)) (isNatKind X)) (rule (isNatKind (active X)) (isNatKind X))