Step 1
= MHCForward( , ) Section 2.1
Step 2
for
    
end
for
    for
        flagsub
    end
    
    for
        
   end
   while
      
      for
          
      end
      for
          if flagsub( ) = 0
             
             
          end
      end
Step 3
      if min(NoSub( )) > 0
         = value of is a minimum
        for
            
        end
        flagsub
      else
        
        for
            
        end
      end
   end
end
Pseudocode 1