Certification Problem

Input (COPS 20)

We consider the TRS containing the following rules:

nats :(0,inc(nats)) (1)
inc(:(x,y)) :(s(x),inc(y)) (2)
hd(:(x,y)) x (3)
tl(:(x,y)) y (4)
inc(tl(nats)) tl(inc(nats)) (5)

The underlying signature is as follows:

{nats/0, :/2, 0/0, inc/1, s/1, hd/1, tl/1}

Property / Task

Prove or disprove confluence.

Answer / Result

Yes.

Proof (by csi @ CoCo 2020)

1 Redundant Rules Transformation

To prove that the TRS is (non-)confluent, we show (non-)confluence of the following modified system:

nats :(0,inc(nats)) (1)
inc(:(x,y)) :(s(x),inc(y)) (2)
hd(:(x,y)) x (3)
tl(:(x,y)) y (4)

All redundant rules that were added or removed can be simulated in 4 steps .

1.1 Critical Pair Closing System

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

There are no rules.

1.1.1 R is empty

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