Termination proof

1: switching to dependency pairs

The following set of initial dependency pairs has been identified.

minus#( s( x ) , s( y ) ) minus#( x , y )
le#( s( x ) , s( y ) ) le#( x , y )
perfectp#( s( x ) ) f#( x , s( 0 ) , s( x ) , s( x ) )
f#( s( x ) , 0 , z , u ) f#( x , u , minus( z , s( x ) ) , u )
f#( s( x ) , 0 , z , u ) minus#( z , s( x ) )
f#( s( x ) , s( y ) , z , u ) if#( le( x , y ) , f( s( x ) , minus( y , x ) , z , u ) , f( x , u , z , u ) )
f#( s( x ) , s( y ) , z , u ) le#( x , y )
f#( s( x ) , s( y ) , z , u ) f#( s( x ) , minus( y , x ) , z , u )
f#( s( x ) , s( y ) , z , u ) minus#( y , x )
f#( s( x ) , s( y ) , z , u ) f#( x , u , z , u )

1.1: dependency graph processor

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