Linear Programming
- Introduction
- Explicit LP Solving Functions
MaximalSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
MinimalSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
MaximalIntegerSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
MinimalIntegerSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
MaximalZeroOneSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
MinimalZeroOneSolution(LHS, relations, RHS, objective): Mtrx, Mtrx, Mtrx, Mtrx → Mtrx, RngIntElt
Example: Explicit LP Solutions One
Example: Explicit LP Solutions Two
- Creation of LP objects
- Operations on LP objects
AddConstraints(L, lhs, rhs): LP, Mtrx, Mtrx
NumberOfConstraints(L): LP → RngIntElt
NumberOfVariables(L): LP → RngIntElt
EvaluateAt(L, p): LP, Mtrx → RngIntElt
Constraint(L, n): LP, RngIntElt → Mtrx, Mtrx, RngIntElt
IntegerSolutionVariables(L): LP → SeqEnum
ObjectiveFunction(L): LP → Mtrx
IsMaximisingFunction(L): LP → BoolElt
RemoveConstraint(L, n): LP, RngIntElt
SetIntegerSolutionVariables(L, I, m): LP, SeqEnum[RngIntElt], BoolElt
SetLowerBound(L, n, b): LP, RngIntElt, RngElt
SetMaximiseFunction(L, m): LP, BoolElt
SetObjectiveFunction(L, F): LP, Mtrx
SetUpperBound(L, n, b): LP, RngIntElt, RngElt
Solution(L): LP → Mtrx, RngIntElt
UnsetBounds(L): LP
Example: Filling LP Object