Synthesis from component libraries with costs

Guy Avni*, Orna Kupferman

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

1 Scopus citations


Synthesis is the automated construction of a system from its specification. In real life, hardware and software systems are rarely constructed from scratch. Rather, a system is typically constructed from a library of components. Lustig and Vardi formalized this intuition and studied LTL synthesis from component libraries. In real life, designers seek optimal systems. In this paper we add optimality considerations to the setting. We distinguish between quality considerations (for example, size – the smaller a system is, the better it is), and pricing (for example, the payment to the company who manufactured the component). We study the problem of designing systems with minimal quality-cost and price. A key point is that while the quality cost is individual – the choices of a designer are independent of choices made by other designers that use the same library, pricing gives rise to a resource-allocation game – designers that use the same component share its price, with the share being proportional to the number of uses (a component can be used several times in a design). We study both closed and open settings, and in both we solve the problem of finding an optimal design. In a setting with multiple designers, we also study the game-theoretic problems of the induced resource-allocation game.

Original languageAmerican English
Pages (from-to)50-72
Number of pages23
JournalTheoretical Computer Science
StatePublished - 15 Feb 2018

Bibliographical note

Publisher Copyright:
© 2017 Elsevier B.V.


  • Component libraries
  • Cost-sharing games
  • Lattice automata
  • Synthesis


Dive into the research topics of 'Synthesis from component libraries with costs'. Together they form a unique fingerprint.

Cite this