Certification Problem
Input (COPS 1085)
We consider two TRSs R and S where R contains the rules
+(x,0) |
→ |
x |
(1) |
+(x,s(y)) |
→ |
s(+(x,y)) |
(2) |
-(0,x) |
→ |
0 |
(3) |
-(x,0) |
→ |
x |
(4) |
-(s(x),s(y)) |
→ |
-(x,y) |
(5) |
and S contains the following rules:
s(p(x)) |
→ |
x |
(6) |
p(s(x)) |
→ |
x |
(7) |
+(x,0) |
→ |
x |
(1) |
+(x,s(y)) |
→ |
s(+(x,y)) |
(2) |
+(x,p(y)) |
→ |
p(+(x,y)) |
(8) |
-(0,0) |
→ |
0 |
(9) |
-(x,s(y)) |
→ |
p(-(x,y)) |
(10) |
-(x,p(y)) |
→ |
s(-(x,y)) |
(11) |
-(p(x),y) |
→ |
p(-(x,y)) |
(12) |
-(s(x),y) |
→ |
s(-(x,y)) |
(13) |
The underlying signature is as follows:
{+/2, -/2, 0/0, p/1, s/1}Property / Task
Prove or disprove commutation.Answer / Result
No.Proof (by ACP @ CoCo 2023)
1 Non-Joinable Fork
The systems are not commuting due to the following forking derivations.
t0
|
= |
-(0,s(y)) |
|
→S
|
p(-(0,y)) |
|
= |
s1
|
and
There is no possibility to join
s1→R*·←S*
t1
for the following reason:
- When applying the cap-function on both terms (where variables may be treated like constants)
then the resulting terms do not unify.