HigherOrder ¶
Convenience class to indicate the set of variables of an expression's higher-order term when iterating over the expression's components.
Note that the bias corresponding to these variables is not part of this class.
Examples:
>>> from luna_quantum import Constant, Expression, HigherOrder, Linear, Quadratic
>>> expr: Expression = ...
>>> vars: Constant | Linear | Quadratic | HigherOrder
>>> bias: float
>>> for vars, bias in expr.items():
>>> match vars:
>>> case Constant(): do_something_with_constant(bias)
>>> case Linear(x): do_something_with_linear_var(x, bias)
>>> case Quadratic(x, y): do_something_with_quadratic_vars(x, y, bias)
>>> case HigherOrder(ho): do_something_with_higher_order_vars(ho, bias)