kangaroo  1.0
the cbls library
Flexible-Arity Value Function Definition

Define flexible-arity function expressions. More...

template<typename paramValue , typename value >
using AllDiffSat = AllDifferentSatisfactionValueToValue< paramValue, value >
 Shortcur for AllDifferentSatisfactionValueToValue.
 
static AllDifferentSatisfactionValueToValue< paramValue, value > * AllDifferentSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an all different satisfaction value to value function in the system. More...
 
template<typename paramValue , typename value >
using AllDiffVio = AllDifferentViolationValueToValue< paramValue, value >
 Shortcur for AllDifferentViolationValueToValue.
 
static AllDifferentViolationValueToValue< paramValue, value > * AllDifferentViolationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an all different violation value to value function in the system. More...
 
template<typename paramValue , typename value >
using NandViolationValueToValue = AndSatisfactionValueToValue< paramValue, value >
 AndSatisfaction = NandViolation.
 
template<typename paramValue , typename value >
using AndSat = AndSatisfactionValueToValue< paramValue, value >
 Shortcut for AndSatisfactionValueToValue.
 
template<typename paramValue , typename value >
using NandVio = NandViolationValueToValue< paramValue, value >
 Shortcut for NandViolationValueToValue.
 
static AndSatisfactionValueToValue< paramValue, value > * AndSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an and satisfaction value to value function in the system. More...
 
template<typename paramValue , typename value >
using AndVio = AndViolationValueToValue< paramValue, value >
 Shortcut for AndViolationValueToValue.
 
static AndViolationValueToValue< paramValue, value > * AndViolationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an and violation value to value function in the system. More...
 
template<typename paramValue , typename bindOper >
using FCountCompose = FalseCountComposeValueToValue< paramValue, bindOper >
 Shortcut for FalseCountComposeValueToValue.
 
static FalseCountComposeValueToValue< paramValue, bindOper > * FalseCountComposeValueToValue< paramValue, bindOper >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs, BindOperator const &BoundOperator)
 Define a false count compose value to value function in the system. More...
 
template<typename paramValue , typename value >
using FCount = FalseCountValueToValue< paramValue, value >
 Shortcut for FalseCountValueToValue;.
 
static FalseCountValueToValue< paramValue, value > * FalseCountValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a false count value to value function in the system. More...
 
template<typename paramValue , typename value >
using NandSat = NandSatisfactionValueToValue< paramValue, value >
 NandSatisfactionValueToValue.
 
static NandSatisfactionValueToValue< paramValue, value > * NandSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a nand satisfaction value to value function in the system. More...
 
template<typename paramValue , typename value >
using NorVio = NorViolationValueToValue< paramValue, value >
 Shortcut for NorViolationValueToValue.
 
static NorViolationValueToValue< paramValue, value > * NorViolationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a nor violation value to value function. More...
 
template<typename paramValue , typename value >
using OrSat = OrSatisfactionValueToValue< paramValue, value >
 Shortcut for OrSatisfactionValueToValue.
 
static OrSatisfactionValueToValue< paramValue, value > * OrSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an or satisfaction value to value function in the system. More...
 
template<typename paramValue , typename value >
using NorSatisfactionValueToValue = OrViolationValueToValue< paramValue, value >
 OrViolation = NorSatisfaction.
 
template<typename paramValue , typename value >
using OrVio = OrViolationValueToValue< paramValue, value >
 Shortcut for OrViolationValueToValue.
 
template<typename paramValue , typename value >
using NorSat = NorSatisfactionValueToValue< paramValue, value >
 Shortcut for NorSatisfactionValueToValue.
 
static OrViolationValueToValue< paramValue, value > * OrViolationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an or violation value to value function. More...
 
template<typename paramValue , typename bindOper >
using SumCompose = SummationComposeValueToValue< paramValue, bindOper >
 Shortcut for SummationComposeValueToValue.
 
static SummationComposeValueToValue< paramValue, bindOper > * SummationComposeValueToValue< paramValue, bindOper >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs, BindOperator const &BoundOperator)
 Define a summation compose value to value function. More...
 
template<typename paramValue , typename value >
using Sum = SummationValueToValue< paramValue, value >
 Shortcut for SummationValueToValue.
 
static SummationValueToValue< paramValue, value > * SummationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a summation value to value function in the system. More...
 
template<typename paramValue , typename bindOper >
using TermSumCompose = TerminalSummationComposeValueToValue< paramValue, bindOper >
 Shortcut for TerminalSummationComposeValueToValue.
 
static TerminalSummationComposeValueToValue< paramValue, bindOper > * TerminalSummationComposeValueToValue< paramValue, bindOper >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs, BindOperator const &BoundOperator)
 Define a terminal summation value to value function in the system. More...
 
template<typename paramValue , typename value >
using TermSum = TerminalSummationValueToValue< paramValue, value >
 Shortcut for TerminalSummationValueToValue.
 
static TerminalSummationValueToValue< paramValue, value > * TerminalSummationValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a terminal summation value to value function in the system. More...
 
template<typename paramValue , typename bindOper >
using TCountCompose = TrueCountComposeValueToValue< paramValue, bindOper >
 Shortcut for TrueCountComposeValueToValue.
 
static TrueCountComposeValueToValue< paramValue, bindOper > * TrueCountComposeValueToValue< paramValue, bindOper >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs, BindOperator const &BoundOperator)
 Define a true count compose value to value function in the system. More...
 
template<typename paramValue , typename value >
using TCount = TrueCountValueToValue< paramValue, value >
 Shortcut for TrueCountValueToValue.
 
static TrueCountValueToValue< paramValue, value > * TrueCountValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a true count value to value function in the system. More...
 
template<typename paramValue , typename paramWeight = paramValue, typename value = paramValue>
using WSum = WeightedSummationValueToValue< paramValue, paramWeight, value >
 Shortcut for WeightedSummationValueToValue.
 
static WeightedSummationValueToValue< paramValue, paramWeight, value > * WeightedSummationValueToValue< paramValue, paramWeight, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs, paramWeight const *pParamWeights)
 Define an weighted summation value to value function in the systme. More...
 
template<typename paramValue , typename value >
using XorViolationValueToValue = XnorSatisfactionValueToValue< paramValue, value >
 XnorSatisfaction = XorViolation.
 
template<typename paramValue , typename value >
using XnorSat = XnorSatisfactionValueToValue< paramValue, value >
 Shortcut for XnorSat.
 
template<typename paramValue , typename value >
using XorVio = XorViolationValueToValue< paramValue, value >
 Shortcut for XorVio.
 
static XnorSatisfactionValueToValue< paramValue, value > * XnorSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define an xnor satisfaction value to value function. More...
 
template<typename paramValue , typename value >
using XnorViolationValueToValue = XorSatisfactionValueToValue< paramValue, value >
 XorSatisfaction=XnorViolation.
 
template<typename paramValue , typename value >
using XorSat = XorSatisfactionValueToValue< paramValue, value >
 Shortcut for XorSatisfactionValueToValue.
 
template<typename paramValue , typename value >
using XnorVio = XnorViolationValueToValue< paramValue, value >
 Shortcut for XnorViolationValueToValue.
 
static XorSatisfactionValueToValue< paramValue, value > * XorSatisfactionValueToValue< paramValue, value >::define (System *const pSystem, Dim const ParamCount, Expression *const *pParamExprs)
 Define a xor satisfaction value to value function. More...
 

Detailed Description

Define flexible-arity function expressions.

Function Documentation

template<typename paramValue , typename value >
AllDifferentSatisfactionValueToValue< paramValue, value > * AllDifferentSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an all different satisfaction value to value function in the system.

template<typename paramValue , typename value >
AllDifferentViolationValueToValue< paramValue, value > * AllDifferentViolationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an all different violation value to value function in the system.

template<typename paramValue , typename value >
AndSatisfactionValueToValue< paramValue, value > * AndSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an and satisfaction value to value function.

template<typename paramValue , typename value >
AndViolationValueToValue< paramValue, value > * AndViolationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an and violation value to value function in the system.

template<typename paramValue , typename bindOper >
FalseCountComposeValueToValue< paramValue, bindOper > * FalseCountComposeValueToValue< paramValue, bindOper >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs,
BindOperator const &  BoundOperator 
)
inlinestatic

Define a false count compose value to value function.

template<typename paramValue , typename value >
FalseCountValueToValue< paramValue, value > * FalseCountValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define false count value to value function.

template<typename paramValue , typename value >
NandSatisfactionValueToValue< paramValue, value > * NandSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define a nand satisfaction value to value function.

template<typename paramValue , typename value >
NorViolationValueToValue< paramValue, value > * NorViolationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define a nor violation value to value function

template<typename paramValue , typename value >
OrSatisfactionValueToValue< paramValue, value > * OrSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an or satisfaction value to value function.

template<typename paramValue , typename value >
OrViolationValueToValue< paramValue, value > * OrViolationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an or violation value to value function.

template<typename paramValue , typename bindOper >
SummationComposeValueToValue< paramValue, bindOper > * SummationComposeValueToValue< paramValue, bindOper >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs,
BindOperator const &  BoundOperator 
)
inlinestatic

Define a summation compose value to value function.

template<typename paramValue , typename value >
SummationValueToValue< paramValue, value > * SummationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define a summation value to value function.

template<typename paramValue , typename bindOper >
TerminalSummationComposeValueToValue< paramValue, bindOper > * TerminalSummationComposeValueToValue< paramValue, bindOper >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs,
BindOperator const &  BoundOperator 
)
inlinestatic

Define a terminal summation compose value to value function.

template<typename paramValue , typename value >
TerminalSummationValueToValue< paramValue, value > * TerminalSummationValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define a terminal summation value to value function.

template<typename paramValue , typename bindOper >
TrueCountComposeValueToValue< paramValue, bindOper > * TrueCountComposeValueToValue< paramValue, bindOper >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs,
BindOperator const &  BoundOperator 
)
inlinestatic

Define a true count compose value to value function.

template<typename paramValue , typename value >
TrueCountValueToValue< paramValue, value > * TrueCountValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define a true count value to value function.

template<typename paramValue , typename paramWeight , typename value >
WeightedSummationValueToValue< paramValue, paramWeight, value > * WeightedSummationValueToValue< paramValue, paramWeight, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs,
paramWeight const *  pParamWeights 
)
inlinestatic

Define a weighted summation value to value function.

template<typename paramValue , typename value >
XnorSatisfactionValueToValue< paramValue, value > * XnorSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an xnor satisfaction value to value function.

template<typename paramValue , typename value >
XorSatisfactionValueToValue< paramValue, value > * XorSatisfactionValueToValue< paramValue, value >::define ( System *const  pSystem,
Dim const  ParamCount,
Expression *const *  pParamExprs 
)
inlinestatic

Define an xor satisfaction value to value function.