/export/starexec/sandbox/solver/bin/starexec_run_standard /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Quasi decreasingness of the given CTRS could be proven: (0) CTRS (1) CTRSToQTRSProof [SOUND, 0 ms] (2) QTRS (3) QTRSRRRProof [EQUIVALENT, 130 ms] (4) QTRS (5) QTRSRRRProof [EQUIVALENT, 0 ms] (6) QTRS (7) RisEmptyProof [EQUIVALENT, 0 ms] (8) YES ---------------------------------------- (0) Obligation: Conditional term rewrite system: The TRS R consists of the following rules: lte(0, n) -> true lte(s(m), 0) -> false lte(s(m), s(n)) -> lte(m, n) insert(nil, m) -> cons(m, nil) ordered(nil) -> true ordered(cons(m, nil)) -> true The conditional TRS C consists of the following conditional rules: insert(cons(n, l), m) -> cons(m, cons(n, l)) <= lte(m, n) -> true insert(cons(n, l), m) -> cons(n, insert(l, m)) <= lte(m, n) -> false ordered(cons(m, cons(n, l))) -> ordered(cons(n, l)) <= lte(m, n) -> true ordered(cons(m, cons(n, l))) -> false <= lte(m, n) -> false ---------------------------------------- (1) CTRSToQTRSProof (SOUND) The conditional rules have been transormed into unconditional rules according to [CTRS,AAECCNOC]. ---------------------------------------- (2) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: insert(cons(n, l), m) -> U1(lte(m, n), n, l, m) U1(false, n, l, m) -> cons(n, insert(l, m)) U1(true, n, l, m) -> cons(m, cons(n, l)) ordered(cons(m, cons(n, l))) -> U2(lte(m, n), n, l) U2(true, n, l) -> ordered(cons(n, l)) U2(false, n, l) -> false lte(0, n) -> true lte(s(m), 0) -> false lte(s(m), s(n)) -> lte(m, n) insert(nil, m) -> cons(m, nil) ordered(nil) -> true ordered(cons(m, nil)) -> true Q is empty. ---------------------------------------- (3) QTRSRRRProof (EQUIVALENT) Used ordering: insert/2(YES,YES) cons/2(YES,YES) U1/4(YES,YES,YES,YES) lte/2(YES,YES) false/0) true/0) ordered/1)YES( U2/3(YES,YES,YES) 0/0) s/1)YES( nil/0) Quasi precedence: [insert_2, U1_4, nil] > [true, 0] > [cons_2, lte_2, U2_3] > false Status: insert_2: [1,2] cons_2: [2,1] U1_4: [3,4,1,2] lte_2: [2,1] false: multiset status true: multiset status U2_3: [3,2,1] 0: multiset status nil: multiset status With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: insert(cons(n, l), m) -> U1(lte(m, n), n, l, m) U1(false, n, l, m) -> cons(n, insert(l, m)) U1(true, n, l, m) -> cons(m, cons(n, l)) ordered(cons(m, cons(n, l))) -> U2(lte(m, n), n, l) U2(true, n, l) -> ordered(cons(n, l)) U2(false, n, l) -> false lte(0, n) -> true lte(s(m), 0) -> false insert(nil, m) -> cons(m, nil) ordered(nil) -> true ordered(cons(m, nil)) -> true ---------------------------------------- (4) Obligation: Q restricted rewrite system: The TRS R consists of the following rules: lte(s(m), s(n)) -> lte(m, n) Q is empty. ---------------------------------------- (5) QTRSRRRProof (EQUIVALENT) Used ordering: Knuth-Bendix order [KBO] with precedence:s_1 > lte_2 and weight map: s_1=0 lte_2=0 The variable weight is 1With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly: lte(s(m), s(n)) -> lte(m, n) ---------------------------------------- (6) Obligation: Q restricted rewrite system: R is empty. Q is empty. ---------------------------------------- (7) RisEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (8) YES