Skip to the content.

Tiles

License build

Tiles is a framework to create formal configurations of constraints. Its classes are written in Soda and grouped in packages translated to Scala.

The fairness tiles are defined in package tile (Scala translation) and they use entities and other tools defined in package tool (Scala translation).

Publications

Example

This project includes an executable example of Child Care Subsidy pipelines. The script makeall.sh creates the file tiles, which is an executable JAR file that can be directly executed in Linux. Its input is a YAML configuration file, like the configuration file provided for the unit tests. For more details, see the Child Care Subsidy example.

Resource Allocation Scenarios

These are some of the implemented fairness tiles for resource allocation scenarios:

Tile Class
all-actor (a) AllActorTile
(a) received (m) ReceivedSigmaPTile
(m) all-equal b AllEqualTile
(a) needed (m) NeededPTile
(m0), (m1) all-at-least b AllAtLeastTile
equality b EqualityPipeline
equity b EquityPipeline

A specific scenario is given as an example in ResourceAllocationScenarioExample. This scenario is used to test the equality tile with EqualityPipelineSpec and the equity tile with EquityPipelineSpec.

Example of Equality

graph LR
  all-actor(all-actor) --> received
  received(received) --> all-equal(all-equal)

Example of Equity

graph LR
  all-actor(all-actor) --> received
  all-actor --> needed
  received(received) --> all-at-least(all-at-least)
  needed(needed) -->  all-at-least

Auxiliary Tiles

The auxiliary tiles are used in the construction of other tiles. Some of the auxiliary tiles are:

Tile Class
(a) attribute (m) AttributePTile
(m0), (m1) σ (m) SigmaTile
(α0),(α1) zip (α0, α1) ZipTile
(α0, α1) unzip-0 (α0) UnzipPairFstTile
(α0, α1) unzip-1 (α1) UnzipPairSndTile

More examples

Author

Julian Alfredo Mendez