class_docstr: A sequence of potential optimizations.
  
  Retrieve a sequence of optimizations (a SeqOptimizer) by calling query().
  
  Each potential optimization is registered with a floating-point position.
  No matter which optimizations are selected by a query, they are carried
  out in order of increasing position.
  
  The optdb itself (`theano.compile.mode.optdb`), from which (among many
  other tags) fast_run and fast_compile optimizers are drawn is a SequenceDB.
class_docstr_tok: ["A","sequence","of","potential","optimizations",".","Retrieve","a","sequence","of","optimizations","(","a","SeqOptimizer",")","by","calling","query","(",")",".","Each","potential","optimization","is","registered","with","a","floating-point","position",".","No","matter","which","optimizations","are","selected","by","a","query",",","they","are","carried","out","in","order","of","increasing","position",".","The","optdb","itself","(","`","theano.compile.mode.optdb","`",")",",","from","which","(","among","many","other","tags",")","fast_run","and","fast_compile","optimizers","are","drawn","is","a","SequenceDB","."]
docstr: Parameters
  ----------
  position_cutoff : float or int
      Only optimizations with position less than the cutoff are returned.
code: def query(self, *tags, **kwtags):
      """
  
      Parameters
      ----------
      position_cutoff : float or int
          Only optimizations with position less than the cutoff are returned.
  
      """
      opts = super(SequenceDB, self).query(*tags, **kwtags)
  
      position_cutoff = kwtags.pop(
          "position_cutoff", config.optdb.position_cutoff
      )
      position_dict = self.__position__
  
      if len(tags) >= 1 and isinstance(tags[0], Query):
          # the call to super should have raise an error with a good message
          assert len(tags) == 1
          if getattr(tags[0], "position_cutoff", None):
              position_cutoff = tags[0].position_cutoff
  
          # The Query instance might contain extra optimizations which need
          # to be added the the sequence of optimizations (don't alter the
          # original dictionary)
          if len(tags[0].extra_optimizations) > 0:
              position_dict = position_dict.copy()
              for extra_opt in tags[0].extra_optimizations:
                  # Give a name to the extra optimization (include both the
                  # class name for descriptiveness and id to avoid name
                  # collisions)
                  opt, position = extra_opt
                  opt.name = "%s_%i" % (opt.__class__, id(opt))
  
                  # Add the extra optimization to the optimization sequence
                  if position < position_cutoff:
                      opts.add(opt)
                      position_dict[opt.name] = position
  
      opts = [
          o for o in opts if position_dict[o.name] < position_cutoff
      ]
      opts.sort(key=lambda obj: (position_dict[obj.name], obj.name))
      kwargs = {}
      if self.failure_callback:
          kwargs["failure_callback"] = self.failure_callback
      ret = self.seq_opt(opts, **kwargs)
      if hasattr(tags[0], "name"):
          ret.name = tags[0].name
      return ret
  
imports: from __future__ import absolute_import, print_function, division
  import copy
  import sys
  from theano.compat import DefaultOrderedDict
  from theano.misc.ordered_set import OrderedSet
  from six import StringIO, integer_types
  from theano.gof import opt
  from theano import config
label_desc: Use image node_id 3 for calling the SequenceDB obj's underlying member method code with example usage: obj.query() and returns: ret