Fortuna

A Visualization Tool for
Probabilistic Cardinality Constraints with Lower Bounds (l-pCCs)

Download and Input File Format

If you would like to try out Fortuna yourself, download it here.

Note: The download attribute is not supported in IE, Safari or Opera version 12 (and earlier). Please use Mozilla Firefox or Chrome for best results. Also, Fortuna is implemented in Java 1.7 and requires JRE 1.7 or later to run on your local machine.

The download comes with a set of pre-written inputs, which are the ones used to obtain the screenshots below. Hence you should get the same results as the ones displayed on this page, up to isomorphism. Feel free to use these inputs as a template to write your own.

RTZ1.txt

Here is an example found in the input folder: RTZ1.txt.

As you can see, input files must follow a strict format, described below.

  1. Line 1 lists the attributes, separated by a space.
  2. Line 2 indicates the number $N$ of pCCs $(card(X) \le b, \ge p)$ that will be listed next.
  3. The next $N$ lines contain one pCC each, written in the form: {Attr1, ...} b p.
  4. The final line is the list of probabilities occurring in the above pCCs, including $1.0$.

Though $0$ should be a legal probability entry by definition, we exclude it here as all pCCs with probability $0$ are trivially satisfied.

The latest version of Fortuna allows you to export to a file the following list of elements:

Hence all results can be saved for further inspection and in particular it makes creating a valid input file much easier.

Note: Any feedback or suspected bug(s) can be reported to myself, Tania Roblot.

An extension of this work led us to the development of Urd which handles both l- and u-pCCs.

Screenshots

Here we display a selection of screenshots of Fortuna in action. For further details on this topic and to contextualise this work, please refer to our paper in CDMTCS tech. rep. 481 (2015).

Example 1

In this example, $R = \{rfid, time, zone\}$ and runs the input file RTZ1.txt. The set $\Sigma$ of pCCs is displayed in the screenshot. The possible world of index $1$ was selected from the table of probability distribution over the worlds. Next the first row of $W_1$ was expanded by double-clicking it.

Screenshot1

Example 2

In this example, $R = \{A1, A2, A3\}$ and runs the input file A2n_3.txt. The files labelled A2n_x.txt are those that represent the special case where $R_n = \{A_1, ..., A_{2n}\}$ and $\Sigma_n = \{(card(A_{2i-1}, A_{2i}) \le 1, \ge 1) \mid i = 1, \ldots,n\}$ for $n=x$ in the file name (here $x = 3$). The set $\Sigma$ of pCCs is displayed. The possible world of index $1$ was selected from the table of probability distribution over worlds. This example is a special case in which the number of tuples in some PC-sketch for $\Sigma$ over $R$ is exponential in $||\Sigma||$. Here, $||\Sigma_n|| = 2 \cdot n$ and the PC-sketch has one tuple for each of the $2^{n}$ duplicate sets $X$ with cardinality $b^1_X = \infty.$ As all the cardinalities are infinite, none of the tuples can be expanded.

Screenshot2

Example 3

Here, $R = \{A1, A2, A3\}$ and runs the input file A_2n_3.txt. The files labelled A_2n_x.txt are those that represent the special case where $R_n = \{A_1, ..., A_{2n}\}$ and $\Sigma_n = \{(card(X_1 \cdots X_n) \le 1, \ge 1) \mid X_i \in \{A_{2i-1}, A_{2i}\} \text{ for } i = 1, \ldots,n\}$ for $n=x$ in the file name (here $x = 3$). The set $\Sigma$ of pCCs is displayed as well as the selected possible world of index $1$ was selected from the table of probability distribution over worlds. This example represents a special case in which the number of tuples in some PC-sketch for $\Sigma$ over $R$ is logarithmic in $||\Sigma||$. Here, $||\Sigma_n|| = n \cdot 2^n$ and the PC-sketch has one tuple for each of the $n$ duplicate sets $X = R - \{A_{2i-1}, A_{2i}\}$ and has cardinality $b^1_X = \infty.$ As above, none of the tuples can be expanded.

Screenshot3

Return to main page