2.6.12. Implies (items to collection)

Given two constraints C 𝑒𝑛𝑡𝑟𝑦 and C 𝑎𝑙𝑠𝑜 where:

  • C 𝑒𝑛𝑡𝑟𝑦 has a single argument 𝚊𝚛𝚐 1 corresponding to a collection of k items, each attribute of type 𝚒𝚗𝚝 or 𝚍𝚟𝚊𝚛.

  • C 𝑎𝑙𝑠𝑜 has a single argument 𝚊𝚛𝚐 2 corresponding to a collection of collections of 𝚍𝚟𝚊𝚛, each of them having the same number of items k.

If constraint C 𝑒𝑛𝑡𝑟𝑦 (𝚊𝚛𝚐 1 ) holds then constraint C 𝑎𝑙𝑠𝑜 (𝚊𝚛𝚐 2 ) also holds.

EXAMPLE: As an example, we can go from constraint C 𝑒𝑛𝑡𝑟𝑦 = 𝚌𝚒𝚛𝚌𝚞𝚒𝚝 to constraint 𝚕𝚎𝚡_𝚊𝚕𝚕𝚍𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚝 if we create for each item “𝚒𝚗𝚍𝚎𝚡-i 𝚜𝚞𝚌𝚌-s” of the 𝚌𝚒𝚛𝚌𝚞𝚒𝚝 constraint a collection 𝚟𝚊𝚛-i,𝚟𝚊𝚛-s.