YES proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty Termination of the given RelTRS could be proven: (0) RelTRS (1) RelTRSRRRProof [EQUIVALENT, 39 ms] (2) RelTRS (3) RelTRSRRRProof [EQUIVALENT, 14 ms] (4) RelTRS (5) RelTRSRRRProof [EQUIVALENT, 6 ms] (6) RelTRS (7) RIsEmptyProof [EQUIVALENT, 0 ms] (8) YES ---------------------------------------- (0) Obligation: Relative term rewrite system: The relative TRS consists of the following R rules: l(m(x)) -> m(l(x)) m(r(x)) -> r(m(x)) f(m(x), y) -> f(x, m(y)) The relative TRS consists of the following S rules: b -> l(b) f(x, y) -> f(x, r(y)) ---------------------------------------- (1) RelTRSRRRProof (EQUIVALENT) We used the following monotonic ordering for rule removal: l/1)YES( m/1(YES) r/1)YES( f/2(YES,YES) b/0) Quasi precedence: f_2 > m_1 Status: m_1: [1] f_2: [1,2] b: multiset status With this ordering the following rules can be removed [MATRO] because they are oriented strictly: Rules from R: f(m(x), y) -> f(x, m(y)) Rules from S: none ---------------------------------------- (2) Obligation: Relative term rewrite system: The relative TRS consists of the following R rules: l(m(x)) -> m(l(x)) m(r(x)) -> r(m(x)) The relative TRS consists of the following S rules: b -> l(b) f(x, y) -> f(x, r(y)) ---------------------------------------- (3) RelTRSRRRProof (EQUIVALENT) We used the following monotonic ordering for rule removal: Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : <<< POL(l(x_1)) = [[0], [0]] + [[1, 1], [0, 1]] * x_1 >>> <<< POL(m(x_1)) = [[0], [1]] + [[1, 0], [0, 1]] * x_1 >>> <<< POL(r(x_1)) = [[0], [1]] + [[1, 0], [1, 1]] * x_1 >>> <<< POL(b) = [[0], [0]] >>> <<< POL(f(x_1, x_2)) = [[1], [1]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 >>> With this ordering the following rules can be removed [MATRO] because they are oriented strictly: Rules from R: l(m(x)) -> m(l(x)) Rules from S: none ---------------------------------------- (4) Obligation: Relative term rewrite system: The relative TRS consists of the following R rules: m(r(x)) -> r(m(x)) The relative TRS consists of the following S rules: b -> l(b) f(x, y) -> f(x, r(y)) ---------------------------------------- (5) RelTRSRRRProof (EQUIVALENT) We used the following monotonic ordering for rule removal: Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : <<< POL(m(x_1)) = [[1], [0]] + [[1, 1], [1, 1]] * x_1 >>> <<< POL(r(x_1)) = [[0], [1]] + [[1, 0], [0, 1]] * x_1 >>> <<< POL(b) = [[1], [1]] >>> <<< POL(l(x_1)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 >>> <<< POL(f(x_1, x_2)) = [[1], [1]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 >>> With this ordering the following rules can be removed [MATRO] because they are oriented strictly: Rules from R: m(r(x)) -> r(m(x)) Rules from S: none ---------------------------------------- (6) Obligation: Relative term rewrite system: R is empty. The relative TRS consists of the following S rules: b -> l(b) f(x, y) -> f(x, r(y)) ---------------------------------------- (7) RIsEmptyProof (EQUIVALENT) The TRS R is empty. Hence, termination is trivially proven. ---------------------------------------- (8) YES