Knowledge Representation and Reasoning in a Software Synthesis Architecture

Dorothy E. Setliff, Rob A. Rutenbar

Research output: Contribution to journalArticlepeer-review


This paper describes the knowledge representation and reasoning strategies in an automatic program synthesis architecture called ELF. ELF synthesizes CAD tools that automatically route wires in VLSI circuits. The design space ELF confronts requires it to understand various physical technologies, to select an appropriate procedure-level decomposition, to choose algorithms and data structures, to manage any interdependencies, and to generate efficient code. ELF manages the design space using a variety of knowledge sources, including domain-specific knowledge. The manner in which knowledge is used determines the representation method of choice. For example, ELF uses languages to describe knowledge that is subject to modification, rules for cause-and-effect knowledge, and graphs and templates to capture knowledge interdependencies. We illustrate the effectiveness of our ideas via a tour through the synthesis steps for a specific routing tool, and a brief discussion of the performance of the resulting synthetic router as measured against an industrial tool.

Original languageEnglish (US)
Pages (from-to)523-533
Number of pages11
JournalIEEE Transactions on Software Engineering
Issue number6
StatePublished - Jun 1992
Externally publishedYes

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Knowledge Representation and Reasoning in a Software Synthesis Architecture'. Together they form a unique fingerprint.

Cite this