YES Confluence Proof

Confluence Proof

by csi

Input

The rewrite relation of the following TRS is considered.

if(true,x,y) x
if(false,x,y) y
-(s(x),s(y)) -(x,y)
-(x,0) x
-(0,x) 0
<(s(x),s(y)) <(x,y)
<(0,s(x)) true
<(x,0) false
mod(0,y) 0
mod(x,s(y)) if(<(x,s(y)),x,mod(-(x,s(y)),s(y)))
mod(x,0) x
gcd(x,y) gcd(y,mod(x,y))
gcd(x,0) x
gcd(0,x) x

Proof

1 Critical Pair Closing System

Confluence is proven using the following terminating critical-pair-closing-system R:

<(0,s(x)) true
if(true,x,y) x
gcd(0,x) x
mod(x,0) x
mod(0,y) 0
gcd(x,0) x

1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[gcd(x1, x2)] = 1 · x1 + 2 · x2 + 3
[if(x1, x2, x3)] = 1 · x1 + 2 · x2 + 2 · x3 + 0
[s(x1)] = 1 · x1 + 0
[0] = 0
[true] = 0
[mod(x1, x2)] = 2 · x1 + 2 · x2 + 4
[<(x1, x2)] = 1 · x1 + 1 · x2 + 1
the rule
if(true,x,y) x
remains.

1.1.1 Rule Removal

Using the linear polynomial interpretation over the naturals
[if(x1, x2, x3)] = 1 · x1 + 1 · x2 + 4 · x3 + 1
[true] = 0
all rules could be removed.

1.1.1.1 R is empty

There are no rules in the TRS. Hence, it is terminating.

Tool configuration

csi