workload: BI
operation: read
number: 11
title: Friend triangles
description: |
  For a given `country`, count all the distinct triples of *Persons* such that:

  * `a` is friend of `b`,
  * `b` is friend of `c`,
  * `c` is friend of `a`,

  and these friendships were created in the range [`startDate`, `endDate`].

  Distinct means that given a triple $t_1$ in the result set $R$ of all qualified triples, there is no triple $t_2$ in $R$ such that $t_1$ and $t_2$ have the same set of elements.
parameters:
  - name: country
    type: Long String
    description: |
      Selected from the largest *Countries* (India, China)
  - name: startDate
    type: Date
    description: |
      Selected from a 30-day interval towards the end of the simulation time
  - name: endDate
    type: Date
    description: |
      Selected to yield around a 100-day interval
result:
  - name: count
    type: 64-bit Integer
    category: aggregated
limit: n/a
choke_points: [1.1, 2.3, 2.5] # why is CP1.1 applicable here? WCOJs?

workload: BI
operation: read
number: 11
title: Friend triangles
description: |
  For a given `country`, count all the distinct triples of *Persons* such that:

  * `a` is friend of `b`,
  * `b` is friend of `c`,
  * `c` is friend of `a`,

  and these friendships were created in the range [`startDate`, `endDate`].

  Distinct means that given a triple $t_1$ in the result set $R$ of all qualified triples, there is no triple $t_2$ in $R$ such that $t_1$ and $t_2$ have the same set of elements.
parameters:
  - name: country
    type: Long String
    description: |
      Selected from the largest *Countries* (India, China)
  - name: startDate
    type: Date
    description: |
      Selected from a 30-day interval towards the end of the simulation time
  - name: endDate
    type: Date
    description: |
      Selected to yield around a 100-day interval
result:
  - name: count
    type: 64-bit Integer
    category: aggregated
limit: n/a
choke_points: [2.3, 2.5, 3.2]

Revise CPs of BI Q11
Revise CPs of BI Q11
