/iwls2022-ls-contest

Problems and Results of IWLS 2022 Programming Contest

Problems and Results of IWLS 2022 Programming Contest

This repository contains the benchmarks of IWLS 2022 Programming Contest and the circuits produced by the participants in response to the challenge.

The goal of the contest was to synthesize AIGs with the minimal number of two-input and-nodes, for a set of completely-specified multi-output Boolean functions represented using truth tables. The AIGs had to be submited in binary AIGER format. For the detailed information about the rules and evaluation criteria, please refer to the contest description.

The contest was organized by Alan Mishchenko and Satrajit Chatterjee (IWLS 2022 Contest Chairs) with active support from Luca Amarù (IWLS 2022 General Chair), Eleonora Testa (IWLS 2022 Program Chair), and Walter Lau Neto (IWLS 2022 Contest Session Chair).


Benchmarks

The benchmarks available in this repository are composed of 100 functions with truth tables listed in a text file:

Benchnmark ID Function Category
00-01 Known random-looking functions
02-07 Random and decomposable random functions
08-09 s-box and inverse s-box from here
10-15 N-input majority functions
16-27 N-input N-output binary sorters
28-49 Selected Espresso benchmarks with permuted inputs
50-67 Selected arithmetic functions with permuted inputs and dropped outputs
68-99 12-input 3-output neurons from LogicNets project

Additional details on the benchmarks are not given at this time because IWLS 2023 Programming Contest to be held next year may reuse the current benchmarks and/or propose similar ones.

The goal of the future contest is expected to be similar (synthesizing minimal circuits) while allowing for any two-input nodes (not only and-nodes, as in this year's contest).

A detailed description of the next year's contest (in particular, how two-input xor-nodes are saved in the AIGER format, which by default allows for two-input and-nodes only) will be announced later, while this preliminary announcement is expected to motivate future participants to plan and prepare in advance.


Participants

The seven teams that participated in the contest are listed in the alphabetical order.

  • Team EPFL (École Polytechnique Fédérale de Lausanne)
    • Andrea Costamagna, Siang-Yun Lee, Alessandro Tempia Calvino, Hanyu Wang, Mingfei Yu, Professor Giovanni De Micheli
  • Team Fudan (Fudan University, Shanghai)
    • Yishan Zhang, Professor Chang Wu
  • Team NTU (National Taiwan University)
    • Hao-Ren Wang, Guo-Wei He, Professor Jie-Hong Roland Jiang
  • Team TUW (Technische Universität Wien)
    • Franz-Xaver Reichl, Friedrich Slivovsky, Stefan Szeider
  • Team UCAS (University of Chinese Academy of Sciences)
    • Liwei Ni
  • Team UCB (University of California, Berkeley)
    • Yukio Miyasaka
  • Team UFRGS/UFPEL (Federal University of Rio Grande do Sul / Federal University of Pelotas)
    • João Machado (UFPEL), Gabriel Ammes (UFRGS), Renato Peralta (UFRGS), Professor André Reis (UFRGS), Paulo Butzen (UFRGS), Leomar da Rosa (UFPEL), Professor Renato Ribas (UFRGS)

Submissions

With the participants' permission, the circuits submitted to the contest can be found here.


Winners

The results of the competition are summarized in the organizers' presentation (PDF, Video).

The winners are the three teams who received the highest resulting scores according to the contest rules:

  • 1st place (score 9388)
    • Team EPFL -- presentation video
  • 2nd place (score 9117)
    • Team UCB -- presentation video
  • 3rd place (score 8320)
    • Team TUW -- presentation video

An honorable mention goes to Team UFRGS/UFPEL for synthesizing circuits with the smallest number of logic levels. The logic level count was not the official competition metric, but this is nevertheless a great result.

Congratulations to the winners!