YES Confluence Proof

Confluence Proof

by Hakusan

Input

The rewrite relation of the following TRS is considered.

+(x,0) x
+(x,s(y)) s(+(x,y))
+(x,+(y,z)) +(+(x,y),z)
+(+(x,y),z) +(x,+(y,z))

Proof

1 Compositional Parallel Critical Pair Systems

All parallel critical pairs of the TRS R are joinable by R. This can be seen as follows: The parallel critical pairs can be joined as follows. Here, ↔ is always chosen as an appropriate rewrite relation which is automatically inferred by the certifier.
The TRS C is chosen as:
+(x,0) x
+(x,s(y)) s(+(x,y))
+(x,+(y,z)) +(+(x,y),z)
Consequently, PCPS(R,C) is included in the following TRS P where steps are used to show that certain pairs are C-convertible.

There are no rules.


Relative termination of P / R is proven as follows.

1.1 R is empty

There are no rules in the TRS R. Hence, R/S is relative terminating.


Confluence of C is proven as follows.

1.2 Compositional Parallel Critical Pair Systems

All parallel critical pairs of the TRS R are joinable by R. This can be seen as follows: The parallel critical pairs can be joined as follows. Here, ↔ is always chosen as an appropriate rewrite relation which is automatically inferred by the certifier.
The TRS C is chosen as:

There are no rules.

Consequently, PCPS(R,C) is included in the following TRS P where steps are used to show that certain pairs are C-convertible.
+(y1,+(y2,0)) +(y1,y2)
+(y1,+(y2,0)) +(+(y1,y2),0)
+(y1,+(y2,s(x1_2))) +(y1,s(+(y2,x1_2)))
+(y1,+(y2,s(x1_2))) +(+(y1,y2),s(x1_2))
+(y1,+(y2,+(x1_2,x1_3))) +(y1,+(+(y2,x1_2),x1_3))
+(y1,+(y2,+(x1_2,x1_3))) +(+(y1,y2),+(x1_2,x1_3))

Relative termination of P / R is proven as follows.

1.2.1 Rule Removal

Using the linear polynomial interpretation over (2 x 2)-matrices with strict dimension 1 over the naturals
[+(x1, x2)] =
1 0
0 1
· x1 +
1 0
2 0
· x2 +
0 0
0 0
[0] =
3 0
0 0
[s(x1)] =
1 0
0 0
· x1 +
0 0
0 0
the rules
+(y1,+(y2,0)) +(+(y1,y2),0)
+(y1,+(y2,s(x1_2))) +(y1,s(+(y2,x1_2)))
+(y1,+(y2,s(x1_2))) +(+(y1,y2),s(x1_2))
+(y1,+(y2,+(x1_2,x1_3))) +(y1,+(+(y2,x1_2),x1_3))
+(y1,+(y2,+(x1_2,x1_3))) +(+(y1,y2),+(x1_2,x1_3))
remain in R. Moreover, the rules
+(x,s(y)) s(+(x,y))
+(x,+(y,z)) +(+(x,y),z)
remain in S.

1.2.1.1 Rule Removal

Using the linear polynomial interpretation over (2 x 2)-matrices with strict dimension 1 over the naturals
[+(x1, x2)] =
1 0
0 1
· x1 +
1 1
2 0
· x2 +
0 0
0 0
[0] =
0 0
0 0
[s(x1)] =
1 0
0 1
· x1 +
2 0
0 0
the rules
+(y1,+(y2,0)) +(+(y1,y2),0)
+(y1,+(y2,+(x1_2,x1_3))) +(y1,+(+(y2,x1_2),x1_3))
+(y1,+(y2,+(x1_2,x1_3))) +(+(y1,y2),+(x1_2,x1_3))
remain in R. Moreover, the rules
+(x,s(y)) s(+(x,y))
+(x,+(y,z)) +(+(x,y),z)
remain in S.

1.2.1.1.1 Rule Removal

Using the linear polynomial interpretation over (2 x 2)-matrices with strict dimension 1 over the naturals
[+(x1, x2)] =
1 0
0 1
· x1 +
1 1
0 1
· x2 +
0 0
0 0
[0] =
1 0
1 0
[s(x1)] =
1 0
0 1
· x1 +
0 0
0 0
the rules
+(y1,+(y2,+(x1_2,x1_3))) +(y1,+(+(y2,x1_2),x1_3))
+(y1,+(y2,+(x1_2,x1_3))) +(+(y1,y2),+(x1_2,x1_3))
remain in R. Moreover, the rules
+(x,s(y)) s(+(x,y))
+(x,+(y,z)) +(+(x,y),z)
remain in S.

1.2.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (2 x 2)-matrices with strict dimension 1 over the naturals
[+(x1, x2)] =
1 0
0 1
· x1 +
1 1
1 0
· x2 +
0 0
0 0
[s(x1)] =
1 0
0 1
· x1 +
2 0
2 0
the rules
+(y1,+(y2,+(x1_2,x1_3))) +(y1,+(+(y2,x1_2),x1_3))
+(y1,+(y2,+(x1_2,x1_3))) +(+(y1,y2),+(x1_2,x1_3))
remain in R. Moreover, the rule
+(x,+(y,z)) +(+(x,y),z)
remains in S.

1.2.1.1.1.1.1 Rule Removal

Using the linear polynomial interpretation over (2 x 2)-matrices with strict dimension 1 over the naturals
[+(x1, x2)] =
1 0
0 1
· x1 +
1 1
1 1
· x2 +
0 0
1 0
all rules of R could be removed. Moreover, all rules of S could be removed.

1.2.1.1.1.1.1.1 R is empty

There are no rules in the TRS R. Hence, R/S is relative terminating.


Confluence of C is proven as follows.

1.2.2 (Weakly) Orthogonal

Confluence is proven since the TRS is (weakly) orthogonal.

Tool configuration

Hakusan