; @origtpdbfilename ./TRS/TRCSR/LengthOfFiniteLists_nokinds_GM.trs ; @xtcfilename "./TRS_Standard/Transformed_CSR_04/LengthOfFiniteLists_nokinds_GM.xml" (format TRS) (fun a__zeros 0) (fun cons 2) (fun |0| 0) (fun zeros 0) (fun a__U11 2) (fun tt 0) (fun s 1) (fun a__length 1) (fun mark 1) (fun a__and 2) (fun a__isNat 1) (fun length 1) (fun a__isNatList 1) (fun a__isNatIList 1) (fun isNatIList 1) (fun nil 0) (fun isNatList 1) (fun isNat 1) (fun U11 2) (fun and 2) (rule a__zeros (cons |0| zeros)) (rule (a__U11 tt L) (s (a__length (mark L)))) (rule (a__and tt X) (mark X)) (rule (a__isNat |0|) tt) (rule (a__isNat (length V1)) (a__isNatList V1)) (rule (a__isNat (s V1)) (a__isNat V1)) (rule (a__isNatIList V) (a__isNatList V)) (rule (a__isNatIList zeros) tt) (rule (a__isNatIList (cons V1 V2)) (a__and (a__isNat V1) (isNatIList V2))) (rule (a__isNatList nil) tt) (rule (a__isNatList (cons V1 V2)) (a__and (a__isNat V1) (isNatList V2))) (rule (a__length nil) |0|) (rule (a__length (cons N L)) (a__U11 (a__and (a__isNatList L) (isNat N)) L)) (rule (mark zeros) a__zeros) (rule (mark (U11 X1 X2)) (a__U11 (mark X1) X2)) (rule (mark (length X)) (a__length (mark X))) (rule (mark (and X1 X2)) (a__and (mark X1) X2)) (rule (mark (isNat X)) (a__isNat X)) (rule (mark (isNatList X)) (a__isNatList X)) (rule (mark (isNatIList X)) (a__isNatIList X)) (rule (mark (cons X1 X2)) (cons (mark X1) X2)) (rule (mark |0|) |0|) (rule (mark tt) tt) (rule (mark (s X)) (s (mark X))) (rule (mark nil) nil) (rule a__zeros zeros) (rule (a__U11 X1 X2) (U11 X1 X2)) (rule (a__length X) (length X)) (rule (a__and X1 X2) (and X1 X2)) (rule (a__isNat X) (isNat X)) (rule (a__isNatList X) (isNatList X)) (rule (a__isNatIList X) (isNatIList X))