; @origtpdbfilename ./TRS/TRCSR/Ex4_DLMMU04_GM.trs ; @xtcfilename "./TRS_Standard/Transformed_CSR_04/Ex4_DLMMU04_GM.xml" (format TRS) (fun a__and 2) (fun tt 0) (fun mark 1) (fun a__isNatIList 1) (fun a__isNatList 1) (fun a__isNat 1) (fun |0| 0) (fun s 1) (fun length 1) (fun zeros 0) (fun cons 2) (fun nil 0) (fun take 2) (fun a__zeros 0) (fun a__take 2) (fun a__uTake1 1) (fun a__uTake2 4) (fun a__length 1) (fun a__uLength 2) (fun and 2) (fun isNatIList 1) (fun isNatList 1) (fun isNat 1) (fun uTake1 1) (fun uTake2 4) (fun uLength 2) (rule (a__and tt T) (mark T)) (rule (a__isNatIList IL) (a__isNatList IL)) (rule (a__isNat |0|) tt) (rule (a__isNat (s N)) (a__isNat N)) (rule (a__isNat (length L)) (a__isNatList L)) (rule (a__isNatIList zeros) tt) (rule (a__isNatIList (cons N IL)) (a__and (a__isNat N) (a__isNatIList IL))) (rule (a__isNatList nil) tt) (rule (a__isNatList (cons N L)) (a__and (a__isNat N) (a__isNatList L))) (rule (a__isNatList (take N IL)) (a__and (a__isNat N) (a__isNatIList IL))) (rule a__zeros (cons |0| zeros)) (rule (a__take |0| IL) (a__uTake1 (a__isNatIList IL))) (rule (a__uTake1 tt) nil) (rule (a__take (s M) (cons N IL)) (a__uTake2 (a__and (a__isNat M) (a__and (a__isNat N) (a__isNatIList IL))) M N IL)) (rule (a__uTake2 tt M N IL) (cons (mark N) (take M IL))) (rule (a__length (cons N L)) (a__uLength (a__and (a__isNat N) (a__isNatList L)) L)) (rule (a__uLength tt L) (s (a__length (mark L)))) (rule (mark (and X1 X2)) (a__and (mark X1) (mark X2))) (rule (mark (isNatIList X)) (a__isNatIList X)) (rule (mark (isNatList X)) (a__isNatList X)) (rule (mark (isNat X)) (a__isNat X)) (rule (mark (length X)) (a__length (mark X))) (rule (mark zeros) a__zeros) (rule (mark (take X1 X2)) (a__take (mark X1) (mark X2))) (rule (mark (uTake1 X)) (a__uTake1 (mark X))) (rule (mark (uTake2 X1 X2 X3 X4)) (a__uTake2 (mark X1) X2 X3 X4)) (rule (mark (uLength X1 X2)) (a__uLength (mark X1) X2)) (rule (mark tt) tt) (rule (mark |0|) |0|) (rule (mark (s X)) (s (mark X))) (rule (mark (cons X1 X2)) (cons (mark X1) X2)) (rule (mark nil) nil) (rule (a__and X1 X2) (and X1 X2)) (rule (a__isNatIList X) (isNatIList X)) (rule (a__isNatList X) (isNatList X)) (rule (a__isNat X) (isNat X)) (rule (a__length X) (length X)) (rule a__zeros zeros) (rule (a__take X1 X2) (take X1 X2)) (rule (a__uTake1 X) (uTake1 X)) (rule (a__uTake2 X1 X2 X3 X4) (uTake2 X1 X2 X3 X4)) (rule (a__uLength X1 X2) (uLength X1 X2))