Termination proof

1: switching to dependency pairs

The following set of initial dependency pairs has been identified.

eq#( s( x ) , s( y ) ) eq#( x , y )
le#( s( x ) , s( y ) ) le#( x , y )
app#( add( n , x ) , y ) app#( x , y )
min#( add( n , add( m , x ) ) ) if_min#( le( n , m ) , add( n , add( m , x ) ) )
min#( add( n , add( m , x ) ) ) le#( n , m )
if_min#( true , add( n , add( m , x ) ) ) min#( add( n , x ) )
if_min#( false , add( n , add( m , x ) ) ) min#( add( m , x ) )
rm#( n , add( m , x ) ) if_rm#( eq( n , m ) , n , add( m , x ) )
rm#( n , add( m , x ) ) eq#( n , m )
if_rm#( true , n , add( m , x ) ) rm#( n , x )
if_rm#( false , n , add( m , x ) ) rm#( n , x )
minsort#( add( n , x ) , y ) if_minsort#( eq( n , min( add( n , x ) ) ) , add( n , x ) , y )
minsort#( add( n , x ) , y ) eq#( n , min( add( n , x ) ) )
minsort#( add( n , x ) , y ) min#( add( n , x ) )
if_minsort#( true , add( n , x ) , y ) minsort#( app( rm( n , x ) , y ) , nil )
if_minsort#( true , add( n , x ) , y ) app#( rm( n , x ) , y )
if_minsort#( true , add( n , x ) , y ) rm#( n , x )
if_minsort#( false , add( n , x ) , y ) minsort#( x , add( n , y ) )

1.1: dependency graph processor

The dependency pairs are split into 6 component(s).