Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
classtoc-btf

Overview

One of our features is Constraints which can be used to exclude invalid or irrelevant combinations of parameter values from the Scenarios table. Advanced N-way constraints (where N can be 2 or higher) make it possible to create dependencies across any number of parameters which should be a significant time saver when defining complex rules and should expand your ability to apply our tool to highly conditional workflows.

...

  • after the valid constraint syntax - to indicate that the rest of the line is a comment.


Basics - New Functions

Note: we are using the same set of parameters throughout the article, but that does not mean rules would co-exist in the same model, at the same time. Treat each example as an isolated constraint.

...

I.e., there will be only 2 scenarios in the table where the Discount is No:


VIP

Student

Tier

Discount

No

No

Bronze

No

No

No

Silver

No


When more than 1 value of a given parameter is included in the all() function (like with Tier above), all combinations of values will be treated as valid triggers for the rule (see more in the “Advanced” section below).

...

I.e., some of the possible scenarios (depending on the coverage strength) where the Discount is Yes are:

VIP

Student

Tier

Discount

Yes

No

Bronze

Yes

No

Yes

Silver

Yes

No

No

Gold

Yes

Yes

No

Platinum

Yes

Yes

Yes

Gold

Yes


Advanced Rule Composition


As we have mentioned, two grouping functions can be used in the same rule, one on each side (except for the skip constraint, where the right side behaves the same way it did before this release).

...

The following scenarios will be excluded from the generated table as invalid:

VIP

Student

Tier

Discount

Reserved Seat

No

No

Bronze

Yes

Yes

No

No

Bronze

Yes

No

No

No

Bronze

No

Yes

No

N/A

Bronze

Yes

Yes

No

N/A

Bronze

Yes

No

No

N/A

Bronze

No

Yes

No

No

Silver

Yes

Yes

No

No

Silver

Yes

No

No

No

Silver

No

Yes

No

N/A

Silver

Yes

Yes

No

N/A

Silver

Yes

No

No

N/A

Silver

No

Yes

Only the Discount = No AND Reserved Seat = No is the valid combination for the trigger in all(). Note that some(Discount[Yes] Reserved Seat[Yes]) still includes the Yes/Yes combination.

...

The following scenarios will be excluded from the generated table as invalid (non-exhaustive list):

Coverage B

Coverage C

Coverage A

Coverage D

125k

100k

250k (i.e. NOT[200k])

No

175k

50k

200k

Yes

225k

100k

250k (i.e. NOT[200k])

Yes

Note: we changed the order of columns for easier review