YES proof of CiME_04_list-sum-prod-assoc-append.trs # AProVE Commit ID: c69e44bd14796315568835c1ffa2502984884775 jera 20211004 unpublished Termination w.r.t. Q of the given QTRS could be proven: (0) QTRS (1) QTRSRRRProof [EQUIVALENT, 64 ms] (2) QTRS (3) QTRSRRRProof [EQUIVALENT, 0 ms] (4) QTRS (5) RisEmptyProof [EQUIVALENT, 0 ms] (6) YES ---------------------------------------- (0) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: +(x, 0) -> x +(0, x) -> x +(s(x), s(y)) -> s(s(+(x, y))) +(+(x, y), z) -> +(x, +(y, z)) *(x, 0) -> 0 *(0, x) -> 0 *(s(x), s(y)) -> s(+(*(x, y), +(x, y))) *(*(x, y), z) -> *(x, *(y, z)) app(nil, l) -> l app(cons(x, l1), l2) -> cons(x, app(l1, l2)) sum(nil) -> 0 sum(cons(x, l)) -> +(x, sum(l)) sum(app(l1, l2)) -> +(sum(l1), sum(l2)) prod(nil) -> s(0) prod(cons(x, l)) -> *(x, prod(l)) prod(app(l1, l2)) -> *(prod(l1), prod(l2)) Q is empty. ---------------------------------------- (1) QTRSRRRProof (EQUIVALENT) Used ordering: +/2(YES,YES) 0/0) s/1(YES) */2(YES,YES) app/2(YES,YES) nil/0) cons/2(YES,YES) sum/1(YES) prod/1)YES( Quasi precedence: [*_2, app_2, cons_2, sum_1] > +_2 > s_1 > 0 nil > s_1 > 0 Status: +_2: [1,2] 0: multiset status s_1: multiset status *_2: [1,2] app_2: [1,2] nil: multiset status cons_2: [1,2] sum_1: multiset status With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: +(x, 0) -> x +(0, x) -> x +(s(x), s(y)) -> s(s(+(x, y))) +(+(x, y), z) -> +(x, +(y, z)) *(x, 0) -> 0 *(0, x) -> 0 *(s(x), s(y)) -> s(+(*(x, y), +(x, y))) *(*(x, y), z) -> *(x, *(y, z)) app(nil, l) -> l app(cons(x, l1), l2) -> cons(x, app(l1, l2)) sum(nil) -> 0 sum(cons(x, l)) -> +(x, sum(l)) sum(app(l1, l2)) -> +(sum(l1), sum(l2)) prod(nil) -> s(0) ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: prod(cons(x, l)) -> *(x, prod(l)) prod(app(l1, l2)) -> *(prod(l1), prod(l2)) Q is empty. ---------------------------------------- (3) QTRSRRRProof (EQUIVALENT) Used ordering: Knuth-Bendix order [KBO] with precedence:app_2 > *_2 > cons_2 > prod_1 and weight map: prod_1=1 cons_2=1 *_2=0 app_2=2 The variable weight is 1With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: prod(cons(x, l)) -> *(x, prod(l)) prod(app(l1, l2)) -> *(prod(l1), prod(l2)) ---------------------------------------- (4) Obligation: Q restricted rewrite system: R is empty. Q is empty. ---------------------------------------- (5) RisEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (6) YES