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).
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.
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)
With the participants' permission, the circuits submitted to the contest can be found here.
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!