Skip to content

bloqade.cirq_utils.lineprog.LPProblem

← Module overview

classLPProblemsource

bloqade.cirq_utils.lineprog.LPProblem

Signature
class LPProblem(constraints_eqz: list[Expression] = list(), constraints_gez: list[Expression] = list(), linear_objective: Expression = (lambda: Expression({}))(), quadratic_objective: list[Expression] = list())

Parameters

NameTypeDefaultDescription
constraints_eqzlist[Expression]list()
constraints_gezlist[Expression]list()
linear_objectiveExpression(lambda: Expression({}))()
quadratic_objectivelist[Expression]list()

Attributes

NameTypeDefaultDescription
constraints_eqzlist[Expression]dataclasses.field(default_factory=list)
constraints_gezlist[Expression]dataclasses.field(default_factory=list)
linear_objectiveExpressiondataclasses.field(default_factory=(lambda: Expression({})))
quadratic_objectivelist[Expression]dataclasses.field(default_factory=list)

methodadd_gezsource

bloqade.cirq_utils.lineprog.LPProblem.add_gez

def add_gez(expr: Expression)

Parameters

NameTypeDescription
exprExpression
source

methodadd_lezsource

bloqade.cirq_utils.lineprog.LPProblem.add_lez

def add_lez(expr: Expression)

Parameters

NameTypeDescription
exprExpression
source

methodadd_eqzsource

bloqade.cirq_utils.lineprog.LPProblem.add_eqz

def add_eqz(expr: Expression)

Parameters

NameTypeDescription
exprExpression
source

methodadd_linearsource

bloqade.cirq_utils.lineprog.LPProblem.add_linear

def add_linear(expr: Expression)

Parameters

NameTypeDescription
exprExpression
source

methodadd_quadraticsource

bloqade.cirq_utils.lineprog.LPProblem.add_quadratic

def add_quadratic(expr: Expression)

Parameters

NameTypeDescription
exprExpression
source

methodadd_abssource

bloqade.cirq_utils.lineprog.LPProblem.add_abs

def add_abs(expr: Expression)

Use a slack variable to add an absolute value constraint.

Parameters

NameTypeDescription
exprExpression
source

propertybasissource

bloqade.cirq_utils.lineprog.LPProblem.basis

basis: list[Variable]
source

methodsolvesource

bloqade.cirq_utils.lineprog.LPProblem.solve

def solve() -> Solution

Returns

Solution

source