Certification Problem

Input (COPS 278)

The rewrite relation of the following conditional TRS is considered.

fstsplit(0,x) → nil
fstsplit(s(n),nil) → nil
fstsplit(s(n),cons(h,t)) → cons(h,fstsplit(n,t))
sndsplit(0,x) → x
sndsplit(s(n),nil) → nil
sndsplit(s(n),cons(h,t)) → sndsplit(n,t)
empty(nil) → true
empty(cons(h,t)) → false
leq(0,m) → true
leq(s(n),0) → false
leq(s(n),s(m)) → leq(n,m)
length(nil) → 0
length(cons(h,t)) → s(length(t))
app(nil,x) → x
app(cons(h,t),x) → cons(h,app(t,x))
map_f(pid,nil) → nil
map_f(pid,cons(h,t)) → app(f(pid,h),map_f(pid,t))
process(store,m) → process(app(map_f(self,nil),sndsplit(m,store)),m) | leq(m,length(store)) ≈ true, empty(fstsplit(m,store)) ≈ false
process(store,m) → process(sndsplit(m,app(map_f(self,nil),store)),m) | leq(m,length(store)) ≈ false, empty(fstsplit(m,app(map_f(self,nil),store))) ≈ false

Property / Task

Prove or disprove confluence.

Answer / Result

Yes.

Proof (by ConCon @ CoCo 2020)

1 Almost-orthogonal modulo infeasibility

The given (extended) properly oriented, right-stable, oriented 3-CTRS is almost-orthogonal modulo infeasibility, since all its conditional critical pairs are infeasible.