qat.fusion.strategies.EagerStrategy

class qat.fusion.strategies.EagerStrategy(qbit_limit=4, priority='adding_cost')

Maintain a collection of groups and eagerly merge new gates into the first group that accepts it. If no group accepts it, create a new group containing the gate.

Parameters
  • qbit_limit (optional, int) – the size limit on the group (in qbits). Defaults to 4.

  • priority (optional, str) – the priority when composing the groups. Defaults to “adding_cost”.capitalize. See below for details.

Priorities:

  • “small_groups”: priorities grouping smaller group candidates, resulting in a lower number of small gates

  • “adding_cost”: priorities grouping group candidates whose fusing cost less, resulting in a lower number of total gates