/export/starexec/sandbox2/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- KILLED proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 316 ms] (4) CpxRelTRS (5) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (6) CpxRelTRS (7) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (8) typed CpxTrs (9) OrderProof [LOWER BOUND(ID), 0 ms] (10) typed CpxTrs (11) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] (12) TRS for Loop Detection (13) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (14) CpxTRS (15) NonCtorToCtorProof [UPPER BOUND(ID), 0 ms] (16) CpxRelTRS (17) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (18) CpxWeightedTrs (19) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxTypedWeightedTrs (21) CompletionProof [UPPER BOUND(ID), 0 ms] (22) CpxTypedWeightedCompleteTrs (23) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 43 ms] (24) CpxRNTS (25) CompletionProof [UPPER BOUND(ID), 0 ms] (26) CpxTypedWeightedCompleteTrs (27) NarrowingProof [BOTH BOUNDS(ID, ID), 182 ms] (28) CpxTypedWeightedCompleteTrs (29) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 3 ms] (30) CpxRNTS (31) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (32) CpxRNTS (33) CpxTrsToCdtProof [UPPER BOUND(ID), 33 ms] (34) CdtProblem (35) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (36) CdtProblem (37) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CdtProblem (39) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (40) CdtProblem (41) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (42) CdtProblem (43) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 38 ms] (44) CdtProblem (45) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 45 ms] (46) CdtProblem (47) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 1 ms] (48) CdtProblem (49) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CdtProblem (51) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 11 ms] (52) CdtProblem (53) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (54) CdtProblem (55) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (56) CdtProblem (57) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 44 ms] (58) CdtProblem (59) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (60) CdtProblem (61) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 45 ms] (62) CdtProblem (63) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (64) CdtProblem (65) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 193 ms] (66) CdtProblem (67) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 17 ms] (68) CdtProblem (69) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 306 ms] (70) CdtProblem (71) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 68 ms] (72) CdtProblem (73) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 31 ms] (74) CdtProblem (75) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (76) CdtProblem (77) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 72 ms] (78) CdtProblem (79) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (80) CdtProblem (81) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 56 ms] (82) CdtProblem (83) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (84) CdtProblem (85) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (86) CdtProblem (87) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 15 ms] (88) CdtProblem (89) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 41 ms] (90) CdtProblem (91) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (92) CdtProblem (93) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 43 ms] (94) CdtProblem (95) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (96) CdtProblem (97) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 27 ms] (98) CdtProblem (99) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (100) CdtProblem (101) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 64 ms] (102) CdtProblem (103) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (104) CdtProblem (105) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 80 ms] (106) CdtProblem (107) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (108) CdtProblem (109) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 3 ms] (110) CdtProblem (111) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 11 ms] (112) CdtProblem (113) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 56 ms] (114) CdtProblem (115) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 77 ms] (118) CdtProblem (119) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 72 ms] (122) CdtProblem (123) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (124) CdtProblem ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0) -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0), y) -> true app'(app'(le, app'(s, x)), 0) -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (1) DerivationalComplexityToRuntimeComplexityProof (BOTH BOUNDS(ID, ID)) The following rules have been added to S to convert the given derivational complexity problem to a runtime complexity problem: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0) -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0), y) -> true app'(app'(le, app'(s, x)), 0) -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) The (relative) TRS S consists of the following rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Rewrite Strategy: INNERMOST ---------------------------------------- (3) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0) -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0), y) -> true app'(app'(le, app'(s, x)), 0) -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) The (relative) TRS S consists of the following rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Rewrite Strategy: INNERMOST ---------------------------------------- (5) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (6) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0'), 0') -> true app'(app'(eq, 0'), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0') -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0'), y) -> true app'(app'(le, app'(s, x)), 0') -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) The (relative) TRS S consists of the following rules: encArg(eq) -> eq encArg(0') -> 0' encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0' encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Rewrite Strategy: INNERMOST ---------------------------------------- (7) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (8) Obligation: Innermost TRS: Rules: app'(app'(eq, 0'), 0') -> true app'(app'(eq, 0'), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0') -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0'), y) -> true app'(app'(le, app'(s, x)), 0') -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) encArg(eq) -> eq encArg(0') -> 0' encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0' encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Types: app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' eq :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' 0' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' true :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' s :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' false :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' le :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' app :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' nil :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' add :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' map :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' filter :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' filter2 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encArg :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' cons_app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_eq :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_0 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_true :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_s :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_false :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_le :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_app :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_nil :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_add :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_map :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_filter :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_filter2 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' hole_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'1_3 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' gen_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'2_3 :: Nat -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' ---------------------------------------- (9) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: app', encArg They will be analysed ascendingly in the following order: app' < encArg ---------------------------------------- (10) Obligation: Innermost TRS: Rules: app'(app'(eq, 0'), 0') -> true app'(app'(eq, 0'), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0') -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0'), y) -> true app'(app'(le, app'(s, x)), 0') -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) encArg(eq) -> eq encArg(0') -> 0' encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0' encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Types: app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' eq :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' 0' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' true :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' s :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' false :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' le :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' app :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' nil :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' add :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' if_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' map :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' filter :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' filter2 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encArg :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' cons_app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_app' :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_eq :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_0 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_true :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_s :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_false :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_le :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_app :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_nil :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_add :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_min :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_rm :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_if_minsort :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_map :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_filter :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' encode_filter2 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' hole_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'1_3 :: eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' gen_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'2_3 :: Nat -> eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app' Generator Equations: gen_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'2_3(0) <=> eq gen_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'2_3(+(x, 1)) <=> cons_app'(eq, gen_eq:0':true:s:false:le:app:nil:add:min:if_min:rm:if_rm:minsort:if_minsort:map:filter:filter2:cons_app'2_3(x)) The following defined symbols remain to be analysed: app', encArg They will be analysed ascendingly in the following order: app' < encArg ---------------------------------------- (11) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) Transformed a relative TRS into a decreasing-loop problem. ---------------------------------------- (12) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0) -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0), y) -> true app'(app'(le, app'(s, x)), 0) -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) The (relative) TRS S consists of the following rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 Rewrite Strategy: INNERMOST ---------------------------------------- (13) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (14) Obligation: The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, x)) -> false app'(app'(eq, app'(s, x)), 0) -> false app'(app'(eq, app'(s, x)), app'(s, y)) -> app'(app'(eq, x), y) app'(app'(le, 0), y) -> true app'(app'(le, app'(s, x)), 0) -> false app'(app'(le, app'(s, x)), app'(s, y)) -> app'(app'(le, x), y) app'(app'(app, nil), y) -> y app'(app'(app, app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(min, app'(app'(add, n), nil)) -> n app'(min, app'(app'(add, n), app'(app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(app'(if_min, true), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(app'(if_min, false), app'(app'(add, n), app'(app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) app'(app'(rm, n), nil) -> nil app'(app'(rm, n), app'(app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(app'(app'(if_rm, true), n), app'(app'(add, m), x)) -> app'(app'(rm, n), x) app'(app'(app'(if_rm, false), n), app'(app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(app'(app'(if_minsort, true), app'(app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(app'(map, f), nil) -> nil app'(app'(map, f), app'(app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(app'(filter, f), nil) -> nil app'(app'(filter, f), app'(app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(app'(app'(app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(app'(app'(app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (15) NonCtorToCtorProof (UPPER BOUND(ID)) transformed non-ctor to ctor-system ---------------------------------------- (16) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) app'(c_app'(eq, 0), c_app'(s, x)) -> false app'(c_app'(minsort, nil), nil) -> nil app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) app'(c_app'(rm, n), nil) -> nil app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(app'(le, x), y) app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(app'(eq, x), y) app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) app'(c_app'(eq, c_app'(s, x)), 0) -> false app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) app'(c_app'(le, c_app'(s, x)), 0) -> false app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) app'(c_app'(app, nil), y) -> y app'(c_app'(map, f), nil) -> nil app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) app'(c_app'(le, 0), y) -> true app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) app'(c_app'(filter, f), nil) -> nil app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(app'(rm, n), x) app'(min, c_app'(c_app'(add, n), nil)) -> n app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) The (relative) TRS S consists of the following rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(x0, x1) -> c_app'(x0, x1) Rewrite Strategy: INNERMOST ---------------------------------------- (17) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (18) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true [1] app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) [1] app'(c_app'(eq, 0), c_app'(s, x)) -> false [1] app'(c_app'(minsort, nil), nil) -> nil [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) [1] app'(c_app'(rm, n), nil) -> nil [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(app'(le, x), y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(app'(eq, x), y) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) [1] app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) [1] app'(c_app'(eq, c_app'(s, x)), 0) -> false [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) [1] app'(c_app'(le, c_app'(s, x)), 0) -> false [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) [1] app'(c_app'(app, nil), y) -> y [1] app'(c_app'(map, f), nil) -> nil [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) [1] app'(c_app'(le, 0), y) -> true [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) [1] app'(c_app'(filter, f), nil) -> nil [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(app'(rm, n), x) [1] app'(min, c_app'(c_app'(add, n), nil)) -> n [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) [1] encArg(eq) -> eq [0] encArg(0) -> 0 [0] encArg(true) -> true [0] encArg(s) -> s [0] encArg(false) -> false [0] encArg(le) -> le [0] encArg(app) -> app [0] encArg(nil) -> nil [0] encArg(add) -> add [0] encArg(min) -> min [0] encArg(if_min) -> if_min [0] encArg(rm) -> rm [0] encArg(if_rm) -> if_rm [0] encArg(minsort) -> minsort [0] encArg(if_minsort) -> if_minsort [0] encArg(map) -> map [0] encArg(filter) -> filter [0] encArg(filter2) -> filter2 [0] encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) [0] encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) [0] encode_eq -> eq [0] encode_0 -> 0 [0] encode_true -> true [0] encode_s -> s [0] encode_false -> false [0] encode_le -> le [0] encode_app -> app [0] encode_nil -> nil [0] encode_add -> add [0] encode_min -> min [0] encode_if_min -> if_min [0] encode_rm -> rm [0] encode_if_rm -> if_rm [0] encode_minsort -> minsort [0] encode_if_minsort -> if_minsort [0] encode_map -> map [0] encode_filter -> filter [0] encode_filter2 -> filter2 [0] app'(x0, x1) -> c_app'(x0, x1) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (19) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (20) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true [1] app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) [1] app'(c_app'(eq, 0), c_app'(s, x)) -> false [1] app'(c_app'(minsort, nil), nil) -> nil [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) [1] app'(c_app'(rm, n), nil) -> nil [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(app'(le, x), y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(app'(eq, x), y) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) [1] app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) [1] app'(c_app'(eq, c_app'(s, x)), 0) -> false [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) [1] app'(c_app'(le, c_app'(s, x)), 0) -> false [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) [1] app'(c_app'(app, nil), y) -> y [1] app'(c_app'(map, f), nil) -> nil [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) [1] app'(c_app'(le, 0), y) -> true [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) [1] app'(c_app'(filter, f), nil) -> nil [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(app'(rm, n), x) [1] app'(min, c_app'(c_app'(add, n), nil)) -> n [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) [1] encArg(eq) -> eq [0] encArg(0) -> 0 [0] encArg(true) -> true [0] encArg(s) -> s [0] encArg(false) -> false [0] encArg(le) -> le [0] encArg(app) -> app [0] encArg(nil) -> nil [0] encArg(add) -> add [0] encArg(min) -> min [0] encArg(if_min) -> if_min [0] encArg(rm) -> rm [0] encArg(if_rm) -> if_rm [0] encArg(minsort) -> minsort [0] encArg(if_minsort) -> if_minsort [0] encArg(map) -> map [0] encArg(filter) -> filter [0] encArg(filter2) -> filter2 [0] encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) [0] encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) [0] encode_eq -> eq [0] encode_0 -> 0 [0] encode_true -> true [0] encode_s -> s [0] encode_false -> false [0] encode_le -> le [0] encode_app -> app [0] encode_nil -> nil [0] encode_add -> add [0] encode_min -> min [0] encode_if_min -> if_min [0] encode_rm -> rm [0] encode_if_rm -> if_rm [0] encode_minsort -> minsort [0] encode_if_minsort -> if_minsort [0] encode_map -> map [0] encode_filter -> filter [0] encode_filter2 -> filter2 [0] app'(x0, x1) -> c_app'(x0, x1) [0] The TRS has the following type information: app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' c_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' 0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' cons_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app' Rewrite Strategy: INNERMOST ---------------------------------------- (21) CompletionProof (UPPER BOUND(ID)) The TRS is a completely defined constructor system, as every type has a constant constructor and the following rules were added: encArg(v0) -> null_encArg [0] encode_app'(v0, v1) -> null_encode_app' [0] encode_eq -> null_encode_eq [0] encode_0 -> null_encode_0 [0] encode_true -> null_encode_true [0] encode_s -> null_encode_s [0] encode_false -> null_encode_false [0] encode_le -> null_encode_le [0] encode_app -> null_encode_app [0] encode_nil -> null_encode_nil [0] encode_add -> null_encode_add [0] encode_min -> null_encode_min [0] encode_if_min -> null_encode_if_min [0] encode_rm -> null_encode_rm [0] encode_if_rm -> null_encode_if_rm [0] encode_minsort -> null_encode_minsort [0] encode_if_minsort -> null_encode_if_minsort [0] encode_map -> null_encode_map [0] encode_filter -> null_encode_filter [0] encode_filter2 -> null_encode_filter2 [0] app'(v0, v1) -> null_app' [0] And the following fresh constants: null_encArg, null_encode_app', null_encode_eq, null_encode_0, null_encode_true, null_encode_s, null_encode_false, null_encode_le, null_encode_app, null_encode_nil, null_encode_add, null_encode_min, null_encode_if_min, null_encode_rm, null_encode_if_rm, null_encode_minsort, null_encode_if_minsort, null_encode_map, null_encode_filter, null_encode_filter2, null_app' ---------------------------------------- (22) Obligation: Runtime Complexity Weighted TRS where all functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true [1] app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) [1] app'(c_app'(eq, 0), c_app'(s, x)) -> false [1] app'(c_app'(minsort, nil), nil) -> nil [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) [1] app'(c_app'(rm, n), nil) -> nil [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(app'(le, x), y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(app'(eq, x), y) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) [1] app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) [1] app'(c_app'(eq, c_app'(s, x)), 0) -> false [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) [1] app'(c_app'(le, c_app'(s, x)), 0) -> false [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) [1] app'(c_app'(app, nil), y) -> y [1] app'(c_app'(map, f), nil) -> nil [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) [1] app'(c_app'(le, 0), y) -> true [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) [1] app'(c_app'(filter, f), nil) -> nil [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(app'(rm, n), x) [1] app'(min, c_app'(c_app'(add, n), nil)) -> n [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) [1] encArg(eq) -> eq [0] encArg(0) -> 0 [0] encArg(true) -> true [0] encArg(s) -> s [0] encArg(false) -> false [0] encArg(le) -> le [0] encArg(app) -> app [0] encArg(nil) -> nil [0] encArg(add) -> add [0] encArg(min) -> min [0] encArg(if_min) -> if_min [0] encArg(rm) -> rm [0] encArg(if_rm) -> if_rm [0] encArg(minsort) -> minsort [0] encArg(if_minsort) -> if_minsort [0] encArg(map) -> map [0] encArg(filter) -> filter [0] encArg(filter2) -> filter2 [0] encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) [0] encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) [0] encode_eq -> eq [0] encode_0 -> 0 [0] encode_true -> true [0] encode_s -> s [0] encode_false -> false [0] encode_le -> le [0] encode_app -> app [0] encode_nil -> nil [0] encode_add -> add [0] encode_min -> min [0] encode_if_min -> if_min [0] encode_rm -> rm [0] encode_if_rm -> if_rm [0] encode_minsort -> minsort [0] encode_if_minsort -> if_minsort [0] encode_map -> map [0] encode_filter -> filter [0] encode_filter2 -> filter2 [0] app'(x0, x1) -> c_app'(x0, x1) [0] encArg(v0) -> null_encArg [0] encode_app'(v0, v1) -> null_encode_app' [0] encode_eq -> null_encode_eq [0] encode_0 -> null_encode_0 [0] encode_true -> null_encode_true [0] encode_s -> null_encode_s [0] encode_false -> null_encode_false [0] encode_le -> null_encode_le [0] encode_app -> null_encode_app [0] encode_nil -> null_encode_nil [0] encode_add -> null_encode_add [0] encode_min -> null_encode_min [0] encode_if_min -> null_encode_if_min [0] encode_rm -> null_encode_rm [0] encode_if_rm -> null_encode_if_rm [0] encode_minsort -> null_encode_minsort [0] encode_if_minsort -> null_encode_if_minsort [0] encode_map -> null_encode_map [0] encode_filter -> null_encode_filter [0] encode_filter2 -> null_encode_filter2 [0] app'(v0, v1) -> null_app' [0] The TRS has the following type information: app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' c_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' 0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' cons_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' Rewrite Strategy: INNERMOST ---------------------------------------- (23) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: eq => 3 0 => 0 true => 17 filter => 5 add => 1 filter2 => 6 s => 16 false => 4 minsort => 13 nil => 14 app => 2 rm => 15 if_minsort => 8 min => 12 le => 10 if_min => 7 map => 11 if_rm => 9 null_encArg => 0 null_encode_app' => 0 null_encode_eq => 0 null_encode_0 => 0 null_encode_true => 0 null_encode_s => 0 null_encode_false => 0 null_encode_le => 0 null_encode_app => 0 null_encode_nil => 0 null_encode_add => 0 null_encode_min => 0 null_encode_if_min => 0 null_encode_rm => 0 null_encode_if_rm => 0 null_encode_minsort => 0 null_encode_if_minsort => 0 null_encode_map => 0 null_encode_filter => 0 null_encode_filter2 => 0 null_app' => 0 ---------------------------------------- (24) Obligation: Complexity RNTS consisting of the following rules: app'(z, z') -{ 1 }-> n :|: n >= 0, z' = 1 + (1 + 1 + n) + 14, z = 12 app'(z, z') -{ 1 }-> y :|: y >= 0, z = 1 + 2 + 14, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(app'(6, app'(f, x)), f), x), xs) :|: f >= 0, xs >= 0, x >= 0, z = 1 + 5 + f, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(app'(3, n), m)), n), app'(app'(1, m), x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + 15 + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(app'(3, n), app'(12, app'(app'(1, n), x)))), app'(app'(1, n), x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(7, app'(app'(10, n), m)), app'(app'(1, n), app'(app'(1, m), x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(5, f), xs) :|: f >= 0, xs >= 0, z = 1 + (1 + (1 + 6 + 4) + f) + x, x >= 0, z' = xs app'(z, z') -{ 1 }-> app'(app'(3, x), y) :|: z' = 1 + 16 + y, z = 1 + 3 + (1 + 16 + x), x >= 0, y >= 0 app'(z, z') -{ 1 }-> app'(app'(15, n), x) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + (1 + 9 + 17) + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(13, x), app'(app'(1, n), y)) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(10, x), y) :|: z' = 1 + 16 + y, x >= 0, y >= 0, z = 1 + 10 + (1 + 16 + x) app'(z, z') -{ 1 }-> app'(app'(1, m), app'(app'(15, n), x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, z = 1 + (1 + 9 + 4) + n, m >= 0 app'(z, z') -{ 1 }-> app'(app'(1, n), app'(app'(2, x), y)) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(1, n), app'(app'(13, app'(app'(2, app'(app'(15, n), x)), y)), 14)) :|: n >= 0, x >= 0, y >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x), z' = y app'(z, z') -{ 1 }-> app'(app'(1, x), app'(app'(5, f), xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x, z' = xs app'(z, z') -{ 1 }-> app'(app'(1, app'(f, x)), app'(app'(11, f), xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + 11 + f, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(12, app'(app'(1, m), x)) :|: n >= 0, x >= 0, z = 1 + 7 + 4, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(app'(1, n), x)) :|: n >= 0, z = 1 + 7 + 17, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> 4 :|: z' = 1 + 16 + x, x >= 0, z = 1 + 3 + 0 app'(z, z') -{ 1 }-> 4 :|: z = 1 + 3 + (1 + 16 + x), x >= 0, z' = 0 app'(z, z') -{ 1 }-> 4 :|: x >= 0, z = 1 + 10 + (1 + 16 + x), z' = 0 app'(z, z') -{ 1 }-> 17 :|: z = 1 + 3 + 0, z' = 0 app'(z, z') -{ 1 }-> 17 :|: y >= 0, z = 1 + 10 + 0, z' = y app'(z, z') -{ 1 }-> 14 :|: z' = 14, z = 1 + 13 + 14 app'(z, z') -{ 1 }-> 14 :|: n >= 0, z' = 14, z = 1 + 15 + n app'(z, z') -{ 1 }-> 14 :|: f >= 0, z' = 14, z = 1 + 11 + f app'(z, z') -{ 1 }-> 14 :|: f >= 0, z' = 14, z = 1 + 5 + f app'(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 app'(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 encArg(z) -{ 0 }-> app'(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> 9 :|: z = 9 encArg(z) -{ 0 }-> 8 :|: z = 8 encArg(z) -{ 0 }-> 7 :|: z = 7 encArg(z) -{ 0 }-> 6 :|: z = 6 encArg(z) -{ 0 }-> 5 :|: z = 5 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 17 :|: z = 17 encArg(z) -{ 0 }-> 16 :|: z = 16 encArg(z) -{ 0 }-> 15 :|: z = 15 encArg(z) -{ 0 }-> 14 :|: z = 14 encArg(z) -{ 0 }-> 13 :|: z = 13 encArg(z) -{ 0 }-> 12 :|: z = 12 encArg(z) -{ 0 }-> 11 :|: z = 11 encArg(z) -{ 0 }-> 10 :|: z = 10 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_0 -{ 0 }-> 0 :|: encode_add -{ 0 }-> 1 :|: encode_add -{ 0 }-> 0 :|: encode_app -{ 0 }-> 2 :|: encode_app -{ 0 }-> 0 :|: encode_app'(z, z') -{ 0 }-> app'(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_app'(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_eq -{ 0 }-> 3 :|: encode_eq -{ 0 }-> 0 :|: encode_false -{ 0 }-> 4 :|: encode_false -{ 0 }-> 0 :|: encode_filter -{ 0 }-> 5 :|: encode_filter -{ 0 }-> 0 :|: encode_filter2 -{ 0 }-> 6 :|: encode_filter2 -{ 0 }-> 0 :|: encode_if_min -{ 0 }-> 7 :|: encode_if_min -{ 0 }-> 0 :|: encode_if_minsort -{ 0 }-> 8 :|: encode_if_minsort -{ 0 }-> 0 :|: encode_if_rm -{ 0 }-> 9 :|: encode_if_rm -{ 0 }-> 0 :|: encode_le -{ 0 }-> 10 :|: encode_le -{ 0 }-> 0 :|: encode_map -{ 0 }-> 11 :|: encode_map -{ 0 }-> 0 :|: encode_min -{ 0 }-> 12 :|: encode_min -{ 0 }-> 0 :|: encode_minsort -{ 0 }-> 13 :|: encode_minsort -{ 0 }-> 0 :|: encode_nil -{ 0 }-> 14 :|: encode_nil -{ 0 }-> 0 :|: encode_rm -{ 0 }-> 15 :|: encode_rm -{ 0 }-> 0 :|: encode_s -{ 0 }-> 16 :|: encode_s -{ 0 }-> 0 :|: encode_true -{ 0 }-> 17 :|: encode_true -{ 0 }-> 0 :|: Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (25) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: encArg_1 encode_app'_2 encode_eq encode_0 encode_true encode_s encode_false encode_le encode_app encode_nil encode_add encode_min encode_if_min encode_rm encode_if_rm encode_minsort encode_if_minsort encode_map encode_filter encode_filter2 app'_2 Due to the following rules being added: encArg(v0) -> null_encArg [0] encode_app'(v0, v1) -> null_encode_app' [0] encode_eq -> null_encode_eq [0] encode_0 -> null_encode_0 [0] encode_true -> null_encode_true [0] encode_s -> null_encode_s [0] encode_false -> null_encode_false [0] encode_le -> null_encode_le [0] encode_app -> null_encode_app [0] encode_nil -> null_encode_nil [0] encode_add -> null_encode_add [0] encode_min -> null_encode_min [0] encode_if_min -> null_encode_if_min [0] encode_rm -> null_encode_rm [0] encode_if_rm -> null_encode_if_rm [0] encode_minsort -> null_encode_minsort [0] encode_if_minsort -> null_encode_if_minsort [0] encode_map -> null_encode_map [0] encode_filter -> null_encode_filter [0] encode_filter2 -> null_encode_filter2 [0] app'(v0, v1) -> null_app' [0] And the following fresh constants: null_encArg, null_encode_app', null_encode_eq, null_encode_0, null_encode_true, null_encode_s, null_encode_false, null_encode_le, null_encode_app, null_encode_nil, null_encode_add, null_encode_min, null_encode_if_min, null_encode_rm, null_encode_if_rm, null_encode_minsort, null_encode_if_minsort, null_encode_map, null_encode_filter, null_encode_filter2, null_app' ---------------------------------------- (26) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true [1] app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) [1] app'(c_app'(eq, 0), c_app'(s, x)) -> false [1] app'(c_app'(minsort, nil), nil) -> nil [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(app'(add, x), app'(app'(filter, f), xs)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(app, x), y)) [1] app'(c_app'(rm, n), nil) -> nil [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(app'(eq, n), app'(min, app'(app'(add, n), x)))), app'(app'(add, n), x)), y) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(app'(add, n), app'(app'(minsort, app'(app'(app, app'(app'(rm, n), x)), y)), nil)) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(app'(le, x), y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(app'(eq, x), y) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(app'(le, n), m)), app'(app'(add, n), app'(app'(add, m), x))) [1] app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) [1] app'(c_app'(eq, c_app'(s, x)), 0) -> false [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(app'(eq, n), m)), n), app'(app'(add, m), x)) [1] app'(c_app'(le, c_app'(s, x)), 0) -> false [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(app'(filter, f), xs) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(app'(add, m), app'(app'(rm, n), x)) [1] app'(c_app'(app, nil), y) -> y [1] app'(c_app'(map, f), nil) -> nil [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, n), x)) [1] app'(c_app'(le, 0), y) -> true [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(app'(minsort, x), app'(app'(add, n), y)) [1] app'(c_app'(filter, f), nil) -> nil [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(app'(rm, n), x) [1] app'(min, c_app'(c_app'(add, n), nil)) -> n [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(app'(add, m), x)) [1] encArg(eq) -> eq [0] encArg(0) -> 0 [0] encArg(true) -> true [0] encArg(s) -> s [0] encArg(false) -> false [0] encArg(le) -> le [0] encArg(app) -> app [0] encArg(nil) -> nil [0] encArg(add) -> add [0] encArg(min) -> min [0] encArg(if_min) -> if_min [0] encArg(rm) -> rm [0] encArg(if_rm) -> if_rm [0] encArg(minsort) -> minsort [0] encArg(if_minsort) -> if_minsort [0] encArg(map) -> map [0] encArg(filter) -> filter [0] encArg(filter2) -> filter2 [0] encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) [0] encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) [0] encode_eq -> eq [0] encode_0 -> 0 [0] encode_true -> true [0] encode_s -> s [0] encode_false -> false [0] encode_le -> le [0] encode_app -> app [0] encode_nil -> nil [0] encode_add -> add [0] encode_min -> min [0] encode_if_min -> if_min [0] encode_rm -> rm [0] encode_if_rm -> if_rm [0] encode_minsort -> minsort [0] encode_if_minsort -> if_minsort [0] encode_map -> map [0] encode_filter -> filter [0] encode_filter2 -> filter2 [0] app'(x0, x1) -> c_app'(x0, x1) [0] encArg(v0) -> null_encArg [0] encode_app'(v0, v1) -> null_encode_app' [0] encode_eq -> null_encode_eq [0] encode_0 -> null_encode_0 [0] encode_true -> null_encode_true [0] encode_s -> null_encode_s [0] encode_false -> null_encode_false [0] encode_le -> null_encode_le [0] encode_app -> null_encode_app [0] encode_nil -> null_encode_nil [0] encode_add -> null_encode_add [0] encode_min -> null_encode_min [0] encode_if_min -> null_encode_if_min [0] encode_rm -> null_encode_rm [0] encode_if_rm -> null_encode_if_rm [0] encode_minsort -> null_encode_minsort [0] encode_if_minsort -> null_encode_if_minsort [0] encode_map -> null_encode_map [0] encode_filter -> null_encode_filter [0] encode_filter2 -> null_encode_filter2 [0] app'(v0, v1) -> null_app' [0] The TRS has the following type information: app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' c_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' 0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' cons_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' Rewrite Strategy: INNERMOST ---------------------------------------- (27) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (28) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: app'(c_app'(eq, 0), 0) -> true [1] app'(c_app'(filter, f), c_app'(c_app'(add, x), xs)) -> app'(app'(app'(app'(filter2, app'(f, x)), f), x), xs) [1] app'(c_app'(eq, 0), c_app'(s, x)) -> false [1] app'(c_app'(minsort, nil), nil) -> nil [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(c_app'(add, x), app'(c_app'(filter, f), xs)) [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(c_app'(add, x), app'(null_app', xs)) [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(null_app', app'(c_app'(filter, f), xs)) [1] app'(c_app'(c_app'(c_app'(filter2, true), f), x), xs) -> app'(null_app', app'(null_app', xs)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(c_app'(add, n), app'(c_app'(app, x), y)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(c_app'(add, n), app'(null_app', y)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(c_app'(app, x), y)) [1] app'(c_app'(app, c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(null_app', y)) [1] app'(c_app'(rm, n), nil) -> nil [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(c_app'(eq, n), app'(min, app'(c_app'(add, n), x)))), app'(c_app'(add, n), x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(c_app'(eq, n), app'(min, app'(c_app'(add, n), x)))), app'(null_app', x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(c_app'(eq, n), app'(min, app'(null_app', x)))), app'(c_app'(add, n), x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(c_app'(eq, n), app'(min, app'(null_app', x)))), app'(null_app', x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(null_app', app'(min, app'(c_app'(add, n), x)))), app'(c_app'(add, n), x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(null_app', app'(min, app'(c_app'(add, n), x)))), app'(null_app', x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(null_app', app'(min, app'(null_app', x)))), app'(c_app'(add, n), x)), y) [1] app'(c_app'(minsort, c_app'(c_app'(add, n), x)), y) -> app'(app'(app'(if_minsort, app'(null_app', app'(min, app'(null_app', x)))), app'(null_app', x)), y) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(c_app'(add, n), app'(app'(minsort, app'(app'(app, app'(c_app'(rm, n), x)), y)), nil)) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(c_app'(add, n), app'(app'(minsort, app'(app'(app, app'(null_app', x)), y)), nil)) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(app'(minsort, app'(app'(app, app'(c_app'(rm, n), x)), y)), nil)) [1] app'(c_app'(c_app'(if_minsort, true), c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(app'(minsort, app'(app'(app, app'(null_app', x)), y)), nil)) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(c_app'(le, x), y) [1] app'(c_app'(le, c_app'(s, x)), c_app'(s, y)) -> app'(null_app', y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(c_app'(eq, x), y) [1] app'(c_app'(eq, c_app'(s, x)), c_app'(s, y)) -> app'(null_app', y) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(c_app'(le, n), m)), app'(c_app'(add, n), app'(c_app'(add, m), x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(c_app'(le, n), m)), app'(c_app'(add, n), app'(null_app', x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(c_app'(le, n), m)), app'(null_app', app'(c_app'(add, m), x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(c_app'(le, n), m)), app'(null_app', app'(null_app', x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(null_app', m)), app'(c_app'(add, n), app'(c_app'(add, m), x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(null_app', m)), app'(c_app'(add, n), app'(null_app', x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(null_app', m)), app'(null_app', app'(c_app'(add, m), x))) [1] app'(min, c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(app'(if_min, app'(null_app', m)), app'(null_app', app'(null_app', x))) [1] app'(c_app'(map, f), c_app'(c_app'(add, x), xs)) -> app'(app'(add, app'(f, x)), app'(app'(map, f), xs)) [1] app'(c_app'(eq, c_app'(s, x)), 0) -> false [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(c_app'(eq, n), m)), n), app'(c_app'(add, m), x)) [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(c_app'(eq, n), m)), n), app'(null_app', x)) [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(null_app', m)), n), app'(c_app'(add, m), x)) [1] app'(c_app'(rm, n), c_app'(c_app'(add, m), x)) -> app'(app'(app'(if_rm, app'(null_app', m)), n), app'(null_app', x)) [1] app'(c_app'(le, c_app'(s, x)), 0) -> false [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(c_app'(filter, f), xs) [1] app'(c_app'(c_app'(c_app'(filter2, false), f), x), xs) -> app'(null_app', xs) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(c_app'(add, m), app'(c_app'(rm, n), x)) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(c_app'(add, m), app'(null_app', x)) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(null_app', app'(c_app'(rm, n), x)) [1] app'(c_app'(c_app'(if_rm, false), n), c_app'(c_app'(add, m), x)) -> app'(null_app', app'(null_app', x)) [1] app'(c_app'(app, nil), y) -> y [1] app'(c_app'(map, f), nil) -> nil [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(c_app'(add, n), x)) [1] app'(c_app'(if_min, true), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(null_app', x)) [1] app'(c_app'(le, 0), y) -> true [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(c_app'(minsort, x), app'(c_app'(add, n), y)) [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(c_app'(minsort, x), app'(null_app', y)) [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(c_app'(add, n), y)) [1] app'(c_app'(c_app'(if_minsort, false), c_app'(c_app'(add, n), x)), y) -> app'(null_app', app'(null_app', y)) [1] app'(c_app'(filter, f), nil) -> nil [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(c_app'(rm, n), x) [1] app'(c_app'(c_app'(if_rm, true), n), c_app'(c_app'(add, m), x)) -> app'(null_app', x) [1] app'(min, c_app'(c_app'(add, n), nil)) -> n [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(c_app'(add, m), x)) [1] app'(c_app'(if_min, false), c_app'(c_app'(add, n), c_app'(c_app'(add, m), x))) -> app'(min, app'(null_app', x)) [1] encArg(eq) -> eq [0] encArg(0) -> 0 [0] encArg(true) -> true [0] encArg(s) -> s [0] encArg(false) -> false [0] encArg(le) -> le [0] encArg(app) -> app [0] encArg(nil) -> nil [0] encArg(add) -> add [0] encArg(min) -> min [0] encArg(if_min) -> if_min [0] encArg(rm) -> rm [0] encArg(if_rm) -> if_rm [0] encArg(minsort) -> minsort [0] encArg(if_minsort) -> if_minsort [0] encArg(map) -> map [0] encArg(filter) -> filter [0] encArg(filter2) -> filter2 [0] encArg(cons_app'(x_1, x_2)) -> app'(encArg(x_1), encArg(x_2)) [0] encode_app'(x_1, x_2) -> app'(encArg(x_1), encArg(x_2)) [0] encode_eq -> eq [0] encode_0 -> 0 [0] encode_true -> true [0] encode_s -> s [0] encode_false -> false [0] encode_le -> le [0] encode_app -> app [0] encode_nil -> nil [0] encode_add -> add [0] encode_min -> min [0] encode_if_min -> if_min [0] encode_rm -> rm [0] encode_if_rm -> if_rm [0] encode_minsort -> minsort [0] encode_if_minsort -> if_minsort [0] encode_map -> map [0] encode_filter -> filter [0] encode_filter2 -> filter2 [0] app'(x0, x1) -> c_app'(x0, x1) [0] encArg(v0) -> null_encArg [0] encode_app'(v0, v1) -> null_encode_app' [0] encode_eq -> null_encode_eq [0] encode_0 -> null_encode_0 [0] encode_true -> null_encode_true [0] encode_s -> null_encode_s [0] encode_false -> null_encode_false [0] encode_le -> null_encode_le [0] encode_app -> null_encode_app [0] encode_nil -> null_encode_nil [0] encode_add -> null_encode_add [0] encode_min -> null_encode_min [0] encode_if_min -> null_encode_if_min [0] encode_rm -> null_encode_rm [0] encode_if_rm -> null_encode_if_rm [0] encode_minsort -> null_encode_minsort [0] encode_if_minsort -> null_encode_if_minsort [0] encode_map -> null_encode_map [0] encode_filter -> null_encode_filter [0] encode_filter2 -> null_encode_filter2 [0] app'(v0, v1) -> null_app' [0] The TRS has the following type information: app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' c_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' 0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' cons_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' -> eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encArg :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_eq :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_0 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_true :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_s :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_false :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_le :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_app :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_nil :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_add :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_min :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_rm :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_if_minsort :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_map :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_encode_filter2 :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' null_app' :: eq:0:c_app':true:filter:add:filter2:s:false:minsort:nil:app:rm:if_minsort:min:le:if_min:map:if_rm:cons_app':null_encArg:null_encode_app':null_encode_eq:null_encode_0:null_encode_true:null_encode_s:null_encode_false:null_encode_le:null_encode_app:null_encode_nil:null_encode_add:null_encode_min:null_encode_if_min:null_encode_rm:null_encode_if_rm:null_encode_minsort:null_encode_if_minsort:null_encode_map:null_encode_filter:null_encode_filter2:null_app' Rewrite Strategy: INNERMOST ---------------------------------------- (29) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: eq => 3 0 => 0 true => 17 filter => 5 add => 1 filter2 => 6 s => 16 false => 4 minsort => 13 nil => 14 app => 2 rm => 15 if_minsort => 8 min => 12 le => 10 if_min => 7 map => 11 if_rm => 9 null_encArg => 0 null_encode_app' => 0 null_encode_eq => 0 null_encode_0 => 0 null_encode_true => 0 null_encode_s => 0 null_encode_false => 0 null_encode_le => 0 null_encode_app => 0 null_encode_nil => 0 null_encode_add => 0 null_encode_min => 0 null_encode_if_min => 0 null_encode_rm => 0 null_encode_if_rm => 0 null_encode_minsort => 0 null_encode_if_minsort => 0 null_encode_map => 0 null_encode_filter => 0 null_encode_filter2 => 0 null_app' => 0 ---------------------------------------- (30) Obligation: Complexity RNTS consisting of the following rules: app'(z, z') -{ 1 }-> n :|: n >= 0, z' = 1 + (1 + 1 + n) + 14, z = 12 app'(z, z') -{ 1 }-> y :|: y >= 0, z = 1 + 2 + 14, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(app'(6, app'(f, x)), f), x), xs) :|: f >= 0, xs >= 0, x >= 0, z = 1 + 5 + f, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(0, m)), n), app'(0, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + 15 + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(0, m)), n), app'(1 + 1 + m, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + 15 + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(1 + 3 + n, m)), n), app'(0, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + 15 + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(1 + 3 + n, m)), n), app'(1 + 1 + m, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + 15 + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(0, x)))), app'(0, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(0, x)))), app'(1 + 1 + n, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(1 + 1 + n, x)))), app'(0, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(1 + 1 + n, x)))), app'(1 + 1 + n, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(0, x)))), app'(0, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(0, x)))), app'(1 + 1 + n, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(1 + 1 + n, x)))), app'(0, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(1 + 1 + n, x)))), app'(1 + 1 + n, x)), y) :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(0, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(0, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(1 + 1 + n, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(1 + 1 + n, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(0, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(0, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(1 + 1 + n, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(1 + 1 + n, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(1, app'(f, x)), app'(app'(11, f), xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + 11 + f, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(12, app'(0, x)) :|: n >= 0, z = 1 + 7 + 17, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(0, x)) :|: n >= 0, x >= 0, z = 1 + 7 + 4, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(1 + 1 + m, x)) :|: n >= 0, x >= 0, z = 1 + 7 + 4, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(1 + 1 + n, x)) :|: n >= 0, z = 1 + 7 + 17, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(0, x) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + (1 + 9 + 17) + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(0, xs) :|: f >= 0, xs >= 0, z = 1 + (1 + (1 + 6 + 4) + f) + x, x >= 0, z' = xs app'(z, z') -{ 1 }-> app'(0, y) :|: z' = 1 + 16 + y, x >= 0, y >= 0, z = 1 + 10 + (1 + 16 + x) app'(z, z') -{ 1 }-> app'(0, y) :|: z' = 1 + 16 + y, z = 1 + 3 + (1 + 16 + x), x >= 0, y >= 0 app'(z, z') -{ 1 }-> app'(0, app'(app'(13, app'(app'(2, app'(0, x)), y)), 14)) :|: n >= 0, x >= 0, y >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x), z' = y app'(z, z') -{ 1 }-> app'(0, app'(app'(13, app'(app'(2, app'(1 + 15 + n, x)), y)), 14)) :|: n >= 0, x >= 0, y >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x), z' = y app'(z, z') -{ 1 }-> app'(0, app'(0, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, z = 1 + (1 + 9 + 4) + n, m >= 0 app'(z, z') -{ 1 }-> app'(0, app'(0, xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x, z' = xs app'(z, z') -{ 1 }-> app'(0, app'(0, y)) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(0, app'(0, y)) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(0, app'(1 + 5 + f, xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x, z' = xs app'(z, z') -{ 1 }-> app'(0, app'(1 + 2 + x, y)) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(0, app'(1 + 15 + n, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, z = 1 + (1 + 9 + 4) + n, m >= 0 app'(z, z') -{ 1 }-> app'(0, app'(1 + 1 + n, y)) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(1 + 5 + f, xs) :|: f >= 0, xs >= 0, z = 1 + (1 + (1 + 6 + 4) + f) + x, x >= 0, z' = xs app'(z, z') -{ 1 }-> app'(1 + 3 + x, y) :|: z' = 1 + 16 + y, z = 1 + 3 + (1 + 16 + x), x >= 0, y >= 0 app'(z, z') -{ 1 }-> app'(1 + 15 + n, x) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, z = 1 + (1 + 9 + 17) + n, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 13 + x, app'(0, y)) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(1 + 13 + x, app'(1 + 1 + n, y)) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(1 + 10 + x, y) :|: z' = 1 + 16 + y, x >= 0, y >= 0, z = 1 + 10 + (1 + 16 + x) app'(z, z') -{ 1 }-> app'(1 + 1 + m, app'(0, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, z = 1 + (1 + 9 + 4) + n, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + m, app'(1 + 15 + n, x)) :|: n >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, z = 1 + (1 + 9 + 4) + n, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(app'(13, app'(app'(2, app'(0, x)), y)), 14)) :|: n >= 0, x >= 0, y >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x), z' = y app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(app'(13, app'(app'(2, app'(1 + 15 + n, x)), y)), 14)) :|: n >= 0, x >= 0, y >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x), z' = y app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(0, y)) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(1 + 2 + x, y)) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, y >= 0, z' = y app'(z, z') -{ 1 }-> app'(1 + 1 + x, app'(0, xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x, z' = xs app'(z, z') -{ 1 }-> app'(1 + 1 + x, app'(1 + 5 + f, xs)) :|: f >= 0, xs >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x, z' = xs app'(z, z') -{ 1 }-> 4 :|: z' = 1 + 16 + x, x >= 0, z = 1 + 3 + 0 app'(z, z') -{ 1 }-> 4 :|: z = 1 + 3 + (1 + 16 + x), x >= 0, z' = 0 app'(z, z') -{ 1 }-> 4 :|: x >= 0, z = 1 + 10 + (1 + 16 + x), z' = 0 app'(z, z') -{ 1 }-> 17 :|: z = 1 + 3 + 0, z' = 0 app'(z, z') -{ 1 }-> 17 :|: y >= 0, z = 1 + 10 + 0, z' = y app'(z, z') -{ 1 }-> 14 :|: z' = 14, z = 1 + 13 + 14 app'(z, z') -{ 1 }-> 14 :|: n >= 0, z' = 14, z = 1 + 15 + n app'(z, z') -{ 1 }-> 14 :|: f >= 0, z' = 14, z = 1 + 11 + f app'(z, z') -{ 1 }-> 14 :|: f >= 0, z' = 14, z = 1 + 5 + f app'(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 app'(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 encArg(z) -{ 0 }-> app'(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> 9 :|: z = 9 encArg(z) -{ 0 }-> 8 :|: z = 8 encArg(z) -{ 0 }-> 7 :|: z = 7 encArg(z) -{ 0 }-> 6 :|: z = 6 encArg(z) -{ 0 }-> 5 :|: z = 5 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 17 :|: z = 17 encArg(z) -{ 0 }-> 16 :|: z = 16 encArg(z) -{ 0 }-> 15 :|: z = 15 encArg(z) -{ 0 }-> 14 :|: z = 14 encArg(z) -{ 0 }-> 13 :|: z = 13 encArg(z) -{ 0 }-> 12 :|: z = 12 encArg(z) -{ 0 }-> 11 :|: z = 11 encArg(z) -{ 0 }-> 10 :|: z = 10 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_0 -{ 0 }-> 0 :|: encode_add -{ 0 }-> 1 :|: encode_add -{ 0 }-> 0 :|: encode_app -{ 0 }-> 2 :|: encode_app -{ 0 }-> 0 :|: encode_app'(z, z') -{ 0 }-> app'(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_app'(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_eq -{ 0 }-> 3 :|: encode_eq -{ 0 }-> 0 :|: encode_false -{ 0 }-> 4 :|: encode_false -{ 0 }-> 0 :|: encode_filter -{ 0 }-> 5 :|: encode_filter -{ 0 }-> 0 :|: encode_filter2 -{ 0 }-> 6 :|: encode_filter2 -{ 0 }-> 0 :|: encode_if_min -{ 0 }-> 7 :|: encode_if_min -{ 0 }-> 0 :|: encode_if_minsort -{ 0 }-> 8 :|: encode_if_minsort -{ 0 }-> 0 :|: encode_if_rm -{ 0 }-> 9 :|: encode_if_rm -{ 0 }-> 0 :|: encode_le -{ 0 }-> 10 :|: encode_le -{ 0 }-> 0 :|: encode_map -{ 0 }-> 11 :|: encode_map -{ 0 }-> 0 :|: encode_min -{ 0 }-> 12 :|: encode_min -{ 0 }-> 0 :|: encode_minsort -{ 0 }-> 13 :|: encode_minsort -{ 0 }-> 0 :|: encode_nil -{ 0 }-> 14 :|: encode_nil -{ 0 }-> 0 :|: encode_rm -{ 0 }-> 15 :|: encode_rm -{ 0 }-> 0 :|: encode_s -{ 0 }-> 16 :|: encode_s -{ 0 }-> 0 :|: encode_true -{ 0 }-> 17 :|: encode_true -{ 0 }-> 0 :|: ---------------------------------------- (31) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (32) Obligation: Complexity RNTS consisting of the following rules: app'(z, z') -{ 1 }-> z' :|: z' >= 0, z = 1 + 2 + 14 app'(z, z') -{ 1 }-> app'(app'(app'(app'(6, app'(z - 6, x)), z - 6), x), xs) :|: z - 6 >= 0, xs >= 0, x >= 0, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(0, m)), z - 16), app'(0, x)) :|: z - 16 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(0, m)), z - 16), app'(1 + 1 + m, x)) :|: z - 16 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(1 + 3 + (z - 16), m)), z - 16), app'(0, x)) :|: z - 16 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(9, app'(1 + 3 + (z - 16), m)), z - 16), app'(1 + 1 + m, x)) :|: z - 16 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(0, x)))), app'(0, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(0, x)))), app'(1 + 1 + n, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(1 + 1 + n, x)))), app'(0, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(0, app'(12, app'(1 + 1 + n, x)))), app'(1 + 1 + n, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(0, x)))), app'(0, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(0, x)))), app'(1 + 1 + n, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(1 + 1 + n, x)))), app'(0, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(app'(8, app'(1 + 3 + n, app'(12, app'(1 + 1 + n, x)))), app'(1 + 1 + n, x)), z') :|: n >= 0, z = 1 + 13 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(0, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(0, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(1 + 1 + n, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(0, m)), app'(1 + 1 + n, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(0, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(0, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(1 + 1 + n, app'(0, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(7, app'(1 + 10 + n, m)), app'(1 + 1 + n, app'(1 + 1 + m, x))) :|: n >= 0, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), z = 12, m >= 0 app'(z, z') -{ 1 }-> app'(app'(1, app'(z - 12, x)), app'(app'(11, z - 12), xs)) :|: z - 12 >= 0, xs >= 0, x >= 0, z' = 1 + (1 + 1 + x) + xs app'(z, z') -{ 1 }-> app'(12, app'(0, x)) :|: n >= 0, z = 1 + 7 + 17, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(0, x)) :|: n >= 0, x >= 0, z = 1 + 7 + 4, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(1 + 1 + m, x)) :|: n >= 0, x >= 0, z = 1 + 7 + 4, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(12, app'(1 + 1 + n, x)) :|: n >= 0, z = 1 + 7 + 17, x >= 0, z' = 1 + (1 + 1 + n) + (1 + (1 + 1 + m) + x), m >= 0 app'(z, z') -{ 1 }-> app'(0, x) :|: z - 28 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(0, z') :|: f >= 0, z' >= 0, z = 1 + (1 + (1 + 6 + 4) + f) + x, x >= 0 app'(z, z') -{ 1 }-> app'(0, app'(app'(13, app'(app'(2, app'(0, x)), z')), 14)) :|: n >= 0, x >= 0, z' >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x) app'(z, z') -{ 1 }-> app'(0, app'(app'(13, app'(app'(2, app'(1 + 15 + n, x)), z')), 14)) :|: n >= 0, x >= 0, z' >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x) app'(z, z') -{ 1 }-> app'(0, app'(0, x)) :|: z - 15 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(0, app'(0, z')) :|: f >= 0, z' >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x app'(z, z') -{ 1 }-> app'(0, app'(0, z')) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(0, app'(0, z')) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(0, app'(1 + 5 + f, z')) :|: f >= 0, z' >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x app'(z, z') -{ 1 }-> app'(0, app'(1 + 2 + x, z')) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(0, app'(1 + 15 + (z - 15), x)) :|: z - 15 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(0, app'(1 + 1 + n, z')) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(0, z' - 17) :|: z - 28 >= 0, z' - 17 >= 0 app'(z, z') -{ 1 }-> app'(0, z' - 17) :|: z - 21 >= 0, z' - 17 >= 0 app'(z, z') -{ 1 }-> app'(1 + 5 + f, z') :|: f >= 0, z' >= 0, z = 1 + (1 + (1 + 6 + 4) + f) + x, x >= 0 app'(z, z') -{ 1 }-> app'(1 + 3 + (z - 21), z' - 17) :|: z - 21 >= 0, z' - 17 >= 0 app'(z, z') -{ 1 }-> app'(1 + 15 + (z - 28), x) :|: z - 28 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 13 + x, app'(0, z')) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(1 + 13 + x, app'(1 + 1 + n, z')) :|: z = 1 + (1 + 8 + 4) + (1 + (1 + 1 + n) + x), n >= 0, x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(1 + 10 + (z - 28), z' - 17) :|: z - 28 >= 0, z' - 17 >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + m, app'(0, x)) :|: z - 15 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + m, app'(1 + 15 + (z - 15), x)) :|: z - 15 >= 0, z' = 1 + (1 + 1 + m) + x, x >= 0, m >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(app'(13, app'(app'(2, app'(0, x)), z')), 14)) :|: n >= 0, x >= 0, z' >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x) app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(app'(13, app'(app'(2, app'(1 + 15 + n, x)), z')), 14)) :|: n >= 0, x >= 0, z' >= 0, z = 1 + (1 + 8 + 17) + (1 + (1 + 1 + n) + x) app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(0, z')) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + n, app'(1 + 2 + x, z')) :|: n >= 0, z = 1 + 2 + (1 + (1 + 1 + n) + x), x >= 0, z' >= 0 app'(z, z') -{ 1 }-> app'(1 + 1 + x, app'(0, z')) :|: f >= 0, z' >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x app'(z, z') -{ 1 }-> app'(1 + 1 + x, app'(1 + 5 + f, z')) :|: f >= 0, z' >= 0, x >= 0, z = 1 + (1 + (1 + 6 + 17) + f) + x app'(z, z') -{ 1 }-> 4 :|: z' - 17 >= 0, z = 1 + 3 + 0 app'(z, z') -{ 1 }-> 4 :|: z - 21 >= 0, z' = 0 app'(z, z') -{ 1 }-> 4 :|: z - 28 >= 0, z' = 0 app'(z, z') -{ 1 }-> 17 :|: z = 1 + 3 + 0, z' = 0 app'(z, z') -{ 1 }-> 17 :|: z' >= 0, z = 1 + 10 + 0 app'(z, z') -{ 1 }-> 14 :|: z' = 14, z = 1 + 13 + 14 app'(z, z') -{ 1 }-> 14 :|: z - 16 >= 0, z' = 14 app'(z, z') -{ 1 }-> 14 :|: z - 12 >= 0, z' = 14 app'(z, z') -{ 1 }-> 14 :|: z - 6 >= 0, z' = 14 app'(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 app'(z, z') -{ 1 }-> z' - 17 :|: z' - 17 >= 0, z = 12 app'(z, z') -{ 0 }-> 1 + z + z' :|: z >= 0, z' >= 0 encArg(z) -{ 0 }-> app'(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> 9 :|: z = 9 encArg(z) -{ 0 }-> 8 :|: z = 8 encArg(z) -{ 0 }-> 7 :|: z = 7 encArg(z) -{ 0 }-> 6 :|: z = 6 encArg(z) -{ 0 }-> 5 :|: z = 5 encArg(z) -{ 0 }-> 4 :|: z = 4 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 17 :|: z = 17 encArg(z) -{ 0 }-> 16 :|: z = 16 encArg(z) -{ 0 }-> 15 :|: z = 15 encArg(z) -{ 0 }-> 14 :|: z = 14 encArg(z) -{ 0 }-> 13 :|: z = 13 encArg(z) -{ 0 }-> 12 :|: z = 12 encArg(z) -{ 0 }-> 11 :|: z = 11 encArg(z) -{ 0 }-> 10 :|: z = 10 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encode_0 -{ 0 }-> 0 :|: encode_add -{ 0 }-> 1 :|: encode_add -{ 0 }-> 0 :|: encode_app -{ 0 }-> 2 :|: encode_app -{ 0 }-> 0 :|: encode_app'(z, z') -{ 0 }-> app'(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_app'(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_eq -{ 0 }-> 3 :|: encode_eq -{ 0 }-> 0 :|: encode_false -{ 0 }-> 4 :|: encode_false -{ 0 }-> 0 :|: encode_filter -{ 0 }-> 5 :|: encode_filter -{ 0 }-> 0 :|: encode_filter2 -{ 0 }-> 6 :|: encode_filter2 -{ 0 }-> 0 :|: encode_if_min -{ 0 }-> 7 :|: encode_if_min -{ 0 }-> 0 :|: encode_if_minsort -{ 0 }-> 8 :|: encode_if_minsort -{ 0 }-> 0 :|: encode_if_rm -{ 0 }-> 9 :|: encode_if_rm -{ 0 }-> 0 :|: encode_le -{ 0 }-> 10 :|: encode_le -{ 0 }-> 0 :|: encode_map -{ 0 }-> 11 :|: encode_map -{ 0 }-> 0 :|: encode_min -{ 0 }-> 12 :|: encode_min -{ 0 }-> 0 :|: encode_minsort -{ 0 }-> 13 :|: encode_minsort -{ 0 }-> 0 :|: encode_nil -{ 0 }-> 14 :|: encode_nil -{ 0 }-> 0 :|: encode_rm -{ 0 }-> 15 :|: encode_rm -{ 0 }-> 0 :|: encode_s -{ 0 }-> 16 :|: encode_s -{ 0 }-> 0 :|: encode_true -{ 0 }-> 17 :|: encode_true -{ 0 }-> 0 :|: ---------------------------------------- (33) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS to CDT ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(eq) -> c ENCARG(0) -> c1 ENCARG(true) -> c2 ENCARG(s) -> c3 ENCARG(false) -> c4 ENCARG(le) -> c5 ENCARG(app) -> c6 ENCARG(nil) -> c7 ENCARG(add) -> c8 ENCARG(min) -> c9 ENCARG(if_min) -> c10 ENCARG(rm) -> c11 ENCARG(if_rm) -> c12 ENCARG(minsort) -> c13 ENCARG(if_minsort) -> c14 ENCARG(map) -> c15 ENCARG(filter) -> c16 ENCARG(filter2) -> c17 ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_APP'(z0, z1) -> c19(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_EQ -> c20 ENCODE_0 -> c21 ENCODE_TRUE -> c22 ENCODE_S -> c23 ENCODE_FALSE -> c24 ENCODE_LE -> c25 ENCODE_APP -> c26 ENCODE_NIL -> c27 ENCODE_ADD -> c28 ENCODE_MIN -> c29 ENCODE_IF_MIN -> c30 ENCODE_RM -> c31 ENCODE_IF_RM -> c32 ENCODE_MINSORT -> c33 ENCODE_IF_MINSORT -> c34 ENCODE_MAP -> c35 ENCODE_FILTER -> c36 ENCODE_FILTER2 -> c37 APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1), APP'(eq, z0)) APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1), APP'(le, z0)) APP'(app'(app, nil), z0) -> c45 APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(add, z0), app'(app'(app, z1), z2)), APP'(add, z0), APP'(app'(app, z1), z2), APP'(app, z1)) APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(if_min, app'(app'(le, z0), z1)), APP'(app'(le, z0), z1), APP'(le, z0), APP'(app'(add, z0), app'(app'(add, z1), z2)), APP'(add, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2)), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2)), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(rm, z0), nil) -> c51 APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(if_rm, app'(app'(eq, z0), z1)), z0), APP'(if_rm, app'(app'(eq, z0), z1)), APP'(app'(eq, z0), z1), APP'(eq, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(add, z1), app'(app'(rm, z0), z2)), APP'(add, z1), APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(minsort, nil), nil) -> c55 APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), APP'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(eq, z0), APP'(min, app'(app'(add, z0), z1)), APP'(app'(add, z0), z1), APP'(add, z0), APP'(app'(add, z0), z1), APP'(add, z0)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)), APP'(add, z0), APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app, app'(app'(rm, z0), z1)), APP'(app'(rm, z0), z1), APP'(rm, z0)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2)), APP'(minsort, z1), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(map, z0), nil) -> c59 APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)), APP'(add, app'(z0, z1)), APP'(z0, z1), APP'(app'(map, z0), z2), APP'(map, z0)) APP'(app'(filter, z0), nil) -> c61 APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(app'(app'(filter2, app'(z0, z1)), z0), z1), APP'(app'(filter2, app'(z0, z1)), z0), APP'(filter2, app'(z0, z1)), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(add, z1), app'(app'(filter, z0), z2)), APP'(add, z1), APP'(app'(filter, z0), z2), APP'(filter, z0)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2), APP'(filter, z0)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1), APP'(eq, z0)) APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1), APP'(le, z0)) APP'(app'(app, nil), z0) -> c45 APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(add, z0), app'(app'(app, z1), z2)), APP'(add, z0), APP'(app'(app, z1), z2), APP'(app, z1)) APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(if_min, app'(app'(le, z0), z1)), APP'(app'(le, z0), z1), APP'(le, z0), APP'(app'(add, z0), app'(app'(add, z1), z2)), APP'(add, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2)), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2)), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(rm, z0), nil) -> c51 APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(if_rm, app'(app'(eq, z0), z1)), z0), APP'(if_rm, app'(app'(eq, z0), z1)), APP'(app'(eq, z0), z1), APP'(eq, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(add, z1), app'(app'(rm, z0), z2)), APP'(add, z1), APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(minsort, nil), nil) -> c55 APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), APP'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(eq, z0), APP'(min, app'(app'(add, z0), z1)), APP'(app'(add, z0), z1), APP'(add, z0), APP'(app'(add, z0), z1), APP'(add, z0)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)), APP'(add, z0), APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app, app'(app'(rm, z0), z1)), APP'(app'(rm, z0), z1), APP'(rm, z0)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2)), APP'(minsort, z1), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(map, z0), nil) -> c59 APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)), APP'(add, app'(z0, z1)), APP'(z0, z1), APP'(app'(map, z0), z2), APP'(map, z0)) APP'(app'(filter, z0), nil) -> c61 APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(app'(app'(filter2, app'(z0, z1)), z0), z1), APP'(app'(filter2, app'(z0, z1)), z0), APP'(filter2, app'(z0, z1)), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(add, z1), app'(app'(filter, z0), z2)), APP'(add, z1), APP'(app'(filter, z0), z2), APP'(filter, z0)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2), APP'(filter, z0)) K tuples:none Defined Rule Symbols: app'_2, encArg_1, encode_app'_2, encode_eq, encode_0, encode_true, encode_s, encode_false, encode_le, encode_app, encode_nil, encode_add, encode_min, encode_if_min, encode_rm, encode_if_rm, encode_minsort, encode_if_minsort, encode_map, encode_filter, encode_filter2 Defined Pair Symbols: ENCARG_1, ENCODE_APP'_2, ENCODE_EQ, ENCODE_0, ENCODE_TRUE, ENCODE_S, ENCODE_FALSE, ENCODE_LE, ENCODE_APP, ENCODE_NIL, ENCODE_ADD, ENCODE_MIN, ENCODE_IF_MIN, ENCODE_RM, ENCODE_IF_RM, ENCODE_MINSORT, ENCODE_IF_MINSORT, ENCODE_MAP, ENCODE_FILTER, ENCODE_FILTER2, APP'_2 Compound Symbols: c, c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13, c14, c15, c16, c17, c18_3, c19_3, c20, c21, c22, c23, c24, c25, c26, c27, c28, c29, c30, c31, c32, c33, c34, c35, c36, c37, c38, c39, c40, c41_2, c42, c43, c44_2, c45, c46_4, c47, c48_8, c49_3, c50_3, c51, c52_7, c53_2, c54_4, c55, c56_10, c57_8, c58_4, c59, c60_5, c61, c62_5, c63_4, c64_2 ---------------------------------------- (35) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 36 trailing nodes: ENCARG(filter) -> c16 ENCARG(if_rm) -> c12 ENCODE_FILTER2 -> c37 ENCODE_MIN -> c29 ENCODE_FALSE -> c24 ENCARG(filter2) -> c17 ENCODE_MAP -> c35 ENCARG(false) -> c4 ENCODE_MINSORT -> c33 ENCODE_APP -> c26 ENCODE_IF_RM -> c32 ENCODE_NIL -> c27 ENCODE_IF_MIN -> c30 ENCARG(min) -> c9 ENCARG(map) -> c15 ENCODE_S -> c23 ENCODE_EQ -> c20 ENCARG(add) -> c8 ENCARG(nil) -> c7 ENCODE_FILTER -> c36 ENCARG(minsort) -> c13 ENCARG(0) -> c1 ENCARG(rm) -> c11 ENCODE_TRUE -> c22 ENCODE_ADD -> c28 ENCARG(true) -> c2 ENCARG(if_min) -> c10 ENCODE_IF_MINSORT -> c34 ENCODE_LE -> c25 ENCARG(if_minsort) -> c14 ENCODE_RM -> c31 ENCARG(s) -> c3 ENCARG(eq) -> c ENCARG(app) -> c6 ENCARG(le) -> c5 ENCODE_0 -> c21 ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_APP'(z0, z1) -> c19(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1), APP'(eq, z0)) APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1), APP'(le, z0)) APP'(app'(app, nil), z0) -> c45 APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(add, z0), app'(app'(app, z1), z2)), APP'(add, z0), APP'(app'(app, z1), z2), APP'(app, z1)) APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(if_min, app'(app'(le, z0), z1)), APP'(app'(le, z0), z1), APP'(le, z0), APP'(app'(add, z0), app'(app'(add, z1), z2)), APP'(add, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2)), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2)), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(rm, z0), nil) -> c51 APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(if_rm, app'(app'(eq, z0), z1)), z0), APP'(if_rm, app'(app'(eq, z0), z1)), APP'(app'(eq, z0), z1), APP'(eq, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(add, z1), app'(app'(rm, z0), z2)), APP'(add, z1), APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(minsort, nil), nil) -> c55 APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), APP'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(eq, z0), APP'(min, app'(app'(add, z0), z1)), APP'(app'(add, z0), z1), APP'(add, z0), APP'(app'(add, z0), z1), APP'(add, z0)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)), APP'(add, z0), APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app, app'(app'(rm, z0), z1)), APP'(app'(rm, z0), z1), APP'(rm, z0)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2)), APP'(minsort, z1), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(map, z0), nil) -> c59 APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)), APP'(add, app'(z0, z1)), APP'(z0, z1), APP'(app'(map, z0), z2), APP'(map, z0)) APP'(app'(filter, z0), nil) -> c61 APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(app'(app'(filter2, app'(z0, z1)), z0), z1), APP'(app'(filter2, app'(z0, z1)), z0), APP'(filter2, app'(z0, z1)), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(add, z1), app'(app'(filter, z0), z2)), APP'(add, z1), APP'(app'(filter, z0), z2), APP'(filter, z0)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2), APP'(filter, z0)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1), APP'(eq, z0)) APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1), APP'(le, z0)) APP'(app'(app, nil), z0) -> c45 APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(add, z0), app'(app'(app, z1), z2)), APP'(add, z0), APP'(app'(app, z1), z2), APP'(app, z1)) APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(if_min, app'(app'(le, z0), z1)), APP'(app'(le, z0), z1), APP'(le, z0), APP'(app'(add, z0), app'(app'(add, z1), z2)), APP'(add, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2)), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2)), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(rm, z0), nil) -> c51 APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(if_rm, app'(app'(eq, z0), z1)), z0), APP'(if_rm, app'(app'(eq, z0), z1)), APP'(app'(eq, z0), z1), APP'(eq, z0), APP'(app'(add, z1), z2), APP'(add, z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(add, z1), app'(app'(rm, z0), z2)), APP'(add, z1), APP'(app'(rm, z0), z2), APP'(rm, z0)) APP'(app'(minsort, nil), nil) -> c55 APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), APP'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(eq, z0), APP'(min, app'(app'(add, z0), z1)), APP'(app'(add, z0), z1), APP'(add, z0), APP'(app'(add, z0), z1), APP'(add, z0)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)), APP'(add, z0), APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app, app'(app'(rm, z0), z1)), APP'(app'(rm, z0), z1), APP'(rm, z0)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2)), APP'(minsort, z1), APP'(app'(add, z0), z2), APP'(add, z0)) APP'(app'(map, z0), nil) -> c59 APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)), APP'(add, app'(z0, z1)), APP'(z0, z1), APP'(app'(map, z0), z2), APP'(map, z0)) APP'(app'(filter, z0), nil) -> c61 APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(app'(app'(filter2, app'(z0, z1)), z0), z1), APP'(app'(filter2, app'(z0, z1)), z0), APP'(filter2, app'(z0, z1)), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(add, z1), app'(app'(filter, z0), z2)), APP'(add, z1), APP'(app'(filter, z0), z2), APP'(filter, z0)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2), APP'(filter, z0)) K tuples:none Defined Rule Symbols: app'_2, encArg_1, encode_app'_2, encode_eq, encode_0, encode_true, encode_s, encode_false, encode_le, encode_app, encode_nil, encode_add, encode_min, encode_if_min, encode_rm, encode_if_rm, encode_minsort, encode_if_minsort, encode_map, encode_filter, encode_filter2 Defined Pair Symbols: ENCARG_1, ENCODE_APP'_2, APP'_2 Compound Symbols: c18_3, c19_3, c38, c39, c40, c41_2, c42, c43, c44_2, c45, c46_4, c47, c48_8, c49_3, c50_3, c51, c52_7, c53_2, c54_4, c55, c56_10, c57_8, c58_4, c59, c60_5, c61, c62_5, c63_4, c64_2 ---------------------------------------- (37) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 49 trailing tuple parts ---------------------------------------- (38) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_APP'(z0, z1) -> c19(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: app'_2, encArg_1, encode_app'_2, encode_eq, encode_0, encode_true, encode_s, encode_false, encode_le, encode_app, encode_nil, encode_add, encode_min, encode_if_min, encode_rm, encode_if_rm, encode_minsort, encode_if_minsort, encode_map, encode_filter, encode_filter2 Defined Pair Symbols: ENCARG_1, ENCODE_APP'_2, APP'_2 Compound Symbols: c18_3, c19_3, c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1 ---------------------------------------- (39) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCODE_APP'(z0, z1) -> c(ENCARG(z0)) ENCODE_APP'(z0, z1) -> c(ENCARG(z1)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: app'_2, encArg_1, encode_app'_2, encode_eq, encode_0, encode_true, encode_s, encode_false, encode_le, encode_app, encode_nil, encode_add, encode_min, encode_if_min, encode_rm, encode_if_rm, encode_minsort, encode_if_minsort, encode_map, encode_filter, encode_filter2 Defined Pair Symbols: ENCARG_1, APP'_2, ENCODE_APP'_2 Compound Symbols: c18_3, c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1 ---------------------------------------- (41) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 2 leading nodes: ENCODE_APP'(z0, z1) -> c(ENCARG(z0)) ENCODE_APP'(z0, z1) -> c(ENCARG(z1)) ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: app'_2, encArg_1, encode_app'_2, encode_eq, encode_0, encode_true, encode_s, encode_false, encode_le, encode_app, encode_nil, encode_add, encode_min, encode_if_min, encode_rm, encode_if_rm, encode_minsort, encode_if_minsort, encode_map, encode_filter, encode_filter2 Defined Pair Symbols: ENCARG_1, APP'_2, ENCODE_APP'_2 Compound Symbols: c18_3, c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1 ---------------------------------------- (43) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: encode_app'(z0, z1) -> app'(encArg(z0), encArg(z1)) encode_eq -> eq encode_0 -> 0 encode_true -> true encode_s -> s encode_false -> false encode_le -> le encode_app -> app encode_nil -> nil encode_add -> add encode_min -> min encode_if_min -> if_min encode_rm -> rm encode_if_rm -> if_rm encode_minsort -> minsort encode_if_minsort -> if_minsort encode_map -> map encode_filter -> filter encode_filter2 -> filter2 ---------------------------------------- (44) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: ENCARG_1, APP'_2, ENCODE_APP'_2 Compound Symbols: c18_3, c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1 ---------------------------------------- (45) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(z0, z1)) -> c18(APP'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0), ENCARG(eq)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0), ENCARG(true)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0), ENCARG(s)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0), ENCARG(false)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0), ENCARG(le)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0), ENCARG(app)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0), ENCARG(add)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0), ENCARG(min)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0), ENCARG(if_min)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0), ENCARG(rm)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0), ENCARG(if_rm)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0), ENCARG(minsort)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0), ENCARG(if_minsort)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0), ENCARG(map)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0), ENCARG(filter)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0), ENCARG(filter2)) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(eq, x1)) -> c18(APP'(eq, encArg(x1)), ENCARG(eq), ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(APP'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(APP'(true, encArg(x1)), ENCARG(true), ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(APP'(s, encArg(x1)), ENCARG(s), ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(APP'(false, encArg(x1)), ENCARG(false), ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(APP'(le, encArg(x1)), ENCARG(le), ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(APP'(app, encArg(x1)), ENCARG(app), ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(APP'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(APP'(add, encArg(x1)), ENCARG(add), ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(min), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(APP'(if_min, encArg(x1)), ENCARG(if_min), ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(APP'(rm, encArg(x1)), ENCARG(rm), ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(APP'(if_rm, encArg(x1)), ENCARG(if_rm), ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(APP'(minsort, encArg(x1)), ENCARG(minsort), ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(APP'(if_minsort, encArg(x1)), ENCARG(if_minsort), ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(APP'(map, encArg(x1)), ENCARG(map), ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(APP'(filter, encArg(x1)), ENCARG(filter), ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(APP'(filter2, encArg(x1)), ENCARG(filter2), ENCARG(x1)) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ---------------------------------------- (46) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0), ENCARG(eq)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0), ENCARG(true)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0), ENCARG(s)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0), ENCARG(false)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0), ENCARG(le)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0), ENCARG(app)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0), ENCARG(add)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0), ENCARG(min)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0), ENCARG(if_min)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0), ENCARG(rm)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0), ENCARG(if_rm)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0), ENCARG(minsort)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0), ENCARG(if_minsort)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0), ENCARG(map)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0), ENCARG(filter)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0), ENCARG(filter2)) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(eq, x1)) -> c18(APP'(eq, encArg(x1)), ENCARG(eq), ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(APP'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(APP'(true, encArg(x1)), ENCARG(true), ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(APP'(s, encArg(x1)), ENCARG(s), ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(APP'(false, encArg(x1)), ENCARG(false), ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(APP'(le, encArg(x1)), ENCARG(le), ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(APP'(app, encArg(x1)), ENCARG(app), ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(APP'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(APP'(add, encArg(x1)), ENCARG(add), ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(min), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(APP'(if_min, encArg(x1)), ENCARG(if_min), ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(APP'(rm, encArg(x1)), ENCARG(rm), ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(APP'(if_rm, encArg(x1)), ENCARG(if_rm), ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(APP'(minsort, encArg(x1)), ENCARG(minsort), ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(APP'(if_minsort, encArg(x1)), ENCARG(if_minsort), ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(APP'(map, encArg(x1)), ENCARG(map), ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(APP'(filter, encArg(x1)), ENCARG(filter), ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(APP'(filter2, encArg(x1)), ENCARG(filter2), ENCARG(x1)) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3 ---------------------------------------- (47) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 53 trailing tuple parts ---------------------------------------- (48) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c48_2, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1 ---------------------------------------- (49) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))), APP'(app'(le, z0), z1)) by APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) ---------------------------------------- (50) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c52_2, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2 ---------------------------------------- (51) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace APP'(app'(rm, z0), app'(app'(add, z1), z2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)), APP'(app'(eq, z0), z1)) by APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) ---------------------------------------- (52) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c56_3, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2, c52_2 ---------------------------------------- (53) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace APP'(app'(minsort, app'(app'(add, z0), z1)), z2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), z1))), APP'(min, app'(app'(add, z0), z1))) by APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) ---------------------------------------- (54) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c57_3, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3 ---------------------------------------- (55) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil), APP'(app'(app, app'(app'(rm, z0), z1)), z2), APP'(app'(rm, z0), z1)) by APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) ---------------------------------------- (56) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c62_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3 ---------------------------------------- (57) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace APP'(app'(filter, z0), app'(app'(add, z1), z2)) -> c62(APP'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2), APP'(z0, z1)) by APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(app, z1), z2))), app'(app, app'(app'(add, z0), z1))), z2), x2), APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(rm, z0)), nil), x2), APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(rm, z0), z2))), app'(app'(if_rm, false), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(minsort, nil)), nil), x2), APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil))), app'(app'(if_minsort, true), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(map, z0)), nil), x2), APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2))), app'(map, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(filter, z0)), nil), x2), APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(filter, z0), z2))), app'(app'(app'(filter2, true), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, true), z0), z1), z2)) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) ---------------------------------------- (58) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(app, z1), z2))), app'(app, app'(app'(add, z0), z1))), z2), x2), APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(rm, z0)), nil), x2), APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(rm, z0), z2))), app'(app'(if_rm, false), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(minsort, nil)), nil), x2), APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil))), app'(app'(if_minsort, true), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(map, z0)), nil), x2), APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2))), app'(map, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(filter, z0)), nil), x2), APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(filter, z0), z2))), app'(app'(app'(filter2, true), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, true), z0), z1), z2)) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(app, z1), z2))), app'(app, app'(app'(add, z0), z1))), z2), x2), APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(rm, z0)), nil), x2), APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(rm, z0), z2))), app'(app'(if_rm, false), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(minsort, nil)), nil), x2), APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil))), app'(app'(if_minsort, true), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(map, z0)), nil), x2), APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2))), app'(map, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(app'(app'(filter2, nil), app'(filter, z0)), nil), x2), APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(add, z1), app'(app'(filter, z0), z2))), app'(app'(app'(filter2, true), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, true), z0), z1), z2)) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2 ---------------------------------------- (59) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 9 trailing tuple parts ---------------------------------------- (60) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCODE_APP'_2, ENCARG_1 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1 ---------------------------------------- (61) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_APP'(z0, z1) -> c(APP'(encArg(z0), encArg(z1))) by ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(eq, x1) -> c(APP'(eq, encArg(x1))) ENCODE_APP'(0, x1) -> c(APP'(0, encArg(x1))) ENCODE_APP'(true, x1) -> c(APP'(true, encArg(x1))) ENCODE_APP'(s, x1) -> c(APP'(s, encArg(x1))) ENCODE_APP'(false, x1) -> c(APP'(false, encArg(x1))) ENCODE_APP'(le, x1) -> c(APP'(le, encArg(x1))) ENCODE_APP'(app, x1) -> c(APP'(app, encArg(x1))) ENCODE_APP'(nil, x1) -> c(APP'(nil, encArg(x1))) ENCODE_APP'(add, x1) -> c(APP'(add, encArg(x1))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(if_min, x1) -> c(APP'(if_min, encArg(x1))) ENCODE_APP'(rm, x1) -> c(APP'(rm, encArg(x1))) ENCODE_APP'(if_rm, x1) -> c(APP'(if_rm, encArg(x1))) ENCODE_APP'(minsort, x1) -> c(APP'(minsort, encArg(x1))) ENCODE_APP'(if_minsort, x1) -> c(APP'(if_minsort, encArg(x1))) ENCODE_APP'(map, x1) -> c(APP'(map, encArg(x1))) ENCODE_APP'(filter, x1) -> c(APP'(filter, encArg(x1))) ENCODE_APP'(filter2, x1) -> c(APP'(filter2, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ---------------------------------------- (62) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(eq, x1) -> c(APP'(eq, encArg(x1))) ENCODE_APP'(0, x1) -> c(APP'(0, encArg(x1))) ENCODE_APP'(true, x1) -> c(APP'(true, encArg(x1))) ENCODE_APP'(s, x1) -> c(APP'(s, encArg(x1))) ENCODE_APP'(false, x1) -> c(APP'(false, encArg(x1))) ENCODE_APP'(le, x1) -> c(APP'(le, encArg(x1))) ENCODE_APP'(app, x1) -> c(APP'(app, encArg(x1))) ENCODE_APP'(nil, x1) -> c(APP'(nil, encArg(x1))) ENCODE_APP'(add, x1) -> c(APP'(add, encArg(x1))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(if_min, x1) -> c(APP'(if_min, encArg(x1))) ENCODE_APP'(rm, x1) -> c(APP'(rm, encArg(x1))) ENCODE_APP'(if_rm, x1) -> c(APP'(if_rm, encArg(x1))) ENCODE_APP'(minsort, x1) -> c(APP'(minsort, encArg(x1))) ENCODE_APP'(if_minsort, x1) -> c(APP'(if_minsort, encArg(x1))) ENCODE_APP'(map, x1) -> c(APP'(map, encArg(x1))) ENCODE_APP'(filter, x1) -> c(APP'(filter, encArg(x1))) ENCODE_APP'(filter2, x1) -> c(APP'(filter2, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1 ---------------------------------------- (63) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 17 trailing nodes: ENCODE_APP'(filter, x1) -> c(APP'(filter, encArg(x1))) ENCODE_APP'(if_rm, x1) -> c(APP'(if_rm, encArg(x1))) ENCODE_APP'(if_minsort, x1) -> c(APP'(if_minsort, encArg(x1))) ENCODE_APP'(rm, x1) -> c(APP'(rm, encArg(x1))) ENCODE_APP'(if_min, x1) -> c(APP'(if_min, encArg(x1))) ENCODE_APP'(add, x1) -> c(APP'(add, encArg(x1))) ENCODE_APP'(map, x1) -> c(APP'(map, encArg(x1))) ENCODE_APP'(minsort, x1) -> c(APP'(minsort, encArg(x1))) ENCODE_APP'(s, x1) -> c(APP'(s, encArg(x1))) ENCODE_APP'(app, x1) -> c(APP'(app, encArg(x1))) ENCODE_APP'(filter2, x1) -> c(APP'(filter2, encArg(x1))) ENCODE_APP'(false, x1) -> c(APP'(false, encArg(x1))) ENCODE_APP'(true, x1) -> c(APP'(true, encArg(x1))) ENCODE_APP'(eq, x1) -> c(APP'(eq, encArg(x1))) ENCODE_APP'(0, x1) -> c(APP'(0, encArg(x1))) ENCODE_APP'(le, x1) -> c(APP'(le, encArg(x1))) ENCODE_APP'(nil, x1) -> c(APP'(nil, encArg(x1))) ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1 ---------------------------------------- (65) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, cons_app'(z0, z1))) -> c18(APP'(encArg(x0), app'(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_app'(z0, z1))) by ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(APP'(eq, app'(encArg(x1), encArg(x2))), ENCARG(eq), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(APP'(0, app'(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(APP'(true, app'(encArg(x1), encArg(x2))), ENCARG(true), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(APP'(s, app'(encArg(x1), encArg(x2))), ENCARG(s), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(APP'(false, app'(encArg(x1), encArg(x2))), ENCARG(false), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(APP'(le, app'(encArg(x1), encArg(x2))), ENCARG(le), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(APP'(app, app'(encArg(x1), encArg(x2))), ENCARG(app), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(APP'(nil, app'(encArg(x1), encArg(x2))), ENCARG(nil), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(APP'(add, app'(encArg(x1), encArg(x2))), ENCARG(add), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(min), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(APP'(if_min, app'(encArg(x1), encArg(x2))), ENCARG(if_min), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(APP'(rm, app'(encArg(x1), encArg(x2))), ENCARG(rm), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(APP'(if_rm, app'(encArg(x1), encArg(x2))), ENCARG(if_rm), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(APP'(minsort, app'(encArg(x1), encArg(x2))), ENCARG(minsort), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(APP'(if_minsort, app'(encArg(x1), encArg(x2))), ENCARG(if_minsort), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(APP'(map, app'(encArg(x1), encArg(x2))), ENCARG(map), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(APP'(filter, app'(encArg(x1), encArg(x2))), ENCARG(filter), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(APP'(filter2, app'(encArg(x1), encArg(x2))), ENCARG(filter2), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(APP'(eq, app'(encArg(x1), encArg(x2))), ENCARG(eq), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(APP'(0, app'(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(APP'(true, app'(encArg(x1), encArg(x2))), ENCARG(true), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(APP'(s, app'(encArg(x1), encArg(x2))), ENCARG(s), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(APP'(false, app'(encArg(x1), encArg(x2))), ENCARG(false), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(APP'(le, app'(encArg(x1), encArg(x2))), ENCARG(le), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(APP'(app, app'(encArg(x1), encArg(x2))), ENCARG(app), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(APP'(nil, app'(encArg(x1), encArg(x2))), ENCARG(nil), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(APP'(add, app'(encArg(x1), encArg(x2))), ENCARG(add), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(min), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(APP'(if_min, app'(encArg(x1), encArg(x2))), ENCARG(if_min), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(APP'(rm, app'(encArg(x1), encArg(x2))), ENCARG(rm), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(APP'(if_rm, app'(encArg(x1), encArg(x2))), ENCARG(if_rm), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(APP'(minsort, app'(encArg(x1), encArg(x2))), ENCARG(minsort), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(APP'(if_minsort, app'(encArg(x1), encArg(x2))), ENCARG(if_minsort), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(APP'(map, app'(encArg(x1), encArg(x2))), ENCARG(map), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(APP'(filter, app'(encArg(x1), encArg(x2))), ENCARG(filter), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(APP'(filter2, app'(encArg(x1), encArg(x2))), ENCARG(filter2), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1 ---------------------------------------- (67) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 35 trailing tuple parts ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_3, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1 ---------------------------------------- (69) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(cons_app'(z0, z1), x1)) -> c18(APP'(app'(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_app'(z0, z1)), ENCARG(x1)) by ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1)), ENCARG(eq)) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1)), ENCARG(0)) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1)), ENCARG(true)) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1)), ENCARG(s)) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1)), ENCARG(false)) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1)), ENCARG(le)) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1)), ENCARG(app)) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1)), ENCARG(nil)) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1)), ENCARG(add)) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1)), ENCARG(min)) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1)), ENCARG(if_min)) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1)), ENCARG(rm)) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1)), ENCARG(if_rm)) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1)), ENCARG(minsort)) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1)), ENCARG(if_minsort)) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1)), ENCARG(map)) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1)), ENCARG(filter)) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1)), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(x0, x1), cons_app'(z0, z1))) -> c18(APP'(app'(encArg(x0), encArg(x1)), app'(encArg(z0), encArg(z1))), ENCARG(cons_app'(x0, x1)), ENCARG(cons_app'(z0, z1))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(APP'(app'(0, encArg(x1)), encArg(x2)), ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(APP'(app'(true, encArg(x1)), encArg(x2)), ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(APP'(app'(s, encArg(x1)), encArg(x2)), ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(APP'(app'(false, encArg(x1)), encArg(x2)), ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(APP'(app'(nil, encArg(x1)), encArg(x2)), ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(APP'(app'(add, encArg(x1)), encArg(x2)), ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(APP'(app'(if_rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(APP'(app'(if_minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(APP'(app'(filter2, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1)), ENCARG(eq)) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1)), ENCARG(0)) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1)), ENCARG(true)) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1)), ENCARG(s)) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1)), ENCARG(false)) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1)), ENCARG(le)) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1)), ENCARG(app)) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1)), ENCARG(nil)) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1)), ENCARG(add)) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1)), ENCARG(min)) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1)), ENCARG(if_min)) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1)), ENCARG(rm)) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1)), ENCARG(if_rm)) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1)), ENCARG(minsort)) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1)), ENCARG(if_minsort)) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1)), ENCARG(map)) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1)), ENCARG(filter)) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1)), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(APP'(app'(0, encArg(x1)), encArg(x2)), ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(APP'(app'(true, encArg(x1)), encArg(x2)), ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(APP'(app'(s, encArg(x1)), encArg(x2)), ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(APP'(app'(false, encArg(x1)), encArg(x2)), ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(APP'(app'(nil, encArg(x1)), encArg(x2)), ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(APP'(app'(add, encArg(x1)), encArg(x2)), ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(APP'(app'(if_rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(APP'(app'(if_minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(APP'(app'(filter2, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (71) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 27 trailing tuple parts ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (73) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, eq)) -> c18(APP'(encArg(x0), eq), ENCARG(x0)) by ENCARG(cons_app'(eq, eq)) -> c18(APP'(eq, eq), ENCARG(eq)) ENCARG(cons_app'(0, eq)) -> c18(APP'(0, eq), ENCARG(0)) ENCARG(cons_app'(true, eq)) -> c18(APP'(true, eq), ENCARG(true)) ENCARG(cons_app'(s, eq)) -> c18(APP'(s, eq), ENCARG(s)) ENCARG(cons_app'(false, eq)) -> c18(APP'(false, eq), ENCARG(false)) ENCARG(cons_app'(le, eq)) -> c18(APP'(le, eq), ENCARG(le)) ENCARG(cons_app'(app, eq)) -> c18(APP'(app, eq), ENCARG(app)) ENCARG(cons_app'(nil, eq)) -> c18(APP'(nil, eq), ENCARG(nil)) ENCARG(cons_app'(add, eq)) -> c18(APP'(add, eq), ENCARG(add)) ENCARG(cons_app'(min, eq)) -> c18(APP'(min, eq), ENCARG(min)) ENCARG(cons_app'(if_min, eq)) -> c18(APP'(if_min, eq), ENCARG(if_min)) ENCARG(cons_app'(rm, eq)) -> c18(APP'(rm, eq), ENCARG(rm)) ENCARG(cons_app'(if_rm, eq)) -> c18(APP'(if_rm, eq), ENCARG(if_rm)) ENCARG(cons_app'(minsort, eq)) -> c18(APP'(minsort, eq), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, eq)) -> c18(APP'(if_minsort, eq), ENCARG(if_minsort)) ENCARG(cons_app'(map, eq)) -> c18(APP'(map, eq), ENCARG(map)) ENCARG(cons_app'(filter, eq)) -> c18(APP'(filter, eq), ENCARG(filter)) ENCARG(cons_app'(filter2, eq)) -> c18(APP'(filter2, eq), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), eq)) -> c18(APP'(app'(encArg(z0), encArg(z1)), eq), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, eq)) -> c18(APP'(eq, eq), ENCARG(eq)) ENCARG(cons_app'(0, eq)) -> c18(APP'(0, eq), ENCARG(0)) ENCARG(cons_app'(true, eq)) -> c18(APP'(true, eq), ENCARG(true)) ENCARG(cons_app'(s, eq)) -> c18(APP'(s, eq), ENCARG(s)) ENCARG(cons_app'(false, eq)) -> c18(APP'(false, eq), ENCARG(false)) ENCARG(cons_app'(le, eq)) -> c18(APP'(le, eq), ENCARG(le)) ENCARG(cons_app'(app, eq)) -> c18(APP'(app, eq), ENCARG(app)) ENCARG(cons_app'(nil, eq)) -> c18(APP'(nil, eq), ENCARG(nil)) ENCARG(cons_app'(add, eq)) -> c18(APP'(add, eq), ENCARG(add)) ENCARG(cons_app'(min, eq)) -> c18(APP'(min, eq), ENCARG(min)) ENCARG(cons_app'(if_min, eq)) -> c18(APP'(if_min, eq), ENCARG(if_min)) ENCARG(cons_app'(rm, eq)) -> c18(APP'(rm, eq), ENCARG(rm)) ENCARG(cons_app'(if_rm, eq)) -> c18(APP'(if_rm, eq), ENCARG(if_rm)) ENCARG(cons_app'(minsort, eq)) -> c18(APP'(minsort, eq), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, eq)) -> c18(APP'(if_minsort, eq), ENCARG(if_minsort)) ENCARG(cons_app'(map, eq)) -> c18(APP'(map, eq), ENCARG(map)) ENCARG(cons_app'(filter, eq)) -> c18(APP'(filter, eq), ENCARG(filter)) ENCARG(cons_app'(filter2, eq)) -> c18(APP'(filter2, eq), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (75) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(map, eq)) -> c18(APP'(map, eq), ENCARG(map)) ENCARG(cons_app'(true, eq)) -> c18(APP'(true, eq), ENCARG(true)) ENCARG(cons_app'(app, eq)) -> c18(APP'(app, eq), ENCARG(app)) ENCARG(cons_app'(le, eq)) -> c18(APP'(le, eq), ENCARG(le)) ENCARG(cons_app'(minsort, eq)) -> c18(APP'(minsort, eq), ENCARG(minsort)) ENCARG(cons_app'(nil, eq)) -> c18(APP'(nil, eq), ENCARG(nil)) ENCARG(cons_app'(s, eq)) -> c18(APP'(s, eq), ENCARG(s)) ENCARG(cons_app'(eq, eq)) -> c18(APP'(eq, eq), ENCARG(eq)) ENCARG(cons_app'(filter, eq)) -> c18(APP'(filter, eq), ENCARG(filter)) ENCARG(cons_app'(0, eq)) -> c18(APP'(0, eq), ENCARG(0)) ENCARG(cons_app'(min, eq)) -> c18(APP'(min, eq), ENCARG(min)) ENCARG(cons_app'(if_minsort, eq)) -> c18(APP'(if_minsort, eq), ENCARG(if_minsort)) ENCARG(cons_app'(if_rm, eq)) -> c18(APP'(if_rm, eq), ENCARG(if_rm)) ENCARG(cons_app'(if_min, eq)) -> c18(APP'(if_min, eq), ENCARG(if_min)) ENCARG(cons_app'(false, eq)) -> c18(APP'(false, eq), ENCARG(false)) ENCARG(cons_app'(add, eq)) -> c18(APP'(add, eq), ENCARG(add)) ENCARG(cons_app'(filter2, eq)) -> c18(APP'(filter2, eq), ENCARG(filter2)) ENCARG(cons_app'(rm, eq)) -> c18(APP'(rm, eq), ENCARG(rm)) ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (77) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, 0)) -> c18(APP'(encArg(x0), 0), ENCARG(x0)) by ENCARG(cons_app'(eq, 0)) -> c18(APP'(eq, 0), ENCARG(eq)) ENCARG(cons_app'(0, 0)) -> c18(APP'(0, 0), ENCARG(0)) ENCARG(cons_app'(true, 0)) -> c18(APP'(true, 0), ENCARG(true)) ENCARG(cons_app'(s, 0)) -> c18(APP'(s, 0), ENCARG(s)) ENCARG(cons_app'(false, 0)) -> c18(APP'(false, 0), ENCARG(false)) ENCARG(cons_app'(le, 0)) -> c18(APP'(le, 0), ENCARG(le)) ENCARG(cons_app'(app, 0)) -> c18(APP'(app, 0), ENCARG(app)) ENCARG(cons_app'(nil, 0)) -> c18(APP'(nil, 0), ENCARG(nil)) ENCARG(cons_app'(add, 0)) -> c18(APP'(add, 0), ENCARG(add)) ENCARG(cons_app'(min, 0)) -> c18(APP'(min, 0), ENCARG(min)) ENCARG(cons_app'(if_min, 0)) -> c18(APP'(if_min, 0), ENCARG(if_min)) ENCARG(cons_app'(rm, 0)) -> c18(APP'(rm, 0), ENCARG(rm)) ENCARG(cons_app'(if_rm, 0)) -> c18(APP'(if_rm, 0), ENCARG(if_rm)) ENCARG(cons_app'(minsort, 0)) -> c18(APP'(minsort, 0), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, 0)) -> c18(APP'(if_minsort, 0), ENCARG(if_minsort)) ENCARG(cons_app'(map, 0)) -> c18(APP'(map, 0), ENCARG(map)) ENCARG(cons_app'(filter, 0)) -> c18(APP'(filter, 0), ENCARG(filter)) ENCARG(cons_app'(filter2, 0)) -> c18(APP'(filter2, 0), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), 0)) -> c18(APP'(app'(encArg(z0), encArg(z1)), 0), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, 0)) -> c18(APP'(eq, 0), ENCARG(eq)) ENCARG(cons_app'(0, 0)) -> c18(APP'(0, 0), ENCARG(0)) ENCARG(cons_app'(true, 0)) -> c18(APP'(true, 0), ENCARG(true)) ENCARG(cons_app'(s, 0)) -> c18(APP'(s, 0), ENCARG(s)) ENCARG(cons_app'(false, 0)) -> c18(APP'(false, 0), ENCARG(false)) ENCARG(cons_app'(le, 0)) -> c18(APP'(le, 0), ENCARG(le)) ENCARG(cons_app'(app, 0)) -> c18(APP'(app, 0), ENCARG(app)) ENCARG(cons_app'(nil, 0)) -> c18(APP'(nil, 0), ENCARG(nil)) ENCARG(cons_app'(add, 0)) -> c18(APP'(add, 0), ENCARG(add)) ENCARG(cons_app'(min, 0)) -> c18(APP'(min, 0), ENCARG(min)) ENCARG(cons_app'(if_min, 0)) -> c18(APP'(if_min, 0), ENCARG(if_min)) ENCARG(cons_app'(rm, 0)) -> c18(APP'(rm, 0), ENCARG(rm)) ENCARG(cons_app'(if_rm, 0)) -> c18(APP'(if_rm, 0), ENCARG(if_rm)) ENCARG(cons_app'(minsort, 0)) -> c18(APP'(minsort, 0), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, 0)) -> c18(APP'(if_minsort, 0), ENCARG(if_minsort)) ENCARG(cons_app'(map, 0)) -> c18(APP'(map, 0), ENCARG(map)) ENCARG(cons_app'(filter, 0)) -> c18(APP'(filter, 0), ENCARG(filter)) ENCARG(cons_app'(filter2, 0)) -> c18(APP'(filter2, 0), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (79) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(false, 0)) -> c18(APP'(false, 0), ENCARG(false)) ENCARG(cons_app'(if_rm, 0)) -> c18(APP'(if_rm, 0), ENCARG(if_rm)) ENCARG(cons_app'(minsort, 0)) -> c18(APP'(minsort, 0), ENCARG(minsort)) ENCARG(cons_app'(filter, 0)) -> c18(APP'(filter, 0), ENCARG(filter)) ENCARG(cons_app'(nil, 0)) -> c18(APP'(nil, 0), ENCARG(nil)) ENCARG(cons_app'(s, 0)) -> c18(APP'(s, 0), ENCARG(s)) ENCARG(cons_app'(add, 0)) -> c18(APP'(add, 0), ENCARG(add)) ENCARG(cons_app'(app, 0)) -> c18(APP'(app, 0), ENCARG(app)) ENCARG(cons_app'(0, 0)) -> c18(APP'(0, 0), ENCARG(0)) ENCARG(cons_app'(map, 0)) -> c18(APP'(map, 0), ENCARG(map)) ENCARG(cons_app'(true, 0)) -> c18(APP'(true, 0), ENCARG(true)) ENCARG(cons_app'(if_minsort, 0)) -> c18(APP'(if_minsort, 0), ENCARG(if_minsort)) ENCARG(cons_app'(filter2, 0)) -> c18(APP'(filter2, 0), ENCARG(filter2)) ENCARG(cons_app'(le, 0)) -> c18(APP'(le, 0), ENCARG(le)) ENCARG(cons_app'(min, 0)) -> c18(APP'(min, 0), ENCARG(min)) ENCARG(cons_app'(eq, 0)) -> c18(APP'(eq, 0), ENCARG(eq)) ENCARG(cons_app'(if_min, 0)) -> c18(APP'(if_min, 0), ENCARG(if_min)) ENCARG(cons_app'(rm, 0)) -> c18(APP'(rm, 0), ENCARG(rm)) ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (81) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, true)) -> c18(APP'(encArg(x0), true), ENCARG(x0)) by ENCARG(cons_app'(eq, true)) -> c18(APP'(eq, true), ENCARG(eq)) ENCARG(cons_app'(0, true)) -> c18(APP'(0, true), ENCARG(0)) ENCARG(cons_app'(true, true)) -> c18(APP'(true, true), ENCARG(true)) ENCARG(cons_app'(s, true)) -> c18(APP'(s, true), ENCARG(s)) ENCARG(cons_app'(false, true)) -> c18(APP'(false, true), ENCARG(false)) ENCARG(cons_app'(le, true)) -> c18(APP'(le, true), ENCARG(le)) ENCARG(cons_app'(app, true)) -> c18(APP'(app, true), ENCARG(app)) ENCARG(cons_app'(nil, true)) -> c18(APP'(nil, true), ENCARG(nil)) ENCARG(cons_app'(add, true)) -> c18(APP'(add, true), ENCARG(add)) ENCARG(cons_app'(min, true)) -> c18(APP'(min, true), ENCARG(min)) ENCARG(cons_app'(if_min, true)) -> c18(APP'(if_min, true), ENCARG(if_min)) ENCARG(cons_app'(rm, true)) -> c18(APP'(rm, true), ENCARG(rm)) ENCARG(cons_app'(if_rm, true)) -> c18(APP'(if_rm, true), ENCARG(if_rm)) ENCARG(cons_app'(minsort, true)) -> c18(APP'(minsort, true), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, true)) -> c18(APP'(if_minsort, true), ENCARG(if_minsort)) ENCARG(cons_app'(map, true)) -> c18(APP'(map, true), ENCARG(map)) ENCARG(cons_app'(filter, true)) -> c18(APP'(filter, true), ENCARG(filter)) ENCARG(cons_app'(filter2, true)) -> c18(APP'(filter2, true), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), true)) -> c18(APP'(app'(encArg(z0), encArg(z1)), true), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, true)) -> c18(APP'(eq, true), ENCARG(eq)) ENCARG(cons_app'(0, true)) -> c18(APP'(0, true), ENCARG(0)) ENCARG(cons_app'(true, true)) -> c18(APP'(true, true), ENCARG(true)) ENCARG(cons_app'(s, true)) -> c18(APP'(s, true), ENCARG(s)) ENCARG(cons_app'(false, true)) -> c18(APP'(false, true), ENCARG(false)) ENCARG(cons_app'(le, true)) -> c18(APP'(le, true), ENCARG(le)) ENCARG(cons_app'(app, true)) -> c18(APP'(app, true), ENCARG(app)) ENCARG(cons_app'(nil, true)) -> c18(APP'(nil, true), ENCARG(nil)) ENCARG(cons_app'(add, true)) -> c18(APP'(add, true), ENCARG(add)) ENCARG(cons_app'(min, true)) -> c18(APP'(min, true), ENCARG(min)) ENCARG(cons_app'(if_min, true)) -> c18(APP'(if_min, true), ENCARG(if_min)) ENCARG(cons_app'(rm, true)) -> c18(APP'(rm, true), ENCARG(rm)) ENCARG(cons_app'(if_rm, true)) -> c18(APP'(if_rm, true), ENCARG(if_rm)) ENCARG(cons_app'(minsort, true)) -> c18(APP'(minsort, true), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, true)) -> c18(APP'(if_minsort, true), ENCARG(if_minsort)) ENCARG(cons_app'(map, true)) -> c18(APP'(map, true), ENCARG(map)) ENCARG(cons_app'(filter, true)) -> c18(APP'(filter, true), ENCARG(filter)) ENCARG(cons_app'(filter2, true)) -> c18(APP'(filter2, true), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (83) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(eq, true)) -> c18(APP'(eq, true), ENCARG(eq)) ENCARG(cons_app'(le, true)) -> c18(APP'(le, true), ENCARG(le)) ENCARG(cons_app'(if_minsort, true)) -> c18(APP'(if_minsort, true), ENCARG(if_minsort)) ENCARG(cons_app'(if_rm, true)) -> c18(APP'(if_rm, true), ENCARG(if_rm)) ENCARG(cons_app'(min, true)) -> c18(APP'(min, true), ENCARG(min)) ENCARG(cons_app'(app, true)) -> c18(APP'(app, true), ENCARG(app)) ENCARG(cons_app'(true, true)) -> c18(APP'(true, true), ENCARG(true)) ENCARG(cons_app'(nil, true)) -> c18(APP'(nil, true), ENCARG(nil)) ENCARG(cons_app'(s, true)) -> c18(APP'(s, true), ENCARG(s)) ENCARG(cons_app'(0, true)) -> c18(APP'(0, true), ENCARG(0)) ENCARG(cons_app'(filter2, true)) -> c18(APP'(filter2, true), ENCARG(filter2)) ENCARG(cons_app'(false, true)) -> c18(APP'(false, true), ENCARG(false)) ENCARG(cons_app'(add, true)) -> c18(APP'(add, true), ENCARG(add)) ENCARG(cons_app'(map, true)) -> c18(APP'(map, true), ENCARG(map)) ENCARG(cons_app'(rm, true)) -> c18(APP'(rm, true), ENCARG(rm)) ENCARG(cons_app'(filter, true)) -> c18(APP'(filter, true), ENCARG(filter)) ENCARG(cons_app'(if_min, true)) -> c18(APP'(if_min, true), ENCARG(if_min)) ENCARG(cons_app'(minsort, true)) -> c18(APP'(minsort, true), ENCARG(minsort)) ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (85) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, s)) -> c18(APP'(encArg(x0), s), ENCARG(x0)) by ENCARG(cons_app'(eq, s)) -> c18(APP'(eq, s), ENCARG(eq)) ENCARG(cons_app'(0, s)) -> c18(APP'(0, s), ENCARG(0)) ENCARG(cons_app'(true, s)) -> c18(APP'(true, s), ENCARG(true)) ENCARG(cons_app'(s, s)) -> c18(APP'(s, s), ENCARG(s)) ENCARG(cons_app'(false, s)) -> c18(APP'(false, s), ENCARG(false)) ENCARG(cons_app'(le, s)) -> c18(APP'(le, s), ENCARG(le)) ENCARG(cons_app'(app, s)) -> c18(APP'(app, s), ENCARG(app)) ENCARG(cons_app'(nil, s)) -> c18(APP'(nil, s), ENCARG(nil)) ENCARG(cons_app'(add, s)) -> c18(APP'(add, s), ENCARG(add)) ENCARG(cons_app'(min, s)) -> c18(APP'(min, s), ENCARG(min)) ENCARG(cons_app'(if_min, s)) -> c18(APP'(if_min, s), ENCARG(if_min)) ENCARG(cons_app'(rm, s)) -> c18(APP'(rm, s), ENCARG(rm)) ENCARG(cons_app'(if_rm, s)) -> c18(APP'(if_rm, s), ENCARG(if_rm)) ENCARG(cons_app'(minsort, s)) -> c18(APP'(minsort, s), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, s)) -> c18(APP'(if_minsort, s), ENCARG(if_minsort)) ENCARG(cons_app'(map, s)) -> c18(APP'(map, s), ENCARG(map)) ENCARG(cons_app'(filter, s)) -> c18(APP'(filter, s), ENCARG(filter)) ENCARG(cons_app'(filter2, s)) -> c18(APP'(filter2, s), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), s)) -> c18(APP'(app'(encArg(z0), encArg(z1)), s), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, s)) -> c18(APP'(eq, s), ENCARG(eq)) ENCARG(cons_app'(0, s)) -> c18(APP'(0, s), ENCARG(0)) ENCARG(cons_app'(true, s)) -> c18(APP'(true, s), ENCARG(true)) ENCARG(cons_app'(s, s)) -> c18(APP'(s, s), ENCARG(s)) ENCARG(cons_app'(false, s)) -> c18(APP'(false, s), ENCARG(false)) ENCARG(cons_app'(le, s)) -> c18(APP'(le, s), ENCARG(le)) ENCARG(cons_app'(app, s)) -> c18(APP'(app, s), ENCARG(app)) ENCARG(cons_app'(nil, s)) -> c18(APP'(nil, s), ENCARG(nil)) ENCARG(cons_app'(add, s)) -> c18(APP'(add, s), ENCARG(add)) ENCARG(cons_app'(min, s)) -> c18(APP'(min, s), ENCARG(min)) ENCARG(cons_app'(if_min, s)) -> c18(APP'(if_min, s), ENCARG(if_min)) ENCARG(cons_app'(rm, s)) -> c18(APP'(rm, s), ENCARG(rm)) ENCARG(cons_app'(if_rm, s)) -> c18(APP'(if_rm, s), ENCARG(if_rm)) ENCARG(cons_app'(minsort, s)) -> c18(APP'(minsort, s), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, s)) -> c18(APP'(if_minsort, s), ENCARG(if_minsort)) ENCARG(cons_app'(map, s)) -> c18(APP'(map, s), ENCARG(map)) ENCARG(cons_app'(filter, s)) -> c18(APP'(filter, s), ENCARG(filter)) ENCARG(cons_app'(filter2, s)) -> c18(APP'(filter2, s), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (87) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(rm, s)) -> c18(APP'(rm, s), ENCARG(rm)) ENCARG(cons_app'(le, s)) -> c18(APP'(le, s), ENCARG(le)) ENCARG(cons_app'(0, s)) -> c18(APP'(0, s), ENCARG(0)) ENCARG(cons_app'(filter2, s)) -> c18(APP'(filter2, s), ENCARG(filter2)) ENCARG(cons_app'(filter, s)) -> c18(APP'(filter, s), ENCARG(filter)) ENCARG(cons_app'(if_minsort, s)) -> c18(APP'(if_minsort, s), ENCARG(if_minsort)) ENCARG(cons_app'(nil, s)) -> c18(APP'(nil, s), ENCARG(nil)) ENCARG(cons_app'(s, s)) -> c18(APP'(s, s), ENCARG(s)) ENCARG(cons_app'(if_rm, s)) -> c18(APP'(if_rm, s), ENCARG(if_rm)) ENCARG(cons_app'(map, s)) -> c18(APP'(map, s), ENCARG(map)) ENCARG(cons_app'(false, s)) -> c18(APP'(false, s), ENCARG(false)) ENCARG(cons_app'(add, s)) -> c18(APP'(add, s), ENCARG(add)) ENCARG(cons_app'(eq, s)) -> c18(APP'(eq, s), ENCARG(eq)) ENCARG(cons_app'(app, s)) -> c18(APP'(app, s), ENCARG(app)) ENCARG(cons_app'(min, s)) -> c18(APP'(min, s), ENCARG(min)) ENCARG(cons_app'(true, s)) -> c18(APP'(true, s), ENCARG(true)) ENCARG(cons_app'(if_min, s)) -> c18(APP'(if_min, s), ENCARG(if_min)) ENCARG(cons_app'(minsort, s)) -> c18(APP'(minsort, s), ENCARG(minsort)) ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (89) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, false)) -> c18(APP'(encArg(x0), false), ENCARG(x0)) by ENCARG(cons_app'(eq, false)) -> c18(APP'(eq, false), ENCARG(eq)) ENCARG(cons_app'(0, false)) -> c18(APP'(0, false), ENCARG(0)) ENCARG(cons_app'(true, false)) -> c18(APP'(true, false), ENCARG(true)) ENCARG(cons_app'(s, false)) -> c18(APP'(s, false), ENCARG(s)) ENCARG(cons_app'(false, false)) -> c18(APP'(false, false), ENCARG(false)) ENCARG(cons_app'(le, false)) -> c18(APP'(le, false), ENCARG(le)) ENCARG(cons_app'(app, false)) -> c18(APP'(app, false), ENCARG(app)) ENCARG(cons_app'(nil, false)) -> c18(APP'(nil, false), ENCARG(nil)) ENCARG(cons_app'(add, false)) -> c18(APP'(add, false), ENCARG(add)) ENCARG(cons_app'(min, false)) -> c18(APP'(min, false), ENCARG(min)) ENCARG(cons_app'(if_min, false)) -> c18(APP'(if_min, false), ENCARG(if_min)) ENCARG(cons_app'(rm, false)) -> c18(APP'(rm, false), ENCARG(rm)) ENCARG(cons_app'(if_rm, false)) -> c18(APP'(if_rm, false), ENCARG(if_rm)) ENCARG(cons_app'(minsort, false)) -> c18(APP'(minsort, false), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, false)) -> c18(APP'(if_minsort, false), ENCARG(if_minsort)) ENCARG(cons_app'(map, false)) -> c18(APP'(map, false), ENCARG(map)) ENCARG(cons_app'(filter, false)) -> c18(APP'(filter, false), ENCARG(filter)) ENCARG(cons_app'(filter2, false)) -> c18(APP'(filter2, false), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), false)) -> c18(APP'(app'(encArg(z0), encArg(z1)), false), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, false)) -> c18(APP'(eq, false), ENCARG(eq)) ENCARG(cons_app'(0, false)) -> c18(APP'(0, false), ENCARG(0)) ENCARG(cons_app'(true, false)) -> c18(APP'(true, false), ENCARG(true)) ENCARG(cons_app'(s, false)) -> c18(APP'(s, false), ENCARG(s)) ENCARG(cons_app'(false, false)) -> c18(APP'(false, false), ENCARG(false)) ENCARG(cons_app'(le, false)) -> c18(APP'(le, false), ENCARG(le)) ENCARG(cons_app'(app, false)) -> c18(APP'(app, false), ENCARG(app)) ENCARG(cons_app'(nil, false)) -> c18(APP'(nil, false), ENCARG(nil)) ENCARG(cons_app'(add, false)) -> c18(APP'(add, false), ENCARG(add)) ENCARG(cons_app'(min, false)) -> c18(APP'(min, false), ENCARG(min)) ENCARG(cons_app'(if_min, false)) -> c18(APP'(if_min, false), ENCARG(if_min)) ENCARG(cons_app'(rm, false)) -> c18(APP'(rm, false), ENCARG(rm)) ENCARG(cons_app'(if_rm, false)) -> c18(APP'(if_rm, false), ENCARG(if_rm)) ENCARG(cons_app'(minsort, false)) -> c18(APP'(minsort, false), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, false)) -> c18(APP'(if_minsort, false), ENCARG(if_minsort)) ENCARG(cons_app'(map, false)) -> c18(APP'(map, false), ENCARG(map)) ENCARG(cons_app'(filter, false)) -> c18(APP'(filter, false), ENCARG(filter)) ENCARG(cons_app'(filter2, false)) -> c18(APP'(filter2, false), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (91) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(map, false)) -> c18(APP'(map, false), ENCARG(map)) ENCARG(cons_app'(eq, false)) -> c18(APP'(eq, false), ENCARG(eq)) ENCARG(cons_app'(add, false)) -> c18(APP'(add, false), ENCARG(add)) ENCARG(cons_app'(true, false)) -> c18(APP'(true, false), ENCARG(true)) ENCARG(cons_app'(if_rm, false)) -> c18(APP'(if_rm, false), ENCARG(if_rm)) ENCARG(cons_app'(if_min, false)) -> c18(APP'(if_min, false), ENCARG(if_min)) ENCARG(cons_app'(app, false)) -> c18(APP'(app, false), ENCARG(app)) ENCARG(cons_app'(minsort, false)) -> c18(APP'(minsort, false), ENCARG(minsort)) ENCARG(cons_app'(filter2, false)) -> c18(APP'(filter2, false), ENCARG(filter2)) ENCARG(cons_app'(0, false)) -> c18(APP'(0, false), ENCARG(0)) ENCARG(cons_app'(nil, false)) -> c18(APP'(nil, false), ENCARG(nil)) ENCARG(cons_app'(false, false)) -> c18(APP'(false, false), ENCARG(false)) ENCARG(cons_app'(s, false)) -> c18(APP'(s, false), ENCARG(s)) ENCARG(cons_app'(if_minsort, false)) -> c18(APP'(if_minsort, false), ENCARG(if_minsort)) ENCARG(cons_app'(le, false)) -> c18(APP'(le, false), ENCARG(le)) ENCARG(cons_app'(filter, false)) -> c18(APP'(filter, false), ENCARG(filter)) ENCARG(cons_app'(rm, false)) -> c18(APP'(rm, false), ENCARG(rm)) ENCARG(cons_app'(min, false)) -> c18(APP'(min, false), ENCARG(min)) ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (93) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, le)) -> c18(APP'(encArg(x0), le), ENCARG(x0)) by ENCARG(cons_app'(eq, le)) -> c18(APP'(eq, le), ENCARG(eq)) ENCARG(cons_app'(0, le)) -> c18(APP'(0, le), ENCARG(0)) ENCARG(cons_app'(true, le)) -> c18(APP'(true, le), ENCARG(true)) ENCARG(cons_app'(s, le)) -> c18(APP'(s, le), ENCARG(s)) ENCARG(cons_app'(false, le)) -> c18(APP'(false, le), ENCARG(false)) ENCARG(cons_app'(le, le)) -> c18(APP'(le, le), ENCARG(le)) ENCARG(cons_app'(app, le)) -> c18(APP'(app, le), ENCARG(app)) ENCARG(cons_app'(nil, le)) -> c18(APP'(nil, le), ENCARG(nil)) ENCARG(cons_app'(add, le)) -> c18(APP'(add, le), ENCARG(add)) ENCARG(cons_app'(min, le)) -> c18(APP'(min, le), ENCARG(min)) ENCARG(cons_app'(if_min, le)) -> c18(APP'(if_min, le), ENCARG(if_min)) ENCARG(cons_app'(rm, le)) -> c18(APP'(rm, le), ENCARG(rm)) ENCARG(cons_app'(if_rm, le)) -> c18(APP'(if_rm, le), ENCARG(if_rm)) ENCARG(cons_app'(minsort, le)) -> c18(APP'(minsort, le), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, le)) -> c18(APP'(if_minsort, le), ENCARG(if_minsort)) ENCARG(cons_app'(map, le)) -> c18(APP'(map, le), ENCARG(map)) ENCARG(cons_app'(filter, le)) -> c18(APP'(filter, le), ENCARG(filter)) ENCARG(cons_app'(filter2, le)) -> c18(APP'(filter2, le), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), le)) -> c18(APP'(app'(encArg(z0), encArg(z1)), le), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, le)) -> c18(APP'(eq, le), ENCARG(eq)) ENCARG(cons_app'(0, le)) -> c18(APP'(0, le), ENCARG(0)) ENCARG(cons_app'(true, le)) -> c18(APP'(true, le), ENCARG(true)) ENCARG(cons_app'(s, le)) -> c18(APP'(s, le), ENCARG(s)) ENCARG(cons_app'(false, le)) -> c18(APP'(false, le), ENCARG(false)) ENCARG(cons_app'(le, le)) -> c18(APP'(le, le), ENCARG(le)) ENCARG(cons_app'(app, le)) -> c18(APP'(app, le), ENCARG(app)) ENCARG(cons_app'(nil, le)) -> c18(APP'(nil, le), ENCARG(nil)) ENCARG(cons_app'(add, le)) -> c18(APP'(add, le), ENCARG(add)) ENCARG(cons_app'(min, le)) -> c18(APP'(min, le), ENCARG(min)) ENCARG(cons_app'(if_min, le)) -> c18(APP'(if_min, le), ENCARG(if_min)) ENCARG(cons_app'(rm, le)) -> c18(APP'(rm, le), ENCARG(rm)) ENCARG(cons_app'(if_rm, le)) -> c18(APP'(if_rm, le), ENCARG(if_rm)) ENCARG(cons_app'(minsort, le)) -> c18(APP'(minsort, le), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, le)) -> c18(APP'(if_minsort, le), ENCARG(if_minsort)) ENCARG(cons_app'(map, le)) -> c18(APP'(map, le), ENCARG(map)) ENCARG(cons_app'(filter, le)) -> c18(APP'(filter, le), ENCARG(filter)) ENCARG(cons_app'(filter2, le)) -> c18(APP'(filter2, le), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (95) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(minsort, le)) -> c18(APP'(minsort, le), ENCARG(minsort)) ENCARG(cons_app'(app, le)) -> c18(APP'(app, le), ENCARG(app)) ENCARG(cons_app'(eq, le)) -> c18(APP'(eq, le), ENCARG(eq)) ENCARG(cons_app'(if_minsort, le)) -> c18(APP'(if_minsort, le), ENCARG(if_minsort)) ENCARG(cons_app'(le, le)) -> c18(APP'(le, le), ENCARG(le)) ENCARG(cons_app'(rm, le)) -> c18(APP'(rm, le), ENCARG(rm)) ENCARG(cons_app'(add, le)) -> c18(APP'(add, le), ENCARG(add)) ENCARG(cons_app'(min, le)) -> c18(APP'(min, le), ENCARG(min)) ENCARG(cons_app'(true, le)) -> c18(APP'(true, le), ENCARG(true)) ENCARG(cons_app'(filter, le)) -> c18(APP'(filter, le), ENCARG(filter)) ENCARG(cons_app'(nil, le)) -> c18(APP'(nil, le), ENCARG(nil)) ENCARG(cons_app'(s, le)) -> c18(APP'(s, le), ENCARG(s)) ENCARG(cons_app'(0, le)) -> c18(APP'(0, le), ENCARG(0)) ENCARG(cons_app'(if_min, le)) -> c18(APP'(if_min, le), ENCARG(if_min)) ENCARG(cons_app'(if_rm, le)) -> c18(APP'(if_rm, le), ENCARG(if_rm)) ENCARG(cons_app'(map, le)) -> c18(APP'(map, le), ENCARG(map)) ENCARG(cons_app'(filter2, le)) -> c18(APP'(filter2, le), ENCARG(filter2)) ENCARG(cons_app'(false, le)) -> c18(APP'(false, le), ENCARG(false)) ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (97) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, app)) -> c18(APP'(encArg(x0), app), ENCARG(x0)) by ENCARG(cons_app'(eq, app)) -> c18(APP'(eq, app), ENCARG(eq)) ENCARG(cons_app'(0, app)) -> c18(APP'(0, app), ENCARG(0)) ENCARG(cons_app'(true, app)) -> c18(APP'(true, app), ENCARG(true)) ENCARG(cons_app'(s, app)) -> c18(APP'(s, app), ENCARG(s)) ENCARG(cons_app'(false, app)) -> c18(APP'(false, app), ENCARG(false)) ENCARG(cons_app'(le, app)) -> c18(APP'(le, app), ENCARG(le)) ENCARG(cons_app'(app, app)) -> c18(APP'(app, app), ENCARG(app)) ENCARG(cons_app'(nil, app)) -> c18(APP'(nil, app), ENCARG(nil)) ENCARG(cons_app'(add, app)) -> c18(APP'(add, app), ENCARG(add)) ENCARG(cons_app'(min, app)) -> c18(APP'(min, app), ENCARG(min)) ENCARG(cons_app'(if_min, app)) -> c18(APP'(if_min, app), ENCARG(if_min)) ENCARG(cons_app'(rm, app)) -> c18(APP'(rm, app), ENCARG(rm)) ENCARG(cons_app'(if_rm, app)) -> c18(APP'(if_rm, app), ENCARG(if_rm)) ENCARG(cons_app'(minsort, app)) -> c18(APP'(minsort, app), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, app)) -> c18(APP'(if_minsort, app), ENCARG(if_minsort)) ENCARG(cons_app'(map, app)) -> c18(APP'(map, app), ENCARG(map)) ENCARG(cons_app'(filter, app)) -> c18(APP'(filter, app), ENCARG(filter)) ENCARG(cons_app'(filter2, app)) -> c18(APP'(filter2, app), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), app)) -> c18(APP'(app'(encArg(z0), encArg(z1)), app), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, app)) -> c18(APP'(eq, app), ENCARG(eq)) ENCARG(cons_app'(0, app)) -> c18(APP'(0, app), ENCARG(0)) ENCARG(cons_app'(true, app)) -> c18(APP'(true, app), ENCARG(true)) ENCARG(cons_app'(s, app)) -> c18(APP'(s, app), ENCARG(s)) ENCARG(cons_app'(false, app)) -> c18(APP'(false, app), ENCARG(false)) ENCARG(cons_app'(le, app)) -> c18(APP'(le, app), ENCARG(le)) ENCARG(cons_app'(app, app)) -> c18(APP'(app, app), ENCARG(app)) ENCARG(cons_app'(nil, app)) -> c18(APP'(nil, app), ENCARG(nil)) ENCARG(cons_app'(add, app)) -> c18(APP'(add, app), ENCARG(add)) ENCARG(cons_app'(min, app)) -> c18(APP'(min, app), ENCARG(min)) ENCARG(cons_app'(if_min, app)) -> c18(APP'(if_min, app), ENCARG(if_min)) ENCARG(cons_app'(rm, app)) -> c18(APP'(rm, app), ENCARG(rm)) ENCARG(cons_app'(if_rm, app)) -> c18(APP'(if_rm, app), ENCARG(if_rm)) ENCARG(cons_app'(minsort, app)) -> c18(APP'(minsort, app), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, app)) -> c18(APP'(if_minsort, app), ENCARG(if_minsort)) ENCARG(cons_app'(map, app)) -> c18(APP'(map, app), ENCARG(map)) ENCARG(cons_app'(filter, app)) -> c18(APP'(filter, app), ENCARG(filter)) ENCARG(cons_app'(filter2, app)) -> c18(APP'(filter2, app), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (99) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(if_min, app)) -> c18(APP'(if_min, app), ENCARG(if_min)) ENCARG(cons_app'(min, app)) -> c18(APP'(min, app), ENCARG(min)) ENCARG(cons_app'(map, app)) -> c18(APP'(map, app), ENCARG(map)) ENCARG(cons_app'(filter2, app)) -> c18(APP'(filter2, app), ENCARG(filter2)) ENCARG(cons_app'(if_minsort, app)) -> c18(APP'(if_minsort, app), ENCARG(if_minsort)) ENCARG(cons_app'(rm, app)) -> c18(APP'(rm, app), ENCARG(rm)) ENCARG(cons_app'(le, app)) -> c18(APP'(le, app), ENCARG(le)) ENCARG(cons_app'(add, app)) -> c18(APP'(add, app), ENCARG(add)) ENCARG(cons_app'(true, app)) -> c18(APP'(true, app), ENCARG(true)) ENCARG(cons_app'(minsort, app)) -> c18(APP'(minsort, app), ENCARG(minsort)) ENCARG(cons_app'(app, app)) -> c18(APP'(app, app), ENCARG(app)) ENCARG(cons_app'(if_rm, app)) -> c18(APP'(if_rm, app), ENCARG(if_rm)) ENCARG(cons_app'(eq, app)) -> c18(APP'(eq, app), ENCARG(eq)) ENCARG(cons_app'(nil, app)) -> c18(APP'(nil, app), ENCARG(nil)) ENCARG(cons_app'(s, app)) -> c18(APP'(s, app), ENCARG(s)) ENCARG(cons_app'(filter, app)) -> c18(APP'(filter, app), ENCARG(filter)) ENCARG(cons_app'(0, app)) -> c18(APP'(0, app), ENCARG(0)) ENCARG(cons_app'(false, app)) -> c18(APP'(false, app), ENCARG(false)) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (101) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, nil)) -> c18(APP'(encArg(x0), nil), ENCARG(x0)) by ENCARG(cons_app'(eq, nil)) -> c18(APP'(eq, nil), ENCARG(eq)) ENCARG(cons_app'(0, nil)) -> c18(APP'(0, nil), ENCARG(0)) ENCARG(cons_app'(true, nil)) -> c18(APP'(true, nil), ENCARG(true)) ENCARG(cons_app'(s, nil)) -> c18(APP'(s, nil), ENCARG(s)) ENCARG(cons_app'(false, nil)) -> c18(APP'(false, nil), ENCARG(false)) ENCARG(cons_app'(le, nil)) -> c18(APP'(le, nil), ENCARG(le)) ENCARG(cons_app'(app, nil)) -> c18(APP'(app, nil), ENCARG(app)) ENCARG(cons_app'(nil, nil)) -> c18(APP'(nil, nil), ENCARG(nil)) ENCARG(cons_app'(add, nil)) -> c18(APP'(add, nil), ENCARG(add)) ENCARG(cons_app'(min, nil)) -> c18(APP'(min, nil), ENCARG(min)) ENCARG(cons_app'(if_min, nil)) -> c18(APP'(if_min, nil), ENCARG(if_min)) ENCARG(cons_app'(rm, nil)) -> c18(APP'(rm, nil), ENCARG(rm)) ENCARG(cons_app'(if_rm, nil)) -> c18(APP'(if_rm, nil), ENCARG(if_rm)) ENCARG(cons_app'(minsort, nil)) -> c18(APP'(minsort, nil), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, nil)) -> c18(APP'(if_minsort, nil), ENCARG(if_minsort)) ENCARG(cons_app'(map, nil)) -> c18(APP'(map, nil), ENCARG(map)) ENCARG(cons_app'(filter, nil)) -> c18(APP'(filter, nil), ENCARG(filter)) ENCARG(cons_app'(filter2, nil)) -> c18(APP'(filter2, nil), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), nil)) -> c18(APP'(app'(encArg(z0), encArg(z1)), nil), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, nil)) -> c18(APP'(eq, nil), ENCARG(eq)) ENCARG(cons_app'(0, nil)) -> c18(APP'(0, nil), ENCARG(0)) ENCARG(cons_app'(true, nil)) -> c18(APP'(true, nil), ENCARG(true)) ENCARG(cons_app'(s, nil)) -> c18(APP'(s, nil), ENCARG(s)) ENCARG(cons_app'(false, nil)) -> c18(APP'(false, nil), ENCARG(false)) ENCARG(cons_app'(le, nil)) -> c18(APP'(le, nil), ENCARG(le)) ENCARG(cons_app'(app, nil)) -> c18(APP'(app, nil), ENCARG(app)) ENCARG(cons_app'(nil, nil)) -> c18(APP'(nil, nil), ENCARG(nil)) ENCARG(cons_app'(add, nil)) -> c18(APP'(add, nil), ENCARG(add)) ENCARG(cons_app'(min, nil)) -> c18(APP'(min, nil), ENCARG(min)) ENCARG(cons_app'(if_min, nil)) -> c18(APP'(if_min, nil), ENCARG(if_min)) ENCARG(cons_app'(rm, nil)) -> c18(APP'(rm, nil), ENCARG(rm)) ENCARG(cons_app'(if_rm, nil)) -> c18(APP'(if_rm, nil), ENCARG(if_rm)) ENCARG(cons_app'(minsort, nil)) -> c18(APP'(minsort, nil), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, nil)) -> c18(APP'(if_minsort, nil), ENCARG(if_minsort)) ENCARG(cons_app'(map, nil)) -> c18(APP'(map, nil), ENCARG(map)) ENCARG(cons_app'(filter, nil)) -> c18(APP'(filter, nil), ENCARG(filter)) ENCARG(cons_app'(filter2, nil)) -> c18(APP'(filter2, nil), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (103) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(if_rm, nil)) -> c18(APP'(if_rm, nil), ENCARG(if_rm)) ENCARG(cons_app'(min, nil)) -> c18(APP'(min, nil), ENCARG(min)) ENCARG(cons_app'(filter, nil)) -> c18(APP'(filter, nil), ENCARG(filter)) ENCARG(cons_app'(true, nil)) -> c18(APP'(true, nil), ENCARG(true)) ENCARG(cons_app'(eq, nil)) -> c18(APP'(eq, nil), ENCARG(eq)) ENCARG(cons_app'(if_minsort, nil)) -> c18(APP'(if_minsort, nil), ENCARG(if_minsort)) ENCARG(cons_app'(false, nil)) -> c18(APP'(false, nil), ENCARG(false)) ENCARG(cons_app'(minsort, nil)) -> c18(APP'(minsort, nil), ENCARG(minsort)) ENCARG(cons_app'(rm, nil)) -> c18(APP'(rm, nil), ENCARG(rm)) ENCARG(cons_app'(nil, nil)) -> c18(APP'(nil, nil), ENCARG(nil)) ENCARG(cons_app'(s, nil)) -> c18(APP'(s, nil), ENCARG(s)) ENCARG(cons_app'(app, nil)) -> c18(APP'(app, nil), ENCARG(app)) ENCARG(cons_app'(0, nil)) -> c18(APP'(0, nil), ENCARG(0)) ENCARG(cons_app'(filter2, nil)) -> c18(APP'(filter2, nil), ENCARG(filter2)) ENCARG(cons_app'(if_min, nil)) -> c18(APP'(if_min, nil), ENCARG(if_min)) ENCARG(cons_app'(map, nil)) -> c18(APP'(map, nil), ENCARG(map)) ENCARG(cons_app'(add, nil)) -> c18(APP'(add, nil), ENCARG(add)) ENCARG(cons_app'(le, nil)) -> c18(APP'(le, nil), ENCARG(le)) ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (105) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, add)) -> c18(APP'(encArg(x0), add), ENCARG(x0)) by ENCARG(cons_app'(eq, add)) -> c18(APP'(eq, add), ENCARG(eq)) ENCARG(cons_app'(0, add)) -> c18(APP'(0, add), ENCARG(0)) ENCARG(cons_app'(true, add)) -> c18(APP'(true, add), ENCARG(true)) ENCARG(cons_app'(s, add)) -> c18(APP'(s, add), ENCARG(s)) ENCARG(cons_app'(false, add)) -> c18(APP'(false, add), ENCARG(false)) ENCARG(cons_app'(le, add)) -> c18(APP'(le, add), ENCARG(le)) ENCARG(cons_app'(app, add)) -> c18(APP'(app, add), ENCARG(app)) ENCARG(cons_app'(nil, add)) -> c18(APP'(nil, add), ENCARG(nil)) ENCARG(cons_app'(add, add)) -> c18(APP'(add, add), ENCARG(add)) ENCARG(cons_app'(min, add)) -> c18(APP'(min, add), ENCARG(min)) ENCARG(cons_app'(if_min, add)) -> c18(APP'(if_min, add), ENCARG(if_min)) ENCARG(cons_app'(rm, add)) -> c18(APP'(rm, add), ENCARG(rm)) ENCARG(cons_app'(if_rm, add)) -> c18(APP'(if_rm, add), ENCARG(if_rm)) ENCARG(cons_app'(minsort, add)) -> c18(APP'(minsort, add), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, add)) -> c18(APP'(if_minsort, add), ENCARG(if_minsort)) ENCARG(cons_app'(map, add)) -> c18(APP'(map, add), ENCARG(map)) ENCARG(cons_app'(filter, add)) -> c18(APP'(filter, add), ENCARG(filter)) ENCARG(cons_app'(filter2, add)) -> c18(APP'(filter2, add), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), add)) -> c18(APP'(app'(encArg(z0), encArg(z1)), add), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, add)) -> c18(APP'(eq, add), ENCARG(eq)) ENCARG(cons_app'(0, add)) -> c18(APP'(0, add), ENCARG(0)) ENCARG(cons_app'(true, add)) -> c18(APP'(true, add), ENCARG(true)) ENCARG(cons_app'(s, add)) -> c18(APP'(s, add), ENCARG(s)) ENCARG(cons_app'(false, add)) -> c18(APP'(false, add), ENCARG(false)) ENCARG(cons_app'(le, add)) -> c18(APP'(le, add), ENCARG(le)) ENCARG(cons_app'(app, add)) -> c18(APP'(app, add), ENCARG(app)) ENCARG(cons_app'(nil, add)) -> c18(APP'(nil, add), ENCARG(nil)) ENCARG(cons_app'(add, add)) -> c18(APP'(add, add), ENCARG(add)) ENCARG(cons_app'(min, add)) -> c18(APP'(min, add), ENCARG(min)) ENCARG(cons_app'(if_min, add)) -> c18(APP'(if_min, add), ENCARG(if_min)) ENCARG(cons_app'(rm, add)) -> c18(APP'(rm, add), ENCARG(rm)) ENCARG(cons_app'(if_rm, add)) -> c18(APP'(if_rm, add), ENCARG(if_rm)) ENCARG(cons_app'(minsort, add)) -> c18(APP'(minsort, add), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, add)) -> c18(APP'(if_minsort, add), ENCARG(if_minsort)) ENCARG(cons_app'(map, add)) -> c18(APP'(map, add), ENCARG(map)) ENCARG(cons_app'(filter, add)) -> c18(APP'(filter, add), ENCARG(filter)) ENCARG(cons_app'(filter2, add)) -> c18(APP'(filter2, add), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (107) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(nil, add)) -> c18(APP'(nil, add), ENCARG(nil)) ENCARG(cons_app'(s, add)) -> c18(APP'(s, add), ENCARG(s)) ENCARG(cons_app'(eq, add)) -> c18(APP'(eq, add), ENCARG(eq)) ENCARG(cons_app'(min, add)) -> c18(APP'(min, add), ENCARG(min)) ENCARG(cons_app'(app, add)) -> c18(APP'(app, add), ENCARG(app)) ENCARG(cons_app'(0, add)) -> c18(APP'(0, add), ENCARG(0)) ENCARG(cons_app'(le, add)) -> c18(APP'(le, add), ENCARG(le)) ENCARG(cons_app'(true, add)) -> c18(APP'(true, add), ENCARG(true)) ENCARG(cons_app'(if_rm, add)) -> c18(APP'(if_rm, add), ENCARG(if_rm)) ENCARG(cons_app'(filter, add)) -> c18(APP'(filter, add), ENCARG(filter)) ENCARG(cons_app'(map, add)) -> c18(APP'(map, add), ENCARG(map)) ENCARG(cons_app'(add, add)) -> c18(APP'(add, add), ENCARG(add)) ENCARG(cons_app'(if_minsort, add)) -> c18(APP'(if_minsort, add), ENCARG(if_minsort)) ENCARG(cons_app'(if_min, add)) -> c18(APP'(if_min, add), ENCARG(if_min)) ENCARG(cons_app'(false, add)) -> c18(APP'(false, add), ENCARG(false)) ENCARG(cons_app'(rm, add)) -> c18(APP'(rm, add), ENCARG(rm)) ENCARG(cons_app'(minsort, add)) -> c18(APP'(minsort, add), ENCARG(minsort)) ENCARG(cons_app'(filter2, add)) -> c18(APP'(filter2, add), ENCARG(filter2)) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (109) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, min)) -> c18(APP'(encArg(x0), min), ENCARG(x0)) by ENCARG(cons_app'(eq, min)) -> c18(APP'(eq, min), ENCARG(eq)) ENCARG(cons_app'(0, min)) -> c18(APP'(0, min), ENCARG(0)) ENCARG(cons_app'(true, min)) -> c18(APP'(true, min), ENCARG(true)) ENCARG(cons_app'(s, min)) -> c18(APP'(s, min), ENCARG(s)) ENCARG(cons_app'(false, min)) -> c18(APP'(false, min), ENCARG(false)) ENCARG(cons_app'(le, min)) -> c18(APP'(le, min), ENCARG(le)) ENCARG(cons_app'(app, min)) -> c18(APP'(app, min), ENCARG(app)) ENCARG(cons_app'(nil, min)) -> c18(APP'(nil, min), ENCARG(nil)) ENCARG(cons_app'(add, min)) -> c18(APP'(add, min), ENCARG(add)) ENCARG(cons_app'(min, min)) -> c18(APP'(min, min), ENCARG(min)) ENCARG(cons_app'(if_min, min)) -> c18(APP'(if_min, min), ENCARG(if_min)) ENCARG(cons_app'(rm, min)) -> c18(APP'(rm, min), ENCARG(rm)) ENCARG(cons_app'(if_rm, min)) -> c18(APP'(if_rm, min), ENCARG(if_rm)) ENCARG(cons_app'(minsort, min)) -> c18(APP'(minsort, min), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, min)) -> c18(APP'(if_minsort, min), ENCARG(if_minsort)) ENCARG(cons_app'(map, min)) -> c18(APP'(map, min), ENCARG(map)) ENCARG(cons_app'(filter, min)) -> c18(APP'(filter, min), ENCARG(filter)) ENCARG(cons_app'(filter2, min)) -> c18(APP'(filter2, min), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), min)) -> c18(APP'(app'(encArg(z0), encArg(z1)), min), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, min)) -> c18(APP'(eq, min), ENCARG(eq)) ENCARG(cons_app'(0, min)) -> c18(APP'(0, min), ENCARG(0)) ENCARG(cons_app'(true, min)) -> c18(APP'(true, min), ENCARG(true)) ENCARG(cons_app'(s, min)) -> c18(APP'(s, min), ENCARG(s)) ENCARG(cons_app'(false, min)) -> c18(APP'(false, min), ENCARG(false)) ENCARG(cons_app'(le, min)) -> c18(APP'(le, min), ENCARG(le)) ENCARG(cons_app'(app, min)) -> c18(APP'(app, min), ENCARG(app)) ENCARG(cons_app'(nil, min)) -> c18(APP'(nil, min), ENCARG(nil)) ENCARG(cons_app'(add, min)) -> c18(APP'(add, min), ENCARG(add)) ENCARG(cons_app'(min, min)) -> c18(APP'(min, min), ENCARG(min)) ENCARG(cons_app'(if_min, min)) -> c18(APP'(if_min, min), ENCARG(if_min)) ENCARG(cons_app'(rm, min)) -> c18(APP'(rm, min), ENCARG(rm)) ENCARG(cons_app'(if_rm, min)) -> c18(APP'(if_rm, min), ENCARG(if_rm)) ENCARG(cons_app'(minsort, min)) -> c18(APP'(minsort, min), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, min)) -> c18(APP'(if_minsort, min), ENCARG(if_minsort)) ENCARG(cons_app'(map, min)) -> c18(APP'(map, min), ENCARG(map)) ENCARG(cons_app'(filter, min)) -> c18(APP'(filter, min), ENCARG(filter)) ENCARG(cons_app'(filter2, min)) -> c18(APP'(filter2, min), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (111) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(filter2, min)) -> c18(APP'(filter2, min), ENCARG(filter2)) ENCARG(cons_app'(le, min)) -> c18(APP'(le, min), ENCARG(le)) ENCARG(cons_app'(add, min)) -> c18(APP'(add, min), ENCARG(add)) ENCARG(cons_app'(app, min)) -> c18(APP'(app, min), ENCARG(app)) ENCARG(cons_app'(false, min)) -> c18(APP'(false, min), ENCARG(false)) ENCARG(cons_app'(rm, min)) -> c18(APP'(rm, min), ENCARG(rm)) ENCARG(cons_app'(nil, min)) -> c18(APP'(nil, min), ENCARG(nil)) ENCARG(cons_app'(s, min)) -> c18(APP'(s, min), ENCARG(s)) ENCARG(cons_app'(if_minsort, min)) -> c18(APP'(if_minsort, min), ENCARG(if_minsort)) ENCARG(cons_app'(if_rm, min)) -> c18(APP'(if_rm, min), ENCARG(if_rm)) ENCARG(cons_app'(min, min)) -> c18(APP'(min, min), ENCARG(min)) ENCARG(cons_app'(true, min)) -> c18(APP'(true, min), ENCARG(true)) ENCARG(cons_app'(0, min)) -> c18(APP'(0, min), ENCARG(0)) ENCARG(cons_app'(if_min, min)) -> c18(APP'(if_min, min), ENCARG(if_min)) ENCARG(cons_app'(map, min)) -> c18(APP'(map, min), ENCARG(map)) ENCARG(cons_app'(filter, min)) -> c18(APP'(filter, min), ENCARG(filter)) ENCARG(cons_app'(minsort, min)) -> c18(APP'(minsort, min), ENCARG(minsort)) ENCARG(cons_app'(eq, min)) -> c18(APP'(eq, min), ENCARG(eq)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (113) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, if_min)) -> c18(APP'(encArg(x0), if_min), ENCARG(x0)) by ENCARG(cons_app'(eq, if_min)) -> c18(APP'(eq, if_min), ENCARG(eq)) ENCARG(cons_app'(0, if_min)) -> c18(APP'(0, if_min), ENCARG(0)) ENCARG(cons_app'(true, if_min)) -> c18(APP'(true, if_min), ENCARG(true)) ENCARG(cons_app'(s, if_min)) -> c18(APP'(s, if_min), ENCARG(s)) ENCARG(cons_app'(false, if_min)) -> c18(APP'(false, if_min), ENCARG(false)) ENCARG(cons_app'(le, if_min)) -> c18(APP'(le, if_min), ENCARG(le)) ENCARG(cons_app'(app, if_min)) -> c18(APP'(app, if_min), ENCARG(app)) ENCARG(cons_app'(nil, if_min)) -> c18(APP'(nil, if_min), ENCARG(nil)) ENCARG(cons_app'(add, if_min)) -> c18(APP'(add, if_min), ENCARG(add)) ENCARG(cons_app'(min, if_min)) -> c18(APP'(min, if_min), ENCARG(min)) ENCARG(cons_app'(if_min, if_min)) -> c18(APP'(if_min, if_min), ENCARG(if_min)) ENCARG(cons_app'(rm, if_min)) -> c18(APP'(rm, if_min), ENCARG(rm)) ENCARG(cons_app'(if_rm, if_min)) -> c18(APP'(if_rm, if_min), ENCARG(if_rm)) ENCARG(cons_app'(minsort, if_min)) -> c18(APP'(minsort, if_min), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, if_min)) -> c18(APP'(if_minsort, if_min), ENCARG(if_minsort)) ENCARG(cons_app'(map, if_min)) -> c18(APP'(map, if_min), ENCARG(map)) ENCARG(cons_app'(filter, if_min)) -> c18(APP'(filter, if_min), ENCARG(filter)) ENCARG(cons_app'(filter2, if_min)) -> c18(APP'(filter2, if_min), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), if_min)) -> c18(APP'(app'(encArg(z0), encArg(z1)), if_min), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, if_min)) -> c18(APP'(eq, if_min), ENCARG(eq)) ENCARG(cons_app'(0, if_min)) -> c18(APP'(0, if_min), ENCARG(0)) ENCARG(cons_app'(true, if_min)) -> c18(APP'(true, if_min), ENCARG(true)) ENCARG(cons_app'(s, if_min)) -> c18(APP'(s, if_min), ENCARG(s)) ENCARG(cons_app'(false, if_min)) -> c18(APP'(false, if_min), ENCARG(false)) ENCARG(cons_app'(le, if_min)) -> c18(APP'(le, if_min), ENCARG(le)) ENCARG(cons_app'(app, if_min)) -> c18(APP'(app, if_min), ENCARG(app)) ENCARG(cons_app'(nil, if_min)) -> c18(APP'(nil, if_min), ENCARG(nil)) ENCARG(cons_app'(add, if_min)) -> c18(APP'(add, if_min), ENCARG(add)) ENCARG(cons_app'(min, if_min)) -> c18(APP'(min, if_min), ENCARG(min)) ENCARG(cons_app'(if_min, if_min)) -> c18(APP'(if_min, if_min), ENCARG(if_min)) ENCARG(cons_app'(rm, if_min)) -> c18(APP'(rm, if_min), ENCARG(rm)) ENCARG(cons_app'(if_rm, if_min)) -> c18(APP'(if_rm, if_min), ENCARG(if_rm)) ENCARG(cons_app'(minsort, if_min)) -> c18(APP'(minsort, if_min), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, if_min)) -> c18(APP'(if_minsort, if_min), ENCARG(if_minsort)) ENCARG(cons_app'(map, if_min)) -> c18(APP'(map, if_min), ENCARG(map)) ENCARG(cons_app'(filter, if_min)) -> c18(APP'(filter, if_min), ENCARG(filter)) ENCARG(cons_app'(filter2, if_min)) -> c18(APP'(filter2, if_min), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (115) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(min, if_min)) -> c18(APP'(min, if_min), ENCARG(min)) ENCARG(cons_app'(if_minsort, if_min)) -> c18(APP'(if_minsort, if_min), ENCARG(if_minsort)) ENCARG(cons_app'(0, if_min)) -> c18(APP'(0, if_min), ENCARG(0)) ENCARG(cons_app'(if_rm, if_min)) -> c18(APP'(if_rm, if_min), ENCARG(if_rm)) ENCARG(cons_app'(false, if_min)) -> c18(APP'(false, if_min), ENCARG(false)) ENCARG(cons_app'(rm, if_min)) -> c18(APP'(rm, if_min), ENCARG(rm)) ENCARG(cons_app'(nil, if_min)) -> c18(APP'(nil, if_min), ENCARG(nil)) ENCARG(cons_app'(s, if_min)) -> c18(APP'(s, if_min), ENCARG(s)) ENCARG(cons_app'(map, if_min)) -> c18(APP'(map, if_min), ENCARG(map)) ENCARG(cons_app'(filter2, if_min)) -> c18(APP'(filter2, if_min), ENCARG(filter2)) ENCARG(cons_app'(le, if_min)) -> c18(APP'(le, if_min), ENCARG(le)) ENCARG(cons_app'(true, if_min)) -> c18(APP'(true, if_min), ENCARG(true)) ENCARG(cons_app'(filter, if_min)) -> c18(APP'(filter, if_min), ENCARG(filter)) ENCARG(cons_app'(minsort, if_min)) -> c18(APP'(minsort, if_min), ENCARG(minsort)) ENCARG(cons_app'(add, if_min)) -> c18(APP'(add, if_min), ENCARG(add)) ENCARG(cons_app'(eq, if_min)) -> c18(APP'(eq, if_min), ENCARG(eq)) ENCARG(cons_app'(app, if_min)) -> c18(APP'(app, if_min), ENCARG(app)) ENCARG(cons_app'(if_min, if_min)) -> c18(APP'(if_min, if_min), ENCARG(if_min)) ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, rm)) -> c18(APP'(encArg(x0), rm), ENCARG(x0)) by ENCARG(cons_app'(eq, rm)) -> c18(APP'(eq, rm), ENCARG(eq)) ENCARG(cons_app'(0, rm)) -> c18(APP'(0, rm), ENCARG(0)) ENCARG(cons_app'(true, rm)) -> c18(APP'(true, rm), ENCARG(true)) ENCARG(cons_app'(s, rm)) -> c18(APP'(s, rm), ENCARG(s)) ENCARG(cons_app'(false, rm)) -> c18(APP'(false, rm), ENCARG(false)) ENCARG(cons_app'(le, rm)) -> c18(APP'(le, rm), ENCARG(le)) ENCARG(cons_app'(app, rm)) -> c18(APP'(app, rm), ENCARG(app)) ENCARG(cons_app'(nil, rm)) -> c18(APP'(nil, rm), ENCARG(nil)) ENCARG(cons_app'(add, rm)) -> c18(APP'(add, rm), ENCARG(add)) ENCARG(cons_app'(min, rm)) -> c18(APP'(min, rm), ENCARG(min)) ENCARG(cons_app'(if_min, rm)) -> c18(APP'(if_min, rm), ENCARG(if_min)) ENCARG(cons_app'(rm, rm)) -> c18(APP'(rm, rm), ENCARG(rm)) ENCARG(cons_app'(if_rm, rm)) -> c18(APP'(if_rm, rm), ENCARG(if_rm)) ENCARG(cons_app'(minsort, rm)) -> c18(APP'(minsort, rm), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, rm)) -> c18(APP'(if_minsort, rm), ENCARG(if_minsort)) ENCARG(cons_app'(map, rm)) -> c18(APP'(map, rm), ENCARG(map)) ENCARG(cons_app'(filter, rm)) -> c18(APP'(filter, rm), ENCARG(filter)) ENCARG(cons_app'(filter2, rm)) -> c18(APP'(filter2, rm), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), rm)) -> c18(APP'(app'(encArg(z0), encArg(z1)), rm), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, rm)) -> c18(APP'(eq, rm), ENCARG(eq)) ENCARG(cons_app'(0, rm)) -> c18(APP'(0, rm), ENCARG(0)) ENCARG(cons_app'(true, rm)) -> c18(APP'(true, rm), ENCARG(true)) ENCARG(cons_app'(s, rm)) -> c18(APP'(s, rm), ENCARG(s)) ENCARG(cons_app'(false, rm)) -> c18(APP'(false, rm), ENCARG(false)) ENCARG(cons_app'(le, rm)) -> c18(APP'(le, rm), ENCARG(le)) ENCARG(cons_app'(app, rm)) -> c18(APP'(app, rm), ENCARG(app)) ENCARG(cons_app'(nil, rm)) -> c18(APP'(nil, rm), ENCARG(nil)) ENCARG(cons_app'(add, rm)) -> c18(APP'(add, rm), ENCARG(add)) ENCARG(cons_app'(min, rm)) -> c18(APP'(min, rm), ENCARG(min)) ENCARG(cons_app'(if_min, rm)) -> c18(APP'(if_min, rm), ENCARG(if_min)) ENCARG(cons_app'(rm, rm)) -> c18(APP'(rm, rm), ENCARG(rm)) ENCARG(cons_app'(if_rm, rm)) -> c18(APP'(if_rm, rm), ENCARG(if_rm)) ENCARG(cons_app'(minsort, rm)) -> c18(APP'(minsort, rm), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, rm)) -> c18(APP'(if_minsort, rm), ENCARG(if_minsort)) ENCARG(cons_app'(map, rm)) -> c18(APP'(map, rm), ENCARG(map)) ENCARG(cons_app'(filter, rm)) -> c18(APP'(filter, rm), ENCARG(filter)) ENCARG(cons_app'(filter2, rm)) -> c18(APP'(filter2, rm), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (119) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(if_minsort, rm)) -> c18(APP'(if_minsort, rm), ENCARG(if_minsort)) ENCARG(cons_app'(0, rm)) -> c18(APP'(0, rm), ENCARG(0)) ENCARG(cons_app'(if_min, rm)) -> c18(APP'(if_min, rm), ENCARG(if_min)) ENCARG(cons_app'(le, rm)) -> c18(APP'(le, rm), ENCARG(le)) ENCARG(cons_app'(nil, rm)) -> c18(APP'(nil, rm), ENCARG(nil)) ENCARG(cons_app'(s, rm)) -> c18(APP'(s, rm), ENCARG(s)) ENCARG(cons_app'(true, rm)) -> c18(APP'(true, rm), ENCARG(true)) ENCARG(cons_app'(filter2, rm)) -> c18(APP'(filter2, rm), ENCARG(filter2)) ENCARG(cons_app'(minsort, rm)) -> c18(APP'(minsort, rm), ENCARG(minsort)) ENCARG(cons_app'(eq, rm)) -> c18(APP'(eq, rm), ENCARG(eq)) ENCARG(cons_app'(add, rm)) -> c18(APP'(add, rm), ENCARG(add)) ENCARG(cons_app'(if_rm, rm)) -> c18(APP'(if_rm, rm), ENCARG(if_rm)) ENCARG(cons_app'(app, rm)) -> c18(APP'(app, rm), ENCARG(app)) ENCARG(cons_app'(rm, rm)) -> c18(APP'(rm, rm), ENCARG(rm)) ENCARG(cons_app'(min, rm)) -> c18(APP'(min, rm), ENCARG(min)) ENCARG(cons_app'(filter, rm)) -> c18(APP'(filter, rm), ENCARG(filter)) ENCARG(cons_app'(false, rm)) -> c18(APP'(false, rm), ENCARG(false)) ENCARG(cons_app'(map, rm)) -> c18(APP'(map, rm), ENCARG(map)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (121) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_app'(x0, if_rm)) -> c18(APP'(encArg(x0), if_rm), ENCARG(x0)) by ENCARG(cons_app'(eq, if_rm)) -> c18(APP'(eq, if_rm), ENCARG(eq)) ENCARG(cons_app'(0, if_rm)) -> c18(APP'(0, if_rm), ENCARG(0)) ENCARG(cons_app'(true, if_rm)) -> c18(APP'(true, if_rm), ENCARG(true)) ENCARG(cons_app'(s, if_rm)) -> c18(APP'(s, if_rm), ENCARG(s)) ENCARG(cons_app'(false, if_rm)) -> c18(APP'(false, if_rm), ENCARG(false)) ENCARG(cons_app'(le, if_rm)) -> c18(APP'(le, if_rm), ENCARG(le)) ENCARG(cons_app'(app, if_rm)) -> c18(APP'(app, if_rm), ENCARG(app)) ENCARG(cons_app'(nil, if_rm)) -> c18(APP'(nil, if_rm), ENCARG(nil)) ENCARG(cons_app'(add, if_rm)) -> c18(APP'(add, if_rm), ENCARG(add)) ENCARG(cons_app'(min, if_rm)) -> c18(APP'(min, if_rm), ENCARG(min)) ENCARG(cons_app'(if_min, if_rm)) -> c18(APP'(if_min, if_rm), ENCARG(if_min)) ENCARG(cons_app'(rm, if_rm)) -> c18(APP'(rm, if_rm), ENCARG(rm)) ENCARG(cons_app'(if_rm, if_rm)) -> c18(APP'(if_rm, if_rm), ENCARG(if_rm)) ENCARG(cons_app'(minsort, if_rm)) -> c18(APP'(minsort, if_rm), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, if_rm)) -> c18(APP'(if_minsort, if_rm), ENCARG(if_minsort)) ENCARG(cons_app'(map, if_rm)) -> c18(APP'(map, if_rm), ENCARG(map)) ENCARG(cons_app'(filter, if_rm)) -> c18(APP'(filter, if_rm), ENCARG(filter)) ENCARG(cons_app'(filter2, if_rm)) -> c18(APP'(filter2, if_rm), ENCARG(filter2)) ENCARG(cons_app'(cons_app'(z0, z1), if_rm)) -> c18(APP'(app'(encArg(z0), encArg(z1)), if_rm), ENCARG(cons_app'(z0, z1))) ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) ENCARG(cons_app'(eq, if_rm)) -> c18(APP'(eq, if_rm), ENCARG(eq)) ENCARG(cons_app'(0, if_rm)) -> c18(APP'(0, if_rm), ENCARG(0)) ENCARG(cons_app'(true, if_rm)) -> c18(APP'(true, if_rm), ENCARG(true)) ENCARG(cons_app'(s, if_rm)) -> c18(APP'(s, if_rm), ENCARG(s)) ENCARG(cons_app'(false, if_rm)) -> c18(APP'(false, if_rm), ENCARG(false)) ENCARG(cons_app'(le, if_rm)) -> c18(APP'(le, if_rm), ENCARG(le)) ENCARG(cons_app'(app, if_rm)) -> c18(APP'(app, if_rm), ENCARG(app)) ENCARG(cons_app'(nil, if_rm)) -> c18(APP'(nil, if_rm), ENCARG(nil)) ENCARG(cons_app'(add, if_rm)) -> c18(APP'(add, if_rm), ENCARG(add)) ENCARG(cons_app'(min, if_rm)) -> c18(APP'(min, if_rm), ENCARG(min)) ENCARG(cons_app'(if_min, if_rm)) -> c18(APP'(if_min, if_rm), ENCARG(if_min)) ENCARG(cons_app'(rm, if_rm)) -> c18(APP'(rm, if_rm), ENCARG(rm)) ENCARG(cons_app'(if_rm, if_rm)) -> c18(APP'(if_rm, if_rm), ENCARG(if_rm)) ENCARG(cons_app'(minsort, if_rm)) -> c18(APP'(minsort, if_rm), ENCARG(minsort)) ENCARG(cons_app'(if_minsort, if_rm)) -> c18(APP'(if_minsort, if_rm), ENCARG(if_minsort)) ENCARG(cons_app'(map, if_rm)) -> c18(APP'(map, if_rm), ENCARG(map)) ENCARG(cons_app'(filter, if_rm)) -> c18(APP'(filter, if_rm), ENCARG(filter)) ENCARG(cons_app'(filter2, if_rm)) -> c18(APP'(filter2, if_rm), ENCARG(filter2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3 ---------------------------------------- (123) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 18 trailing nodes: ENCARG(cons_app'(filter2, if_rm)) -> c18(APP'(filter2, if_rm), ENCARG(filter2)) ENCARG(cons_app'(map, if_rm)) -> c18(APP'(map, if_rm), ENCARG(map)) ENCARG(cons_app'(minsort, if_rm)) -> c18(APP'(minsort, if_rm), ENCARG(minsort)) ENCARG(cons_app'(true, if_rm)) -> c18(APP'(true, if_rm), ENCARG(true)) ENCARG(cons_app'(if_rm, if_rm)) -> c18(APP'(if_rm, if_rm), ENCARG(if_rm)) ENCARG(cons_app'(if_minsort, if_rm)) -> c18(APP'(if_minsort, if_rm), ENCARG(if_minsort)) ENCARG(cons_app'(false, if_rm)) -> c18(APP'(false, if_rm), ENCARG(false)) ENCARG(cons_app'(rm, if_rm)) -> c18(APP'(rm, if_rm), ENCARG(rm)) ENCARG(cons_app'(add, if_rm)) -> c18(APP'(add, if_rm), ENCARG(add)) ENCARG(cons_app'(filter, if_rm)) -> c18(APP'(filter, if_rm), ENCARG(filter)) ENCARG(cons_app'(if_min, if_rm)) -> c18(APP'(if_min, if_rm), ENCARG(if_min)) ENCARG(cons_app'(eq, if_rm)) -> c18(APP'(eq, if_rm), ENCARG(eq)) ENCARG(cons_app'(min, if_rm)) -> c18(APP'(min, if_rm), ENCARG(min)) ENCARG(cons_app'(nil, if_rm)) -> c18(APP'(nil, if_rm), ENCARG(nil)) ENCARG(cons_app'(app, if_rm)) -> c18(APP'(app, if_rm), ENCARG(app)) ENCARG(cons_app'(s, if_rm)) -> c18(APP'(s, if_rm), ENCARG(s)) ENCARG(cons_app'(0, if_rm)) -> c18(APP'(0, if_rm), ENCARG(0)) ENCARG(cons_app'(le, if_rm)) -> c18(APP'(le, if_rm), ENCARG(le)) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: encArg(eq) -> eq encArg(0) -> 0 encArg(true) -> true encArg(s) -> s encArg(false) -> false encArg(le) -> le encArg(app) -> app encArg(nil) -> nil encArg(add) -> add encArg(min) -> min encArg(if_min) -> if_min encArg(rm) -> rm encArg(if_rm) -> if_rm encArg(minsort) -> minsort encArg(if_minsort) -> if_minsort encArg(map) -> map encArg(filter) -> filter encArg(filter2) -> filter2 encArg(cons_app'(z0, z1)) -> app'(encArg(z0), encArg(z1)) app'(app'(eq, 0), 0) -> true app'(app'(eq, 0), app'(s, z0)) -> false app'(app'(eq, app'(s, z0)), 0) -> false app'(app'(eq, app'(s, z0)), app'(s, z1)) -> app'(app'(eq, z0), z1) app'(app'(le, 0), z0) -> true app'(app'(le, app'(s, z0)), 0) -> false app'(app'(le, app'(s, z0)), app'(s, z1)) -> app'(app'(le, z0), z1) app'(app'(app, nil), z0) -> z0 app'(app'(app, app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(app, z1), z2)) app'(min, app'(app'(add, z0), nil)) -> z0 app'(min, app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))) app'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z0), z2)) app'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> app'(min, app'(app'(add, z1), z2)) app'(app'(rm, z0), nil) -> nil app'(app'(rm, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2)) app'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> app'(app'(rm, z0), z2) app'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> app'(app'(add, z1), app'(app'(rm, z0), z2)) app'(app'(minsort, nil), nil) -> nil app'(app'(minsort, app'(app'(add, z0), z1)), z2) -> app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2) app'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2) -> app'(app'(add, z0), app'(app'(minsort, app'(app'(app, app'(app'(rm, z0), z1)), z2)), nil)) app'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> app'(app'(minsort, z1), app'(app'(add, z0), z2)) app'(app'(map, z0), nil) -> nil app'(app'(map, z0), app'(app'(add, z1), z2)) -> app'(app'(add, app'(z0, z1)), app'(app'(map, z0), z2)) app'(app'(filter, z0), nil) -> nil app'(app'(filter, z0), app'(app'(add, z1), z2)) -> app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2) app'(app'(app'(app'(filter2, true), z0), z1), z2) -> app'(app'(add, z1), app'(app'(filter, z0), z2)) app'(app'(app'(app'(filter2, false), z0), z1), z2) -> app'(app'(filter, z0), z2) Tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) ENCARG(cons_app'(x0, minsort)) -> c18(APP'(encArg(x0), minsort), ENCARG(x0)) ENCARG(cons_app'(x0, if_minsort)) -> c18(APP'(encArg(x0), if_minsort), ENCARG(x0)) ENCARG(cons_app'(x0, map)) -> c18(APP'(encArg(x0), map), ENCARG(x0)) ENCARG(cons_app'(x0, filter)) -> c18(APP'(encArg(x0), filter), ENCARG(x0)) ENCARG(cons_app'(x0, filter2)) -> c18(APP'(encArg(x0), filter2), ENCARG(x0)) ENCARG(cons_app'(eq, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(0, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(true, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(s, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(false, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(le, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(app, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(nil, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(add, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(min, x1)) -> c18(APP'(min, encArg(x1)), ENCARG(x1)) ENCARG(cons_app'(if_min, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_rm, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(if_minsort, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(map, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter, x1)) -> c18(ENCARG(x1)) ENCARG(cons_app'(filter2, x1)) -> c18(ENCARG(x1)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) ENCODE_APP'(x0, eq) -> c(APP'(encArg(x0), eq)) ENCODE_APP'(x0, 0) -> c(APP'(encArg(x0), 0)) ENCODE_APP'(x0, true) -> c(APP'(encArg(x0), true)) ENCODE_APP'(x0, s) -> c(APP'(encArg(x0), s)) ENCODE_APP'(x0, false) -> c(APP'(encArg(x0), false)) ENCODE_APP'(x0, le) -> c(APP'(encArg(x0), le)) ENCODE_APP'(x0, app) -> c(APP'(encArg(x0), app)) ENCODE_APP'(x0, nil) -> c(APP'(encArg(x0), nil)) ENCODE_APP'(x0, add) -> c(APP'(encArg(x0), add)) ENCODE_APP'(x0, min) -> c(APP'(encArg(x0), min)) ENCODE_APP'(x0, if_min) -> c(APP'(encArg(x0), if_min)) ENCODE_APP'(x0, rm) -> c(APP'(encArg(x0), rm)) ENCODE_APP'(x0, if_rm) -> c(APP'(encArg(x0), if_rm)) ENCODE_APP'(x0, minsort) -> c(APP'(encArg(x0), minsort)) ENCODE_APP'(x0, if_minsort) -> c(APP'(encArg(x0), if_minsort)) ENCODE_APP'(x0, map) -> c(APP'(encArg(x0), map)) ENCODE_APP'(x0, filter) -> c(APP'(encArg(x0), filter)) ENCODE_APP'(x0, filter2) -> c(APP'(encArg(x0), filter2)) ENCODE_APP'(x0, cons_app'(z0, z1)) -> c(APP'(encArg(x0), app'(encArg(z0), encArg(z1)))) ENCODE_APP'(min, x1) -> c(APP'(min, encArg(x1))) ENCODE_APP'(cons_app'(z0, z1), x1) -> c(APP'(app'(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_app'(x0, cons_app'(x1, eq))) -> c18(APP'(encArg(x0), app'(encArg(x1), eq)), ENCARG(x0), ENCARG(cons_app'(x1, eq))) ENCARG(cons_app'(x0, cons_app'(x1, 0))) -> c18(APP'(encArg(x0), app'(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_app'(x1, 0))) ENCARG(cons_app'(x0, cons_app'(x1, true))) -> c18(APP'(encArg(x0), app'(encArg(x1), true)), ENCARG(x0), ENCARG(cons_app'(x1, true))) ENCARG(cons_app'(x0, cons_app'(x1, s))) -> c18(APP'(encArg(x0), app'(encArg(x1), s)), ENCARG(x0), ENCARG(cons_app'(x1, s))) ENCARG(cons_app'(x0, cons_app'(x1, false))) -> c18(APP'(encArg(x0), app'(encArg(x1), false)), ENCARG(x0), ENCARG(cons_app'(x1, false))) ENCARG(cons_app'(x0, cons_app'(x1, le))) -> c18(APP'(encArg(x0), app'(encArg(x1), le)), ENCARG(x0), ENCARG(cons_app'(x1, le))) ENCARG(cons_app'(x0, cons_app'(x1, app))) -> c18(APP'(encArg(x0), app'(encArg(x1), app)), ENCARG(x0), ENCARG(cons_app'(x1, app))) ENCARG(cons_app'(x0, cons_app'(x1, nil))) -> c18(APP'(encArg(x0), app'(encArg(x1), nil)), ENCARG(x0), ENCARG(cons_app'(x1, nil))) ENCARG(cons_app'(x0, cons_app'(x1, add))) -> c18(APP'(encArg(x0), app'(encArg(x1), add)), ENCARG(x0), ENCARG(cons_app'(x1, add))) ENCARG(cons_app'(x0, cons_app'(x1, min))) -> c18(APP'(encArg(x0), app'(encArg(x1), min)), ENCARG(x0), ENCARG(cons_app'(x1, min))) ENCARG(cons_app'(x0, cons_app'(x1, if_min))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_min)), ENCARG(x0), ENCARG(cons_app'(x1, if_min))) ENCARG(cons_app'(x0, cons_app'(x1, rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), rm)), ENCARG(x0), ENCARG(cons_app'(x1, rm))) ENCARG(cons_app'(x0, cons_app'(x1, if_rm))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_rm)), ENCARG(x0), ENCARG(cons_app'(x1, if_rm))) ENCARG(cons_app'(x0, cons_app'(x1, minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), minsort)), ENCARG(x0), ENCARG(cons_app'(x1, minsort))) ENCARG(cons_app'(x0, cons_app'(x1, if_minsort))) -> c18(APP'(encArg(x0), app'(encArg(x1), if_minsort)), ENCARG(x0), ENCARG(cons_app'(x1, if_minsort))) ENCARG(cons_app'(x0, cons_app'(x1, map))) -> c18(APP'(encArg(x0), app'(encArg(x1), map)), ENCARG(x0), ENCARG(cons_app'(x1, map))) ENCARG(cons_app'(x0, cons_app'(x1, filter))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter)), ENCARG(x0), ENCARG(cons_app'(x1, filter))) ENCARG(cons_app'(x0, cons_app'(x1, filter2))) -> c18(APP'(encArg(x0), app'(encArg(x1), filter2)), ENCARG(x0), ENCARG(cons_app'(x1, filter2))) ENCARG(cons_app'(x0, cons_app'(x1, cons_app'(z0, z1)))) -> c18(APP'(encArg(x0), app'(encArg(x1), app'(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_app'(x1, cons_app'(z0, z1)))) ENCARG(cons_app'(x0, cons_app'(eq, x2))) -> c18(APP'(encArg(x0), app'(eq, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(eq, x2))) ENCARG(cons_app'(x0, cons_app'(0, x2))) -> c18(APP'(encArg(x0), app'(0, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(0, x2))) ENCARG(cons_app'(x0, cons_app'(true, x2))) -> c18(APP'(encArg(x0), app'(true, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(true, x2))) ENCARG(cons_app'(x0, cons_app'(s, x2))) -> c18(APP'(encArg(x0), app'(s, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(s, x2))) ENCARG(cons_app'(x0, cons_app'(false, x2))) -> c18(APP'(encArg(x0), app'(false, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(false, x2))) ENCARG(cons_app'(x0, cons_app'(le, x2))) -> c18(APP'(encArg(x0), app'(le, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(le, x2))) ENCARG(cons_app'(x0, cons_app'(app, x2))) -> c18(APP'(encArg(x0), app'(app, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(app, x2))) ENCARG(cons_app'(x0, cons_app'(nil, x2))) -> c18(APP'(encArg(x0), app'(nil, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(nil, x2))) ENCARG(cons_app'(x0, cons_app'(add, x2))) -> c18(APP'(encArg(x0), app'(add, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(add, x2))) ENCARG(cons_app'(x0, cons_app'(min, x2))) -> c18(APP'(encArg(x0), app'(min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(min, x2))) ENCARG(cons_app'(x0, cons_app'(if_min, x2))) -> c18(APP'(encArg(x0), app'(if_min, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_min, x2))) ENCARG(cons_app'(x0, cons_app'(rm, x2))) -> c18(APP'(encArg(x0), app'(rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(rm, x2))) ENCARG(cons_app'(x0, cons_app'(if_rm, x2))) -> c18(APP'(encArg(x0), app'(if_rm, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_rm, x2))) ENCARG(cons_app'(x0, cons_app'(minsort, x2))) -> c18(APP'(encArg(x0), app'(minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(minsort, x2))) ENCARG(cons_app'(x0, cons_app'(if_minsort, x2))) -> c18(APP'(encArg(x0), app'(if_minsort, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(if_minsort, x2))) ENCARG(cons_app'(x0, cons_app'(map, x2))) -> c18(APP'(encArg(x0), app'(map, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(map, x2))) ENCARG(cons_app'(x0, cons_app'(filter, x2))) -> c18(APP'(encArg(x0), app'(filter, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter, x2))) ENCARG(cons_app'(x0, cons_app'(filter2, x2))) -> c18(APP'(encArg(x0), app'(filter2, encArg(x2))), ENCARG(x0), ENCARG(cons_app'(filter2, x2))) ENCARG(cons_app'(x0, cons_app'(cons_app'(z0, z1), x2))) -> c18(APP'(encArg(x0), app'(app'(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_app'(cons_app'(z0, z1), x2))) ENCARG(cons_app'(cons_app'(z0, z1), cons_app'(x1, x2))) -> c18(APP'(app'(encArg(z0), encArg(z1)), app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(z0, z1)), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(eq, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(0, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(true, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(s, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(false, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(le, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(app, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(nil, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(add, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(min, cons_app'(x1, x2))) -> c18(APP'(min, app'(encArg(x1), encArg(x2))), ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_min, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_rm, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(if_minsort, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(map, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(filter2, cons_app'(x1, x2))) -> c18(ENCARG(cons_app'(x1, x2))) ENCARG(cons_app'(cons_app'(x0, eq), x2)) -> c18(APP'(app'(encArg(x0), eq), encArg(x2)), ENCARG(cons_app'(x0, eq)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, 0), x2)) -> c18(APP'(app'(encArg(x0), 0), encArg(x2)), ENCARG(cons_app'(x0, 0)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, true), x2)) -> c18(APP'(app'(encArg(x0), true), encArg(x2)), ENCARG(cons_app'(x0, true)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, s), x2)) -> c18(APP'(app'(encArg(x0), s), encArg(x2)), ENCARG(cons_app'(x0, s)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, false), x2)) -> c18(APP'(app'(encArg(x0), false), encArg(x2)), ENCARG(cons_app'(x0, false)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, le), x2)) -> c18(APP'(app'(encArg(x0), le), encArg(x2)), ENCARG(cons_app'(x0, le)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, app), x2)) -> c18(APP'(app'(encArg(x0), app), encArg(x2)), ENCARG(cons_app'(x0, app)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, nil), x2)) -> c18(APP'(app'(encArg(x0), nil), encArg(x2)), ENCARG(cons_app'(x0, nil)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, add), x2)) -> c18(APP'(app'(encArg(x0), add), encArg(x2)), ENCARG(cons_app'(x0, add)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, min), x2)) -> c18(APP'(app'(encArg(x0), min), encArg(x2)), ENCARG(cons_app'(x0, min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_min), x2)) -> c18(APP'(app'(encArg(x0), if_min), encArg(x2)), ENCARG(cons_app'(x0, if_min)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, rm), x2)) -> c18(APP'(app'(encArg(x0), rm), encArg(x2)), ENCARG(cons_app'(x0, rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_rm), x2)) -> c18(APP'(app'(encArg(x0), if_rm), encArg(x2)), ENCARG(cons_app'(x0, if_rm)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, minsort), x2)) -> c18(APP'(app'(encArg(x0), minsort), encArg(x2)), ENCARG(cons_app'(x0, minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, if_minsort), x2)) -> c18(APP'(app'(encArg(x0), if_minsort), encArg(x2)), ENCARG(cons_app'(x0, if_minsort)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, map), x2)) -> c18(APP'(app'(encArg(x0), map), encArg(x2)), ENCARG(cons_app'(x0, map)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter), x2)) -> c18(APP'(app'(encArg(x0), filter), encArg(x2)), ENCARG(cons_app'(x0, filter)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, filter2), x2)) -> c18(APP'(app'(encArg(x0), filter2), encArg(x2)), ENCARG(cons_app'(x0, filter2)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, cons_app'(z0, z1)), x2)) -> c18(APP'(app'(encArg(x0), app'(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_app'(x0, cons_app'(z0, z1))), ENCARG(x2)) ENCARG(cons_app'(cons_app'(eq, x1), x2)) -> c18(APP'(app'(eq, encArg(x1)), encArg(x2)), ENCARG(cons_app'(eq, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(le, x1), x2)) -> c18(APP'(app'(le, encArg(x1)), encArg(x2)), ENCARG(cons_app'(le, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(app, x1), x2)) -> c18(APP'(app'(app, encArg(x1)), encArg(x2)), ENCARG(cons_app'(app, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(min, x1), x2)) -> c18(APP'(app'(min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_min, x1), x2)) -> c18(APP'(app'(if_min, encArg(x1)), encArg(x2)), ENCARG(cons_app'(if_min, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(rm, x1), x2)) -> c18(APP'(app'(rm, encArg(x1)), encArg(x2)), ENCARG(cons_app'(rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(minsort, x1), x2)) -> c18(APP'(app'(minsort, encArg(x1)), encArg(x2)), ENCARG(cons_app'(minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(map, x1), x2)) -> c18(APP'(app'(map, encArg(x1)), encArg(x2)), ENCARG(cons_app'(map, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter, x1), x2)) -> c18(APP'(app'(filter, encArg(x1)), encArg(x2)), ENCARG(cons_app'(filter, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(cons_app'(z0, z1), x1), x2)) -> c18(APP'(app'(app'(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_app'(cons_app'(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(x0, x1), eq)) -> c18(APP'(app'(encArg(x0), encArg(x1)), eq), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), 0)) -> c18(APP'(app'(encArg(x0), encArg(x1)), 0), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), true)) -> c18(APP'(app'(encArg(x0), encArg(x1)), true), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), s)) -> c18(APP'(app'(encArg(x0), encArg(x1)), s), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), false)) -> c18(APP'(app'(encArg(x0), encArg(x1)), false), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), le)) -> c18(APP'(app'(encArg(x0), encArg(x1)), le), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), app)) -> c18(APP'(app'(encArg(x0), encArg(x1)), app), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), nil)) -> c18(APP'(app'(encArg(x0), encArg(x1)), nil), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), add)) -> c18(APP'(app'(encArg(x0), encArg(x1)), add), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_min)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_min), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_rm)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_rm), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), if_minsort)) -> c18(APP'(app'(encArg(x0), encArg(x1)), if_minsort), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), map)) -> c18(APP'(app'(encArg(x0), encArg(x1)), map), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(x0, x1), filter2)) -> c18(APP'(app'(encArg(x0), encArg(x1)), filter2), ENCARG(cons_app'(x0, x1))) ENCARG(cons_app'(cons_app'(0, x1), x2)) -> c18(ENCARG(cons_app'(0, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(true, x1), x2)) -> c18(ENCARG(cons_app'(true, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(s, x1), x2)) -> c18(ENCARG(cons_app'(s, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(false, x1), x2)) -> c18(ENCARG(cons_app'(false, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(nil, x1), x2)) -> c18(ENCARG(cons_app'(nil, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(add, x1), x2)) -> c18(ENCARG(cons_app'(add, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_rm, x1), x2)) -> c18(ENCARG(cons_app'(if_rm, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(if_minsort, x1), x2)) -> c18(ENCARG(cons_app'(if_minsort, x1)), ENCARG(x2)) ENCARG(cons_app'(cons_app'(filter2, x1), x2)) -> c18(ENCARG(cons_app'(filter2, x1)), ENCARG(x2)) S tuples: APP'(app'(eq, 0), 0) -> c38 APP'(app'(eq, 0), app'(s, z0)) -> c39 APP'(app'(eq, app'(s, z0)), 0) -> c40 APP'(app'(le, 0), z0) -> c42 APP'(app'(le, app'(s, z0)), 0) -> c43 APP'(app'(app, nil), z0) -> c45 APP'(min, app'(app'(add, z0), nil)) -> c47 APP'(app'(rm, z0), nil) -> c51 APP'(app'(minsort, nil), nil) -> c55 APP'(app'(map, z0), nil) -> c59 APP'(app'(filter, z0), nil) -> c61 APP'(app'(eq, app'(s, z0)), app'(s, z1)) -> c41(APP'(app'(eq, z0), z1)) APP'(app'(le, app'(s, z0)), app'(s, z1)) -> c44(APP'(app'(le, z0), z1)) APP'(app'(app, app'(app'(add, z0), z1)), z2) -> c46(APP'(app'(app, z1), z2)) APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c49(APP'(min, app'(app'(add, z0), z2))) APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2))) -> c50(APP'(min, app'(app'(add, z1), z2))) APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2)) -> c53(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2)) -> c54(APP'(app'(rm, z0), z2)) APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2) -> c58(APP'(app'(minsort, z1), app'(app'(add, z0), z2))) APP'(app'(map, z0), app'(app'(add, z1), z2)) -> c60(APP'(z0, z1), APP'(app'(map, z0), z2)) APP'(app'(app'(app'(filter2, true), z0), z1), z2) -> c63(APP'(app'(filter, z0), z2)) APP'(app'(app'(app'(filter2, false), z0), z1), z2) -> c64(APP'(app'(filter, z0), z2)) APP'(min, app'(app'(add, 0), app'(app'(add, z0), x2))) -> c48(APP'(app'(if_min, true), app'(app'(add, 0), app'(app'(add, z0), x2))), APP'(app'(le, 0), z0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))) -> c48(APP'(app'(if_min, false), app'(app'(add, app'(s, z0)), app'(app'(add, 0), x2))), APP'(app'(le, app'(s, z0)), 0)) APP'(min, app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))) -> c48(APP'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, app'(s, z0)), app'(app'(add, app'(s, z1)), x2))), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(rm, 0), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, true), 0), app'(app'(add, 0), x2)), APP'(app'(eq, 0), 0)) APP'(app'(rm, 0), app'(app'(add, app'(s, z0)), x2)) -> c52(APP'(app'(app'(if_rm, false), 0), app'(app'(add, app'(s, z0)), x2)), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(rm, app'(s, z0)), app'(app'(add, 0), x2)) -> c52(APP'(app'(app'(if_rm, false), app'(s, z0)), app'(app'(add, 0), x2)), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(rm, app'(s, z0)), app'(app'(add, app'(s, z1)), x2)) -> c52(APP'(app'(app'(if_rm, app'(app'(eq, z0), z1)), app'(s, z0)), app'(app'(add, app'(s, z1)), x2)), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(minsort, app'(app'(add, z0), nil)), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), z0)), app'(app'(add, z0), nil)), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), nil))), APP'(min, app'(app'(add, z0), nil))) APP'(app'(minsort, app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c56(APP'(app'(app'(if_minsort, app'(app'(eq, z0), app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2))))), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(eq, z0), app'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), nil)), x2) -> c57(APP'(app'(minsort, app'(app'(app, nil), x2)), nil), APP'(app'(app, app'(app'(rm, z0), nil)), x2), APP'(app'(rm, z0), nil)) APP'(app'(app'(if_minsort, true), app'(app'(add, z0), app'(app'(add, z1), z2))), x2) -> c57(APP'(app'(minsort, app'(app'(app, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), x2)), nil), APP'(app'(app, app'(app'(rm, z0), app'(app'(add, z1), z2))), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(eq, 0)), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(eq, 0)), 0), x2), APP'(app'(eq, 0), 0)) APP'(app'(filter, app'(eq, 0)), app'(app'(add, app'(s, z0)), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, 0)), app'(s, z0)), x2), APP'(app'(eq, 0), app'(s, z0))) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(eq, app'(s, z0))), 0), x2), APP'(app'(eq, app'(s, z0)), 0)) APP'(app'(filter, app'(eq, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(eq, z0), z1)), app'(eq, app'(s, z0))), app'(s, z1)), x2), APP'(app'(eq, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(le, 0)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, true), app'(le, 0)), z0), x2), APP'(app'(le, 0), z0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, 0), x2)) -> c62(APP'(app'(app'(app'(filter2, false), app'(le, app'(s, z0))), 0), x2), APP'(app'(le, app'(s, z0)), 0)) APP'(app'(filter, app'(le, app'(s, z0))), app'(app'(add, app'(s, z1)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(le, z0), z1)), app'(le, app'(s, z0))), app'(s, z1)), x2), APP'(app'(le, app'(s, z0)), app'(s, z1))) APP'(app'(filter, app'(app, nil)), app'(app'(add, z0), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), app'(app, nil)), z0), x2), APP'(app'(app, nil), z0)) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), nil)), x2)) -> c62(APP'(app'(app'(app'(filter2, z0), min), app'(app'(add, z0), nil)), x2), APP'(min, app'(app'(add, z0), nil))) APP'(app'(filter, min), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(if_min, app'(app'(le, z0), z1)), app'(app'(add, z0), app'(app'(add, z1), z2)))), min), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(min, app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, true)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z0), z2))), app'(if_min, true)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, true), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(if_min, false)), app'(app'(add, app'(app'(add, z0), app'(app'(add, z1), z2))), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(min, app'(app'(add, z1), z2))), app'(if_min, false)), app'(app'(add, z0), app'(app'(add, z1), z2))), x2), APP'(app'(if_min, false), app'(app'(add, z0), app'(app'(add, z1), z2)))) APP'(app'(filter, app'(rm, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_rm, app'(app'(eq, z0), z1)), z0), app'(app'(add, z1), z2))), app'(rm, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(rm, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(if_rm, true), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(rm, z0), z2)), app'(app'(if_rm, true), z0)), app'(app'(add, z1), z2)), x2), APP'(app'(app'(if_rm, true), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(if_minsort, app'(app'(eq, z0), app'(min, app'(app'(add, z0), z1)))), app'(app'(add, z0), z1)), z2)), app'(minsort, app'(app'(add, z0), z1))), z2), x2), APP'(app'(minsort, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(app'(if_minsort, false), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(minsort, z1), app'(app'(add, z0), z2))), app'(app'(if_minsort, false), app'(app'(add, z0), z1))), z2), x2), APP'(app'(app'(if_minsort, false), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(filter, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(app'(app'(filter2, app'(z0, z1)), z0), z1), z2)), app'(filter, z0)), app'(app'(add, z1), z2)), x2), APP'(app'(filter, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(app'(app'(filter2, false), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, app'(app'(filter, z0), z2)), app'(app'(app'(filter2, false), z0), z1)), z2), x2), APP'(app'(app'(app'(filter2, false), z0), z1), z2)) APP'(app'(filter, app'(app, app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app, app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(rm, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(rm, z0), nil)) APP'(app'(filter, app'(app'(if_rm, false), z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(app'(if_rm, false), z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(minsort, nil)), app'(app'(add, nil), x2)) -> c62(APP'(app'(minsort, nil), nil)) APP'(app'(filter, app'(app'(if_minsort, true), app'(app'(add, z0), z1))), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(if_minsort, true), app'(app'(add, z0), z1)), z2)) APP'(app'(filter, app'(map, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(map, z0), nil)) APP'(app'(filter, app'(map, z0)), app'(app'(add, app'(app'(add, z1), z2)), x2)) -> c62(APP'(app'(map, z0), app'(app'(add, z1), z2))) APP'(app'(filter, app'(filter, z0)), app'(app'(add, nil), x2)) -> c62(APP'(app'(filter, z0), nil)) APP'(app'(filter, app'(app'(app'(filter2, true), z0), z1)), app'(app'(add, z2), x2)) -> c62(APP'(app'(app'(app'(filter2, true), z0), z1), z2)) K tuples:none Defined Rule Symbols: encArg_1, app'_2 Defined Pair Symbols: APP'_2, ENCARG_1, ENCODE_APP'_2 Compound Symbols: c38, c39, c40, c42, c43, c45, c47, c51, c55, c59, c61, c41_1, c44_1, c46_1, c49_1, c50_1, c53_1, c54_1, c58_1, c60_2, c63_1, c64_1, c18_2, c18_1, c48_2, c52_2, c56_3, c57_3, c62_2, c62_1, c_1, c18_3