Skip to content
STIMSMITH

Activation Requirement

Concept WIKI v1 · 8/12/2026

An activation requirement is the Boolean condition in an Extended Conditional Constraint Satisfaction Problem (ECondCSP) constraint that determines when a corresponding preserved semantic constraint applies. ECondCSP constraints are represented as vectors of activation-requirement/semantics pairs, enabling parts of a constraint to remain meaningful even when some variables are inactive.

Activation Requirement

Definition

An activation requirement is a Boolean expression over the activity or inactivity status of variables in an Extended Conditional Constraint Satisfaction Problem (ECondCSP). In an ECondCSP extended compatibility constraint, activation requirements identify the variable-activity conditions under which a corresponding preserved semantic constraint is retained and enforced. [C1]

Formally, an ECondCSP constraint is represented as a vector of pairs:

(activation requirement, preserved semantics)

The activation requirement is evaluated over the activity/inactivity status of the variables involved in the constraint, while the preserved semantics is the constraint expression that applies when that activation requirement holds. [C2]

Role in ECondCSP constraints

Activation requirements are part of the ECondCSP extension of conventional Conditional CSP compatibility constraints. In a traditional CondCSP, a compatibility constraint is active only when all of its variables are active. ECondCSP generalizes this by allowing a constraint to preserve some of its semantics even when some variables are inactive. [C3]

For example, for a constraint such as (a=b) ∧ (c=d), conventional CondCSP semantics would discard the entire constraint if any of a, b, c, or d is inactive. ECondCSP can instead express that the a=b portion should still be preserved when c or d is inactive, by using activation requirements paired with preserved semantics. [C4]

Disjointness and satisfaction rule

In the described ECondCSP convention, the first element of a constraint vector states that all variables involved in the constraint are active. The set of activation requirements for a given constraint is required to be disjoint: if one activation requirement evaluates to true, all other activation requirements for the same constraint must evaluate to false. [C5]

Under this convention, an ECondCSP constraint is satisfied when either:

  1. none of its activation requirements hold, in which case the constraint is trivially satisfied; or
  2. exactly one activation requirement holds, and the preserved semantics paired with that activation requirement is satisfied. [C6]

Use in constraint composition

The ECondCSP composition procedure represents each composed constraint as a vector of rs_pair entries, where each pair has the form (activation-requirement, semantics). The activation requirement in this context is a Boolean expression over activity/inactivity status, and the semantics expression gives the preserved semantics for that activation condition. [C7]

For an atomic constraint, the composition pseudocode creates a single pair whose activation requirement is the conjunction of the existence variables of all variables in the constraint, and whose preserved semantics is the original constraint expression. [C8]

The composition method also defines AR(C) as the ordered set of activation requirements for an ECondCSP constraint C, obtained by projecting the vector of (activation-requirement, semantics) pairs onto activation requirements only. [C9]

Use during transformation to CondCSP

When an ECondCSP is transformed into an equivalent CondCSP, the ECondCSP builder loops over possible truth assignments of the activity/inactivity status of variables appearing in each compatibility constraint. If a truth assignment satisfies no activation requirement, no CondCSP constraint is added for that assignment. If it satisfies an activation requirement with preserved semantics S, the builder adds a corresponding CondCSP constraint based on S and on shadow variables representing inactive variables. [C10]

In the described transformation, each original variable receives a shadow variable with domain {0}. The relationship is that each original variable is active if and only if its shadow variable is inactive, and vice versa. These shadow variables allow the generated CondCSP constraints to encode the inactivity portions of activation requirements. [C11]

Example form

The evidence gives an ECondCSP constraint over variables a and b with activation requirements such as:

Activation requirement Preserved semantics
a active and b active (a = 1) → (b = 2)
a active and b inactive a ≠ 1

This illustrates that different preserved semantics can apply depending on which variables are active or inactive. [C12]

CITATIONS

12 sources
12 citations
[1] C1: An activation requirement is a Boolean or binary expression over activity/inactivity status of variables and determines when preserved semantics applies. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[2] C2: An ECondCSP constraint is represented as a vector of activation-requirement/preserved-semantics pairs. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[3] C3: ECondCSP extends CondCSP compatibility constraints so some semantics may be preserved even when some variables are inactive. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[4] C4: The `(a=b) ∧ (c=d)` example illustrates preserving `a=b` when `c` or `d` is inactive. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[5] C5: The first constraint-vector element convention states that all variables are active, and activation requirements for a given constraint are disjoint. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[6] C6: An ECondCSP constraint is satisfied if no activation requirement holds, or if one holds and its preserved semantics is satisfied. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[7] C7: The compose procedure outputs a vector of pairs of the form `(activation-requirement, semantics)`. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[8] C8: For an atomic constraint, compose creates an activation requirement that is the conjunction of the existence variables of all variables in the constraint. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[9] C9: AR(C) is defined as the ordered set of activation requirements for an ECondCSP constraint C. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[10] C10: During transformation to CondCSP, the builder loops over activity/inactivity truth assignments and adds constraints only when an activation requirement is satisfied. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[11] C11: Transformation adds shadow variables with domain `{0}` and makes each original variable active iff its shadow variable is inactive. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation
[12] C12: The two-variable example includes activation requirements for `a` active/`b` active and `a` active/`b` inactive with different preserved semantics. Automatic test program generation using extended conditional constraint satisfaction - Intranational Business Machines Corporation