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 Formerly
all-agent (a) AllAgentTile all-actor
(a) accumulates (m) AccumulatesTile received
(m) all-equal b AllEqualTile  
(a) needs (m) NeedsTile needed
(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-agent(all-agent) --> accumulates
  accumulates(accumulates) --> all-equal(all-equal)

Example of Equity

graph LR
  all-agent(all-agent) --> accumulates
  all-agent --> needs
  accumulates(accumulates) --> all-at-least(all-at-least)
  needs(needs) -->  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) map (m) MapTile
(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