MAYBE ignored inputs: (COMMENT an explicit substitution calculus for lambda terms ) (COMMENT Example 43 of [ FG07 , doi:10.1016/j.ic.2006.12.002 ] ) NRS: [ (0): |- (sub <[a](app <[]X,[]Y>),[]Z>) -> (app <(sub <[a][]X,[]Z>),(sub <[a][]Y,[]Z>)>), (1): |- (sub <[a]a,[]X>) -> []X, (2): a#X |- (sub <[a][]X,[]Y>) -> []X, (3): b#Y |- (sub <[a](lam [b][]X),[]Y>) -> (lam [b](sub <[a][]X,[]Y>)) ] Check confluence by orthogonality abstract skeleton preserving left-linear check proper overlapping a proper overlap exists 0-2 a#X,a#Y |- < (app <(sub <[a][]X,[]Y_1>),(sub <[a][]Y,[]Y_1>)>) <= (sub <[a](app <[]X,[]Y>),[]Y_1>) => (app <[]X,[]Y>) > found proper overlaps result: MAYBE time: 2 msec.