YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) Overlay + Local Confluence [EQUIVALENT, 12 ms] (2) QTRS (3) DependencyPairsProof [EQUIVALENT, 0 ms] (4) QDP (5) DependencyGraphProof [EQUIVALENT, 0 ms] (6) QDP (7) TransformationProof [EQUIVALENT, 0 ms] (8) QDP (9) TransformationProof [EQUIVALENT, 0 ms] (10) QDP (11) TransformationProof [EQUIVALENT, 0 ms] (12) QDP (13) TransformationProof [EQUIVALENT, 26 ms] (14) QDP (15) TransformationProof [EQUIVALENT, 77 ms] (16) QDP (17) TransformationProof [EQUIVALENT, 0 ms] (18) QDP (19) UsableRulesProof [EQUIVALENT, 0 ms] (20) QDP (21) TransformationProof [EQUIVALENT, 237 ms] (22) QDP (23) TransformationProof [EQUIVALENT, 375 ms] (24) QDP (25) MRRProof [EQUIVALENT, 383 ms] (26) QDP (27) PisEmptyProof [EQUIVALENT, 0 ms] (28) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) Q is empty. ---------------------------------------- (1) Overlay + Local Confluence (EQUIVALENT) The TRS is overlay and locally confluent. By [NOC] we can switch to innermost. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) ---------------------------------------- (3) DependencyPairsProof (EQUIVALENT) Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem. ---------------------------------------- (4) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(map_1, f), app(app(cons, h), t)) -> APP(app(cons, app(f, h)), app(app(map_1, f), t)) APP(app(map_1, f), app(app(cons, h), t)) -> APP(cons, app(f, h)) APP(app(map_1, f), app(app(cons, h), t)) -> APP(f, h) APP(app(map_1, f), app(app(cons, h), t)) -> APP(app(map_1, f), t) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(cons, app(app(f, h), c)) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(f, h), c) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(cons, app(app(app(f, g), h), c)) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(f, g) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (5) DependencyGraphProof (EQUIVALENT) The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 7 less nodes. ---------------------------------------- (6) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(map_1, f), app(app(cons, h), t)) -> APP(app(map_1, f), t) APP(app(map_1, f), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(f, h), c) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (7) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(map_1, f), app(app(cons, h), t)) -> APP(app(map_1, f), t) we obtained the following new rules [LPAR04]: (APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)),APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2))) ---------------------------------------- (8) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(map_1, f), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(f, h), c) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (9) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(map_1, f), app(app(cons, h), t)) -> APP(f, h) we obtained the following new rules [LPAR04]: (APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)),APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3))) (APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)),APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3))) (APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)),APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2))) (APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))),APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3)))) ---------------------------------------- (10) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(f, h), c) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (11) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(f, h), c) we obtained the following new rules [LPAR04]: (APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1),APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1)) (APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1),APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1)) (APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1),APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1)) (APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1),APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1)) (APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1),APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1)) (APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1),APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1)) ---------------------------------------- (12) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (13) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(f, h) we obtained the following new rules [LPAR04]: (APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))),APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3)))) (APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)),APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3))) (APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)),APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) (APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2))) ---------------------------------------- (14) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (15) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(map_2, f), c), app(app(cons, h), t)) -> APP(app(app(map_2, f), c), t) we obtained the following new rules [LPAR04]: (APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)),APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)),APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3))) (APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)),APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2))) (APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)),APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) (APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)),APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) (APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)),APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2))) (APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)),APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) (APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)),APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) (APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)),APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) (APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) (APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)),APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) ---------------------------------------- (16) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (17) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(f, g), h), c) we obtained the following new rules [LPAR04]: (APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1),APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1)) (APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1),APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1)) ---------------------------------------- (18) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1) The TRS R consists of the following rules: app(app(map_1, f), app(app(cons, h), t)) -> app(app(cons, app(f, h)), app(app(map_1, f), t)) app(app(app(map_2, f), c), app(app(cons, h), t)) -> app(app(cons, app(app(f, h), c)), app(app(app(map_2, f), c), t)) app(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> app(app(cons, app(app(app(f, g), h), c)), app(app(app(app(map_3, f), g), c), t)) The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (19) UsableRulesProof (EQUIVALENT) As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R. ---------------------------------------- (20) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1) R is empty. The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (21) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(f, g), h) we obtained the following new rules [LPAR04]: (APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), g), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), g), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, g), app(app(cons, y_1), app(app(cons, y_2), y_3))),APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, g), app(app(cons, y_1), app(app(cons, y_2), y_3)))) (APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), y_2)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), y_2))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(map_2, y_1), y_2)), y_3)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(map_1, y_1)), y_2)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(map_1, y_1)), y_2))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, y_0), g), app(app(cons, y_2), app(app(cons, y_3), y_4))),APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, y_0), g), app(app(cons, y_2), app(app(cons, y_3), y_4)))) (APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))),APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), app(app(cons, y_3), y_4)))) (APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))),APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), app(app(cons, y_3), y_4)))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, y_2), y_3))),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, y_2), y_3)))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4)))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))),APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7)))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7)))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6)))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5)))) (APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, app(map_3, y_0)), g), g), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, app(map_3, y_0)), g), g), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(app(map_3, map_2), g), g), app(app(cons, y_1), y_2)),APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(app(map_3, map_2), g), g), app(app(cons, y_1), y_2))) ---------------------------------------- (22) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1) APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, y_0), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))) APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, app(map_3, y_0)), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(app(map_3, map_2), g), g), app(app(cons, y_1), y_2)) R is empty. The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (23) TransformationProof (EQUIVALENT) By forward instantiating [JAR06] the rule APP(app(app(app(map_3, f), g), c), app(app(cons, h), t)) -> APP(app(app(app(map_3, f), g), c), t) we obtained the following new rules [LPAR04]: (APP(app(app(app(map_3, x0), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, x0), g), x1), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, x0), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, x0), g), x1), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, y_2), y_3)),APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, y_2), y_3))) (APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(app(map_3, map_2), g), x1), app(app(cons, y_1), y_2)),APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(app(map_3, map_2), g), x1), app(app(cons, y_1), y_2))) (APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(app(map_3, map_1), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)),APP(app(app(app(map_3, map_1), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) (APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5))) (APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5))) (APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4)),APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)),APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8)),APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7))) (APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6)),APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6))) (APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)),APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4))) (APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)),APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3))) ---------------------------------------- (24) Obligation: Q DP problem: The TRS P consists of the following rules: APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1) APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, y_0), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))) APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, app(map_3, y_0)), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(app(map_3, map_2), g), g), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, x0), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, x0), g), x1), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(app(map_3, map_2), g), x1), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, map_1), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6)) APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)) R is empty. The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (25) MRRProof (EQUIVALENT) By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented. Strictly oriented dependency pairs: APP(app(map_1, x0), app(app(cons, x1), app(app(cons, y_1), y_2))) -> APP(app(map_1, x0), app(app(cons, y_1), y_2)) APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), x2)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), y_2)) APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x2)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, y_0), x2), x1) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, x2), x3)) -> APP(app(map_1, x2), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_0), y_1)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_0), g), y_1)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), x1) APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_0)), x3)) -> APP(app(map_1, app(map_1, y_0)), x1) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, y_0), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, y_0), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(map_2, y_0), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(map_1, app(app(app(map_3, y_0), g), y_1)), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), y_2)), y_3)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)), x3)) -> APP(app(map_1, app(map_1, y_0)), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), y_1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, y_1), y_2)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), y_0), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, x0), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, x0), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(map_2, y_0)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(map_2, app(app(map_3, y_0), g)), x1), app(app(cons, y_2), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, y_1), y_2)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(map_2, y_1), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(map_2, map_1), x1), app(app(cons, x2), app(app(cons, app(map_1, y_1)), y_2))) -> APP(app(app(map_2, map_1), x1), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(map_2, app(map_1, y_0)), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), x1), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4))) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), x1), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), x3)) -> APP(app(app(app(map_3, y_0), g), x2), x1) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), x3)) -> APP(app(app(map_2, g), x2), x1) APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, y_0), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(map_1, g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(map_2, y_1), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, app(map_1, y_1)), y_2)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, app(app(cons, y_3), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, y_0), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(map_2, y_0)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), x3)) -> APP(app(app(map_2, app(app(map_3, y_0), g)), g), app(app(cons, y_2), app(app(cons, y_3), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, y_2), y_3))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), x3)) -> APP(app(app(map_2, map_1), g), app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, y_0), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(app(map_3, y_0), g), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), x3)) -> APP(app(app(map_2, app(map_1, y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(map_2, y_0), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1))), g), app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), x3)) -> APP(app(app(map_2, app(map_1, app(map_1, y_0))), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(map_2, y_0)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1)), g), app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), x3)) -> APP(app(app(map_2, app(app(map_2, map_1), y_0)), g), app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))) APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), x3)) -> APP(app(app(app(map_3, app(map_3, y_0)), g), g), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), x3)) -> APP(app(app(app(map_3, map_2), g), g), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, x0), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, x0), g), x1), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, x2), app(app(cons, y_2), y_3))) -> APP(app(app(app(map_3, app(map_3, y_0)), g), x1), app(app(cons, y_2), y_3)) APP(app(app(app(map_3, map_2), g), x1), app(app(cons, x2), app(app(cons, y_1), y_2))) -> APP(app(app(app(map_3, map_2), g), x1), app(app(cons, y_1), y_2)) APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, y_0), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, map_1), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, map_1), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(map_2, y_1), y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(app(app(map_3, y_1), g), y_2)), y_3)), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, app(map_1, y_1)), y_2)), y_3)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)), y_6)), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, y_2), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(map_2, y_2), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4)), y_5)), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, app(app(cons, app(map_1, y_2)), y_3)), y_4)), y_5)) APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, y_0)), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(map_2, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, app(app(map_3, y_0), g))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, y_3), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, y_2), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(map_2, y_2), y_3)), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(app(app(map_3, y_2), g), y_3)), y_4))), y_5)) APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4))) -> APP(app(app(app(map_3, app(map_2, map_1)), g), x1), app(app(cons, app(app(cons, y_1), app(app(cons, app(map_1, y_2)), y_3))), y_4)) APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, y_0), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(app(map_3, y_0), g), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(map_2, y_0), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(app(app(map_3, y_0), g), y_1)))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, app(app(cons, y_4), y_5)), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8))) -> APP(app(app(app(map_3, app(map_2, app(map_1, app(map_1, y_0)))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(cons, y_3), app(app(cons, y_4), y_5))), y_6)), y_7))), y_8)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(map_2, y_0)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, app(app(map_3, y_0), g)), y_1))), g), x1), app(app(cons, app(app(cons, y_3), app(app(cons, app(app(cons, y_4), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, y_3), y_4)), y_5))), y_6)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(map_2, y_3), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(app(app(map_3, y_3), g), y_4)), y_5)), y_6))), y_7)) APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6))) -> APP(app(app(app(map_3, app(map_2, app(app(map_2, map_1), y_0))), g), x1), app(app(cons, app(app(cons, y_2), app(app(cons, app(app(cons, app(map_1, y_3)), y_4)), y_5))), y_6)) APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_2), y_3)), y_4))) -> APP(app(app(app(map_3, app(app(map_3, app(map_3, y_0)), g)), g), x1), app(app(cons, app(app(cons, y_2), y_3)), y_4)) APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, x2), app(app(cons, app(app(cons, y_1), y_2)), y_3))) -> APP(app(app(app(map_3, app(app(map_3, map_2), g)), g), x1), app(app(cons, app(app(cons, y_1), y_2)), y_3)) Used ordering: Knuth-Bendix order [KBO] with precedence:g > map_3 > map_2 > cons > map_1 > app_2 > APP_2 and weight map: map_1=3 cons=1 map_2=2 map_3=3 g=2 app_2=0 APP_2=0 The variable weight is 1 ---------------------------------------- (26) Obligation: Q DP problem: P is empty. R is empty. The set Q consists of the following terms: app(app(map_1, x0), app(app(cons, x1), x2)) app(app(app(map_2, x0), x1), app(app(cons, x2), x3)) app(app(app(app(map_3, x0), g), x1), app(app(cons, x2), x3)) We have to consider all minimal (P,Q,R)-chains. ---------------------------------------- (27) PisEmptyProof (EQUIVALENT) The TRS P is empty. Hence, there is no (P,Q,R) chain. ---------------------------------------- (28) YES