Certification Problem
Input (TPDB TRS_Equational/Mixed_AC/bag-sum-prod)
The rewrite relation of the following equational TRS is considered.
+(0,x) |
→ |
x |
(1) |
+(s(x),s(y)) |
→ |
s(s(+(x,y))) |
(2) |
*(0,x) |
→ |
0 |
(3) |
*(s(x),s(y)) |
→ |
s(+(+(x,y),*(x,y))) |
(4) |
U(empty,b) |
→ |
b |
(5) |
sum(empty) |
→ |
0 |
(6) |
sum(singl(x)) |
→ |
x |
(7) |
sum(U(x,y)) |
→ |
+(sum(x),sum(y)) |
(8) |
prod(empty) |
→ |
s(0) |
(9) |
prod(singl(x)) |
→ |
x |
(10) |
prod(U(x,y)) |
→ |
*(prod(x),prod(y)) |
(11) |
Associative symbols: *, +, U
Commutative symbols: *, +, U
Property / Task
Prove or disprove termination.Answer / Result
Yes.Proof (by AProVE @ termCOMP 2023)
1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[*(x1, x2)] |
= |
1 · x2 + 1 · x1 + 2 · x1 · x2
|
[+(x1, x2)] |
= |
1 · x2 + 1 · x1
|
[U(x1, x2)] |
= |
1 · x2 + 1 · x1 + 2 · x1 · x2
|
[0] |
= |
2 |
[s(x1)] |
= |
1 + 1 · x1
|
[empty] |
= |
2 |
[sum(x1)] |
= |
2 · x1 · x1
|
[singl(x1)] |
= |
2 + 1 · x1 + 3 · x1 · x1
|
[prod(x1)] |
= |
1 · x1 · x1
|
the
rules
+(0,x) |
→ |
x |
(1) |
*(s(x),s(y)) |
→ |
s(+(+(x,y),*(x,y))) |
(4) |
U(empty,b) |
→ |
b |
(5) |
sum(empty) |
→ |
0 |
(6) |
sum(singl(x)) |
→ |
x |
(7) |
prod(empty) |
→ |
s(0) |
(9) |
prod(singl(x)) |
→ |
x |
(10) |
can be deleted.
1.1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[*(x1, x2)] |
= |
1 · x2 + 1 · x1
|
[+(x1, x2)] |
= |
2 + 2 · x2 + 2 · x1 + 1 · x1 · x2
|
[U(x1, x2)] |
= |
1 + 2 · x2 + 2 · x1 + 2 · x1 · x2
|
[s(x1)] |
= |
3 + 1 · x1
|
[0] |
= |
0 |
[sum(x1)] |
= |
2 · x1 + 3 · x1 · x1
|
[prod(x1)] |
= |
2 · x1 + 2 · x1 · x1
|
the
rules
+(s(x),s(y)) |
→ |
s(s(+(x,y))) |
(2) |
sum(U(x,y)) |
→ |
+(sum(x),sum(y)) |
(8) |
prod(U(x,y)) |
→ |
*(prod(x),prod(y)) |
(11) |
can be deleted.
1.1.1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[*(x1, x2)] |
= |
1 + 2 · x2 + 2 · x1 + 2 · x1 · x2
|
[+(x1, x2)] |
= |
3 + 3 · x2 + 3 · x1 + 2 · x1 · x2
|
[U(x1, x2)] |
= |
2 + 3 · x2 + 3 · x1 + 3 · x1 · x2
|
[0] |
= |
2 |
the
rule
can be deleted.
1.1.1.1 R is empty
There are no rules in the TRS. Hence, it is AC-terminating.