Certification Problem
Input (TPDB TRS_Equational/AProVE_AC_04/AC28)
The rewrite relation of the following equational TRS is considered.
union(empty,X) |
→ |
X |
(1) |
max(singl(x)) |
→ |
x |
(2) |
max(union(singl(x),singl(0))) |
→ |
x |
(3) |
max(union(singl(s(x)),singl(s(y)))) |
→ |
s(max(union(singl(x),singl(y)))) |
(4) |
max(union(singl(x),union(Y,Z))) |
→ |
max(union(singl(x),singl(max(union(Y,Z))))) |
(5) |
Associative symbols: union
Commutative symbols: union
Property / Task
Prove or disprove termination.Answer / Result
Yes.Proof (by AProVE @ termCOMP 2023)
1 AC Rule Removal
Using the
linear polynomial interpretation over the naturals
[union(x1, x2)] |
= |
1 · x2 + 1 · x1
|
[empty] |
= |
1 |
[max(x1)] |
= |
1 · x1
|
[singl(x1)] |
= |
1 · x1
|
[0] |
= |
0 |
[s(x1)] |
= |
1 · x1
|
the
rule
can be deleted.
1.1 AC Rule Removal
Using the
linear polynomial interpretation over the naturals
[union(x1, x2)] |
= |
1 · x2 + 1 · x1
|
[max(x1)] |
= |
1 · x1
|
[singl(x1)] |
= |
1 · x1
|
[0] |
= |
3 |
[s(x1)] |
= |
1 · x1
|
the
rule
max(union(singl(x),singl(0))) |
→ |
x |
(3) |
can be deleted.
1.1.1 AC Rule Removal
Using the
non-linear polynomial interpretation over the naturals
[union(x1, x2)] |
= |
2 + 2 · x2 + 2 · x1 + 1 · x1 · x2
|
[max(x1)] |
= |
1 · x1
|
[singl(x1)] |
= |
1 · x1
|
[s(x1)] |
= |
1 + 1 · x1
|
the
rule
max(union(singl(s(x)),singl(s(y)))) |
→ |
s(max(union(singl(x),singl(y)))) |
(4) |
can be deleted.
1.1.1.1 AC Dependency Pair Transformation
The following set of (strict) dependency pairs is constructed for the TRS.
max#(union(singl(x),union(Y,Z))) |
→ |
max#(union(singl(x),singl(max(union(Y,Z))))) |
(8) |
max#(union(singl(x),union(Y,Z))) |
→ |
max#(union(Y,Z)) |
(9) |
The extended rules of the TRS
There are no rules.
give rise to even more dependency pairs (by sharping the root symbols of each rule).
Finiteness for all DPs in combination with the equational DPs is proven as follows.
1.1.1.1.1 AC Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[union(x1, x2)] |
= |
2 + 1 · x1 + 1 · x2
|
[max(x1)] |
= |
1 · x1
|
[singl(x1)] |
= |
1 · x1
|
[max#(x1)] |
= |
2 · x1
|
together with the usable
rules
max(singl(x)) |
→ |
x |
(2) |
max(union(singl(x),union(Y,Z))) |
→ |
max(union(singl(x),singl(max(union(Y,Z))))) |
(5) |
union(x,y) |
→ |
union(y,x) |
(6) |
union(union(x,y),z) |
→ |
union(x,union(y,z)) |
(7) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
max#(union(singl(x),union(Y,Z))) |
→ |
max#(union(Y,Z)) |
(9) |
and
no rules
could be deleted.
1.1.1.1.1.1 AC Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[max#(x1)] |
= |
1 · x1
|
[union(x1, x2)] |
= |
1 + 1 · x1 + 1 · x2
|
[singl(x1)] |
= |
0 |
[max(x1)] |
= |
0 |
together with the usable
rules
union(union(x,y),z) |
→ |
union(x,union(y,z)) |
(7) |
union(x,y) |
→ |
union(y,x) |
(6) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
max#(union(singl(x),union(Y,Z))) |
→ |
max#(union(singl(x),singl(max(union(Y,Z))))) |
(8) |
could be deleted.
1.1.1.1.1.1.1 AC Dependency Pair Problem is trivial
There are no strict pairs and rules remaining, or there are no DPs remaining. Therefore, finiteness is trivially satisfied.