Sometimes, strategies aren't enough information for the system to figure out how to use an index. Some access methods require additional support routines in order to work. For example, the B-tree access method must be able to compare two keys and determine whether one is greater than, equal to, or less than the other. Similarly, the R-tree access method must be able to compute intersections, unions, and sizes of rectangles. These operations do not correspond to operators used in qualifications in SQL queries; they are administrative routines used by the access methods, internally.
   In order to manage diverse support routines consistently across all
   PostgreSQL access methods,
   pg_am includes a column called
   amsupport.  This column records the
   number of support routines used by an access method.  For B-trees,
   this number is one: the routine to take two keys and return -1, 0,
   or +1, depending on whether the first key is less than, equal to,
   or greater than the second. (Strictly speaking, this routine can
   return a negative number (< 0), zero, or a non-zero positive
   number (> 0).)
  
   The amstrategies entry in
   pg_am is just the number of strategies
   defined for the access method in question.  The operators for less
   than, less equal, and so on don't appear in
   pg_am.  Similarly,
   amsupport is just the number of support
   routines required by the access method.  The actual routines are
   listed elsewhere.
  
By the way, the amorderstrategy column tells whether the access method supports ordered scan. Zero means it doesn't; if it does, amorderstrategy is the number of the strategy routine that corresponds to the ordering operator. For example, B-tree has amorderstrategy = 1, which is its "less than" strategy number.