21.35/6.37 YES 21.35/6.40 proof of /export/starexec/sandbox/benchmark/theBenchmark.xml 21.35/6.40 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 21.35/6.40 21.35/6.40 21.35/6.40 Termination of the given RelTRS could be proven: 21.35/6.40 21.35/6.40 (0) RelTRS 21.35/6.40 (1) RelTRSRRRProof [EQUIVALENT, 129 ms] 21.35/6.40 (2) RelTRS 21.35/6.40 (3) RelTRSRRRProof [EQUIVALENT, 239 ms] 21.35/6.40 (4) RelTRS 21.35/6.40 (5) RelTRSRRRProof [EQUIVALENT, 147 ms] 21.35/6.40 (6) RelTRS 21.35/6.40 (7) RelTRSRRRProof [EQUIVALENT, 99 ms] 21.35/6.40 (8) RelTRS 21.35/6.40 (9) RelTRSRRRProof [EQUIVALENT, 75 ms] 21.35/6.40 (10) RelTRS 21.35/6.40 (11) RelTRSRRRProof [EQUIVALENT, 54 ms] 21.35/6.40 (12) RelTRS 21.35/6.40 (13) RelTRSRRRProof [EQUIVALENT, 41 ms] 21.35/6.40 (14) RelTRS 21.35/6.40 (15) RelTRSRRRProof [EQUIVALENT, 0 ms] 21.35/6.40 (16) RelTRS 21.35/6.40 (17) RelTRSRRRProof [EQUIVALENT, 0 ms] 21.35/6.40 (18) RelTRS 21.35/6.40 (19) RelTRSRRRProof [EQUIVALENT, 0 ms] 21.35/6.40 (20) RelTRS 21.35/6.40 (21) RelTRSRRRProof [EQUIVALENT, 8 ms] 21.35/6.40 (22) RelTRS 21.35/6.40 (23) RelTRSRRRProof [EQUIVALENT, 7 ms] 21.35/6.40 (24) RelTRS 21.35/6.40 (25) RIsEmptyProof [EQUIVALENT, 0 ms] 21.35/6.40 (26) YES 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (0) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(old(n), e, s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(north(new(n), e, s, old(w))) -> top(east(n, e, s, old(w))) 21.35/6.40 top(east(n, old(e), s, w)) -> top(south(n, e, s, w)) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(n, e, old(s), w)) -> top(west(n, e, s, w)) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, old(e), new(s), w)) -> top(west(n, old(e), s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(n, e, s, old(w))) -> top(north(n, e, s, w)) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(west(n, e, old(s), new(w))) -> top(north(n, e, old(s), w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 top(north(bot, e, s, old(w))) -> top(east(bot, e, s, old(w))) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, old(e), bot, w)) -> top(west(n, old(e), bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 top(west(n, e, old(s), bot)) -> top(north(n, e, old(s), bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(old(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, old(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, old(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, old(w))) -> top(west(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (1) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Polynomial interpretation [POLO]: 21.35/6.40 21.35/6.40 POL(bot) = 0 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(new(x_1)) = x_1 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(old(x_1)) = 1 + x_1 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(top(x_1)) = x_1 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(north(old(n), e, s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(east(n, old(e), s, w)) -> top(south(n, e, s, w)) 21.35/6.40 top(south(n, e, old(s), w)) -> top(west(n, e, s, w)) 21.35/6.40 top(west(n, e, s, old(w))) -> top(north(n, e, s, w)) 21.35/6.40 Rules from S: 21.35/6.40 21.35/6.40 top(north(old(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, old(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, old(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, old(w))) -> top(west(n, e, s, w)) 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (2) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(north(new(n), e, s, old(w))) -> top(east(n, e, s, old(w))) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, old(e), new(s), w)) -> top(west(n, old(e), s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(west(n, e, old(s), new(w))) -> top(north(n, e, old(s), w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 top(north(bot, e, s, old(w))) -> top(east(bot, e, s, old(w))) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, old(e), bot, w)) -> top(west(n, old(e), bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 top(west(n, e, old(s), bot)) -> top(north(n, e, old(s), bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (3) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 1], [1, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 1], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[1], [0]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 1]] * x_1 + [[1, 1], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 1]] * x_1 + [[1, 1], [0, 1]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 1], [0, 1]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(west(n, e, old(s), new(w))) -> top(north(n, e, old(s), w)) 21.35/6.40 top(west(n, e, old(s), bot)) -> top(north(n, e, old(s), bot)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (4) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(north(new(n), e, s, old(w))) -> top(east(n, e, s, old(w))) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, old(e), new(s), w)) -> top(west(n, old(e), s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 top(north(bot, e, s, old(w))) -> top(east(bot, e, s, old(w))) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, old(e), bot, w)) -> top(west(n, old(e), bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (5) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 1], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(south(n, old(e), new(s), w)) -> top(west(n, old(e), s, w)) 21.35/6.40 top(south(n, old(e), bot, w)) -> top(west(n, old(e), bot, w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (6) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(north(new(n), e, s, old(w))) -> top(east(n, e, s, old(w))) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 top(north(bot, e, s, old(w))) -> top(east(bot, e, s, old(w))) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (7) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [1, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 0], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 1], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 0], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, old(w))) -> top(east(n, e, s, old(w))) 21.35/6.40 top(north(bot, e, s, old(w))) -> top(east(bot, e, s, old(w))) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (8) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (9) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 0], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 0], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 1], [0, 1]] * x_2 + [[1, 0], [0, 1]] * x_3 + [[1, 0], [0, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 0], [0, 1]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(north(new(n), e, old(s), w)) -> top(east(n, e, old(s), w)) 21.35/6.40 top(north(bot, e, old(s), w)) -> top(east(bot, e, old(s), w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (10) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (11) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 0], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [1, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(east(old(n), new(e), s, w)) -> top(south(old(n), e, s, w)) 21.35/6.40 top(east(old(n), bot, s, w)) -> top(south(old(n), bot, s, w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (12) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (13) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 0], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 0]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 0]] * x_3 + [[1, 1], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(south(old(n), e, new(s), w)) -> top(west(old(n), e, s, w)) 21.35/6.40 top(south(old(n), e, bot, w)) -> top(west(old(n), e, bot, w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (14) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (15) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [1]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 1]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 0], [1, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 1]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 + [[1, 0], [1, 0]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 0], [1, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 1]] * x_1 + [[1, 1], [1, 0]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 0], [1, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [0, 1]] * x_1 + [[1, 0], [1, 1]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 0], [1, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(west(old(n), e, s, new(w))) -> top(north(old(n), e, s, w)) 21.35/6.40 top(west(n, old(e), s, new(w))) -> top(north(n, old(e), s, w)) 21.35/6.40 top(west(old(n), e, s, bot)) -> top(north(old(n), e, s, bot)) 21.35/6.40 top(west(n, old(e), s, bot)) -> top(north(n, old(e), s, bot)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (16) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (17) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 + [[1, 1], [0, 0]] * x_2 + [[1, 1], [1, 1]] * x_3 + [[1, 1], [1, 1]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 1]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 0], [0, 0]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 1]] * x_1 + [[1, 0], [1, 1]] * x_2 + [[1, 0], [0, 0]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [1, 1]] * x_1 + [[1, 0], [1, 1]] * x_2 + [[1, 0], [1, 1]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(north(new(n), old(e), s, w)) -> top(east(n, old(e), s, w)) 21.35/6.40 top(north(bot, old(e), s, w)) -> top(east(bot, old(e), s, w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (18) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (19) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Matrix interpretation [MATRO] to (N^2, +, *, >=, >) : 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(top(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 1], [0, 0]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(new(x_1)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(old(x_1)) = [[0], [1]] + [[1, 0], [0, 0]] * x_1 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 + [[1, 0], [1, 1]] * x_2 + [[1, 0], [0, 0]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 1], [1, 1]] * x_1 + [[1, 0], [1, 1]] * x_2 + [[1, 0], [1, 1]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(bot) = [[0], [0]] 21.35/6.40 >>> 21.35/6.40 21.35/6.40 <<< 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = [[0], [0]] + [[1, 0], [0, 0]] * x_1 + [[1, 0], [0, 0]] * x_2 + [[1, 0], [0, 0]] * x_3 + [[1, 0], [0, 0]] * x_4 21.35/6.40 >>> 21.35/6.40 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(east(n, new(e), old(s), w)) -> top(south(n, e, old(s), w)) 21.35/6.40 top(east(n, bot, old(s), w)) -> top(south(n, bot, old(s), w)) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (20) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (21) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Polynomial interpretation [POLO]: 21.35/6.40 21.35/6.40 POL(bot) = 0 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(new(x_1)) = x_1 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(old(x_1)) = x_1 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(top(x_1)) = x_1 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(south(n, e, new(s), old(w))) -> top(west(n, e, s, old(w))) 21.35/6.40 top(south(n, e, bot, old(w))) -> top(west(n, e, bot, old(w))) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (22) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 The relative TRS consists of the following R rules: 21.35/6.40 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (23) RelTRSRRRProof (EQUIVALENT) 21.35/6.40 We used the following monotonic ordering for rule removal: 21.35/6.40 Polynomial interpretation [POLO]: 21.35/6.40 21.35/6.40 POL(bot) = 0 21.35/6.40 POL(east(x_1, x_2, x_3, x_4)) = 1 + x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(new(x_1)) = x_1 21.35/6.40 POL(north(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(old(x_1)) = x_1 21.35/6.40 POL(south(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 POL(top(x_1)) = x_1 21.35/6.40 POL(west(x_1, x_2, x_3, x_4)) = x_1 + x_2 + x_3 + x_4 21.35/6.40 With this ordering the following rules can be removed [MATRO] because they are oriented strictly: 21.35/6.40 Rules from R: 21.35/6.40 21.35/6.40 top(east(n, new(e), s, old(w))) -> top(south(n, e, s, old(w))) 21.35/6.40 top(east(n, bot, s, old(w))) -> top(south(n, bot, s, old(w))) 21.35/6.40 Rules from S: 21.35/6.40 none 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (24) 21.35/6.40 Obligation: 21.35/6.40 Relative term rewrite system: 21.35/6.40 R is empty. 21.35/6.40 The relative TRS consists of the following S rules: 21.35/6.40 21.35/6.40 top(north(new(n), e, s, w)) -> top(north(n, e, s, w)) 21.35/6.40 top(east(n, new(e), s, w)) -> top(east(n, e, s, w)) 21.35/6.40 top(south(n, e, new(s), w)) -> top(south(n, e, s, w)) 21.35/6.40 top(west(n, e, s, new(w))) -> top(west(n, e, s, w)) 21.35/6.40 bot -> new(bot) 21.35/6.40 21.35/6.40 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (25) RIsEmptyProof (EQUIVALENT) 21.35/6.40 The TRS R is empty. Hence, termination is trivially proven. 21.35/6.40 ---------------------------------------- 21.35/6.40 21.35/6.40 (26) 21.35/6.40 YES 21.60/6.45 EOF