Certification Problem
Input (TPDB TRS_Equational/Mixed_AC/intersect)
The rewrite relation of the following equational TRS is considered.
if(true,x,y) |
→ |
x |
(1) |
if(false,x,y) |
→ |
y |
(2) |
eq(0,0) |
→ |
true |
(3) |
eq(0,s(x)) |
→ |
false |
(4) |
eq(s(x),s(y)) |
→ |
eq(x,y) |
(5) |
union(empty,x) |
→ |
x |
(6) |
inter(empty,x) |
→ |
empty |
(7) |
inter(union(y,z),x) |
→ |
union(inter(x,y),inter(x,z)) |
(8) |
inter(singl(x),singl(y)) |
→ |
if(eq(x,y),singl(x),empty) |
(9) |
Associative symbols: inter, union
Commutative symbols: eq, inter, union
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
[eq(x1, x2)] |
= |
3 + 3 · x2 + 3 · x1 + 2 · x1 · x2
|
[inter(x1, x2)] |
= |
2 + 2 · x2 + 2 · x1 + 1 · x1 · x2
|
[union(x1, x2)] |
= |
3 + 1 · x2 + 1 · x1
|
[if(x1, x2, x3)] |
= |
2 · x3 + 1 · x2 + 1 · x1
|
[true] |
= |
0 |
[false] |
= |
2 |
[0] |
= |
3 |
[s(x1)] |
= |
2 · x1 + 1 · x1 · x1
|
[empty] |
= |
1 |
[singl(x1)] |
= |
3 + 2 · x1
|
the
rules
if(false,x,y) |
→ |
y |
(2) |
eq(0,0) |
→ |
true |
(3) |
eq(0,s(x)) |
→ |
false |
(4) |
union(empty,x) |
→ |
x |
(6) |
inter(empty,x) |
→ |
empty |
(7) |
inter(union(y,z),x) |
→ |
union(inter(x,y),inter(x,z)) |
(8) |
inter(singl(x),singl(y)) |
→ |
if(eq(x,y),singl(x),empty) |
(9) |
can be deleted.
1.1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[eq(x1, x2)] |
= |
3 + 1 · x2 + 1 · x1
|
[inter(x1, x2)] |
= |
1 + 2 · x2 + 2 · x1 + 2 · x1 · x2
|
[union(x1, x2)] |
= |
2 + 3 · x2 + 3 · x1 + 3 · x1 · x2
|
[if(x1, x2, x3)] |
= |
1 · x3 + 3 · x2 + 3 · x1 + 3 · x1 · x2
|
[true] |
= |
1 |
[s(x1)] |
= |
1 · x1 + 1 · x1 · x1
|
the
rule
can be deleted.
1.1.1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[eq(x1, x2)] |
= |
3 + 1 · x2 + 1 · x1
|
[inter(x1, x2)] |
= |
3 + 3 · x2 + 3 · x1 + 2 · x1 · x2
|
[union(x1, x2)] |
= |
2 + 3 · x2 + 3 · x1 + 3 · x1 · x2
|
[s(x1)] |
= |
1 + 1 · x1 + 3 · x1 · x1
|
the
rule
eq(s(x),s(y)) |
→ |
eq(x,y) |
(5) |
can be deleted.
1.1.1.1 R is empty
There are no rules in the TRS. Hence, it is AC-terminating.