Export (0) Print
Expand All

ConstraintSystem Class

Solver Foundation 3.0

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Defines how to create and solve models.

System.Object
  Microsoft.SolverFoundation.Solvers.ConstraintSystem

Namespace:  Microsoft.SolverFoundation.Solvers
Assembly:  Microsoft.Solver.Foundation (in Microsoft.Solver.Foundation.dll)

public final class ConstraintSystem implements ISolver, IReportProvider

The ConstraintSystem type exposes the following members.

  NameDescription
Public propertyAbortDomainNarrowingReturns a value that indicates whether the solver is being requested to stop or has already stopped.
Public propertyBacktrackCountGets the number of backtracks during a search.
Public propertyConstraintsGets the collection of constraint functions added to a solver.
Public propertyDefaultBooleanGets a Boolean domain that contains 0 (false) and 1 (true).
Public propertyDefaultIntervalGets a domain that represents the minimum to maximum finite values supported by a solver.
Public propertyEmptyGets a domain with the empty set.
Public propertyFalseGets the Boolean CspTerm {false}.
Public propertyGoalCountGets the number of minimization goals.
Public propertyIsEmptyReturns a value that indicates whether a model in a solver is empty.
Public propertyIsInterruptedReturns a value that indicates whether the last solve operation was interrupted.
Public propertyStatic memberMaxFiniteGets the maximum integer value for the CSP solver.
Public propertyStatic memberMinFiniteGets the minimum integer value for a CSP solver.
Public propertyMinimizationGoalsGets the collection of constraint functions that have been added to a solver.
Public propertyModeGets or sets the debug mode for a solver.
Public propertyParametersGets a set of parameters with default values and a callback function to query about cancelling the solve process.
Public propertyPrecisionGets the global precision setting for real values in a solver.
Public propertyQueryAbortA function that is called periodically through the computation to determine if the user has cancelled the operation.
Public propertyTrueGets the Boolean CspTerm {true}.
Public propertyVariablesGets the collection of variables that have been instantiated for a solver.
Public propertyStatic memberVersionGets the version of a solver.
Top

  NameDescription
Public methodAbsComputes the absolute value.
Public methodAddConstraintsReturns a value that indicates whether all constraint functions added to a model are valid.
Public methodAndPerforms a Boolean AND operation.
Public methodAtMostMofNTests that at most M inputs are true.
Public methodConstant(Double)Gets a term for the immutable real value k with double precision.
Public methodConstant(Int32)Gets a term for the immutable value k.
Public methodConstant(Int32, Double)Gets a term for the immutable real value k.
Public methodConstant(CspDomain, String)Gets a term for the immutable symbol value k.
Public methodCreateBoolean()Creates a Boolean variable with an auto-generated key.
Public methodCreateBoolean(Object)Creates a Boolean variable with a true or false initial value.
Public methodCreateBooleanArrayCreates a two-level array of Boolean variable terms in a domain.
Public methodCreateBooleanVectorCreates a vector of Boolean variable terms in a domain.
Public methodCreateComposite()Creates an empty composite with an auto-generated key.
Public methodCreateComposite(Object)Creates an empty composite that can have fields added.
Public methodCreateDecimalIntervalCreates a domain of a real interval with double precision.
Public methodCreateDecimalSet(Double[])Creates a domain of allowed real values with default precision in strictly ascending order.
Public methodCreateDecimalSet(Double[], Int32, Int32)Creates a domain of allowed real values with default precision in strictly descending order.
Public methodCreateIntegerIntervalCreates an integer domain.
Public methodCreateIntegerSet(Int32[])Creates a domain of allowed integer values in strictly ascending order.
Public methodCreateIntegerSet(Int32[], Int32, Int32)Create a domain of allowed integer values in strictly descending order.
Public methodStatic memberCreateSolver()Creates an instance of a solver.
Public methodStatic memberCreateSolver(ISolverEnvironment)Creates an instance of a solver.
Public methodStatic memberCreateSolver(Func(TResult), Void, Boolean)Creates an instance of the solver.
Public methodCreateSymbolSetCreates a domain of symbols.
Public methodCreateVariable(CspComposite)Creates a composite variable with an auto-generated key.
Public methodCreateVariable(CspDomain)Creates a finite variable with a given domain and auto-generated key.
Public methodCreateVariable(CspComposite, Object)Creates a composite variable with the specified domain and key.
Public methodCreateVariable(CspDomain, Object)Creates a finite variable with the specified domain and key.
Public methodCreateVariableArrayCreates a two-level array of finite variable terms in a domain.
Public methodCreateVariableVector(CspComposite, Object, Int32)Creates a vector of finite variable terms in a composite domain.
Public methodCreateVariableVector(CspDomain, Object, Int32)Creates a vector of finite variable terms in a domain.
Public methodEqual(CspTerm[])Tests if all inputs are equal.
Public methodEqual(Int32, CspTerm[])Tests if all inputs are equal to a constant.
Public methodEqualsDetermines whether the specified Object is equal to the current Object. (Inherited from Object.)
Public methodExactlyMofNTests if exactly M of the inputs are true.
Public methodFilteredSumAdds the conditional inputs.
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetReportGenerate a report.
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodGreater(CspTerm[])Returns a value that indicates whether each input is greater than the following input.
Public methodGreater(Int32, CspTerm[])Returns a value that indicates whether a constant is greater than each input.
Public methodGreaterEqual(CspTerm[])Returns a value that indicates whether each input is greater than or equal to the following input.
Public methodGreaterEqual(Int32, CspTerm[])Returns a value that indicates whether a constant is greater than or equal to the input.
Public methodImpliesTests for logical implication between two inputs.
Public methodIndex(CspTerm[], CspTerm)Returns the value of the inputs[index].
Public methodIndex(CspTerm[], CspTerm[])Returns the input value selected by the keys.
Public methodIndex(CspTerm[], CspTerm, CspDomain)Returns the value of the inputs[index].
Public methodIndex(CspTerm[], CspTerm[], CspDomain[])Returns the value of the input selected by the keys.
Public methodIndex(CspTerm[][], CspTerm, CspTerm)Returns the value of the inputs[row][column].
Public methodIndex(CspTerm[][], CspTerm, Int32)Returns the value of the inputs[row][column].
Public methodIndex(CspTerm[][], Int32, CspTerm)Returns the value of the inputs[row][column].
Public methodIndex(CspTerm[][], CspTerm, CspTerm, CspDomain, CspDomain)Returns the value of the [row][column] input.
Public methodIsElementOfReturns a value that indicates if an input is a member of a domain.
Public methodLess(CspTerm[])Returns a value that indicates if an input is less than the following input.
Public methodLess(Int32, CspTerm[])Returns a value that indicates if an input is less than a constant.
Public methodLessEqual(CspTerm[])Returns a value that indicates if an input is less than or equal to the following input.
Public methodLessEqual(Int32, CspTerm[])Returns a value that indicates if an input is less than or equal to a constant.
Public methodMaxReturns the maximum of the inputs.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodMinReturns the minimum of the inputs.
Public methodNegNegates the input.
Public methodNotPerforms the Boolean inverse of the input.
Public methodOrPerforms the Boolean OR of the inputs.
Public methodPowerRaises an input to the power of a specified value.
Public methodProductReturns the product of the inputs.
Public methodRemoveAllMinimizationGoals
Public methodRemoveConstraints
Public methodResetSolverResets the solver state.
Public methodSaveWrites the report.
Public methodShutdownShuts down the instance of a ConstraintSystem object.
Public methodSolve()Solves a model by using the default solver parameters.
Public methodSolve(ISolverParameters)Solves a model by using the given solver parameters.
Public methodSumAdds the inputs.
Public methodSumProductPerforms the sum of the pairwise-product of the inputs.
Public methodTableDecimalCreates a relation constraint by using the column variables and inputs.
Public methodTableDomain(CspTerm[], CspDomain[][])Creates a relation constraint by using the column variables and inputs.
Public methodTableDomain(CspTerm[], IEnumerable(IEnumerable(CspDomain)))Creates a relation constraint by using the column variables and inputs.
Public methodTableIntegerCreates a relation constraint by using the column variables and inputs.
Public methodTableSymbolCreates a relation constraint by using the column variables and inputs.
Public methodTableTerm(CspTerm[], CspTerm[][])Creates a relation constraint by using the column variables and inputs.
Public methodTableTerm(CspTerm[], IEnumerable(IEnumerable(CspTerm)))Creates a relation constraint by using the column variables and inputs.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Public methodTryAddMinimizationGoalsReturns a value that indicates whether terms were minimized successfully by the solver.
Public methodTryGetVariableFromKeyReturns a value that indicates whether a variable is retrieved by its key.
Public methodUnequal(CspTerm[])Returns a value that indicates if every pairing of the inputs is unequal.
Public methodUnequal(Int32, CspTerm[])Returns a value that indicates if every input is unequal to a constant.
Top

  NameDescription
Public Extension MethodCardinalityCounts the number of elements in a set variable. (Defined by CspSetOperators.)
Public Extension MethodConcatenationConcatenates two input list variables. (Defined by CspListOperators.)
Public Extension MethodConstantDecimalListCreates a constant decimal list. (Defined by CspListOperators.)
Public Extension MethodConstantDecimalSetCreates a constant decimal set. (Defined by CspSetOperators.)
Public Extension MethodConstantIntegerListCreates a constant integer list. (Defined by CspListOperators.)
Public Extension MethodConstantIntegerSetCreates a constant integer set. (Defined by CspSetOperators.)
Public Extension MethodConstantSymbolListCreates a constant symbol list. (Defined by CspListOperators.)
Public Extension MethodConstantSymbolSetCreates a constant symbol set. (Defined by CspSetOperators.)
Public Extension MethodCreatePowerListCreates a power list to use as the domain for baseline. (Defined by CspListOperators.)
Public Extension MethodCreatePowerSetCreates a power set to use as the domain for baseline. (Defined by CspSetOperators.)
Public Extension MethodDifferenceComputes the difference between two sets. (Defined by CspSetOperators.)
Public Extension MethodElementAtCreates a term that indicates whether the value of listVar[index] is equal to elementToBe. (Defined by CspListOperators.)
Public Extension MethodElementCountCounts the frequency of an element in a list. (Defined by CspListOperators.)
Public Extension MethodFirstOccurrenceCreates a term that indicates whether the first occurrence of element in listVar is equal to indexToBe. (Defined by CspListOperators.)
Public Extension MethodIntersectionComputes the intersection between two sets. (Defined by CspSetOperators.)
Public Extension MethodLastOccurrenceCreates a term that indicates whether the last occurrence of element in listVar is equal to indexToBe. (Defined by CspListOperators.)
Public Extension MethodLengthMeasures the length of a list variable. (Defined by CspListOperators.)
Public Extension MethodListEqual(Int32[], CspTerm)Overloaded. Creates a term that indicates whether a list is equal to a list variable. (Defined by CspListOperators.)
Public Extension MethodListEqual(CspTerm, CspTerm)Overloaded. Creates a term that indicates whether two list variables are equal. (Defined by CspListOperators.)
Public Extension MethodListEqual(CspTerm, Int32[])Overloaded. Creates a term that indicates whether a list variable is equal to a list. (Defined by CspListOperators.)
Public Extension MethodMemberOf(Int32, CspTerm)Overloaded. Creates a term that indicates whether a value is a member of a set variable. (Defined by CspSetOperators.)
Public Extension MethodMemberOf(CspTerm, CspTerm)Overloaded. Creates a term that indicates whether a value is a member of a set variable. (Defined by CspSetOperators.)
Public Extension MethodMemberOf(CspTerm, Int32[])Overloaded. Creates a term that indicates whether a value is a member of a set. (Defined by CspSetOperators.)
Public Extension MethodSetEqual(Int32[], CspTerm)Overloaded. Creates a term that indicates whether a set is equal to a set variable. (Defined by CspSetOperators.)
Public Extension MethodSetEqual(CspTerm, CspTerm)Overloaded. Creates a term that indicates whether two set variables are equal. (Defined by CspSetOperators.)
Public Extension MethodSetEqual(CspTerm, Int32[])Overloaded. Creates a term that indicates whether a set variable is equal to a set. (Defined by CspSetOperators.)
Public Extension MethodSublistEq(Int32[], CspTerm)Overloaded. Creates a term that indicates if a list if a subset of a list variable. (Defined by CspListOperators.)
Public Extension MethodSublistEq(CspTerm, CspTerm)Overloaded. Creates a term that indicates if a list variable is a subset of another list variable. (Defined by CspListOperators.)
Public Extension MethodSublistEq(CspTerm, Int32[])Overloaded. Creates a term that indicates if a list variable is a subset of another list. (Defined by CspListOperators.)
Public Extension MethodSubsetEq(Int32[], CspTerm)Overloaded. Creates a term that indicates if a set if a subset of a set variable. (Defined by CspSetOperators.)
Public Extension MethodSubsetEq(CspTerm, CspTerm)Overloaded. Creates a term that indicates if a set variable is a subset of another set variable. (Defined by CspSetOperators.)
Public Extension MethodSubsetEq(CspTerm, Int32[])Overloaded. Creates a term that indicates if a set variable is a subset of another set. (Defined by CspSetOperators.)
Public Extension MethodUnionCreates a term that represents the union of two sets. (Defined by CspSetOperators.)
Top

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft