**Abstract**:

The GeoGram system generates programs for geometric computations by combining generic software components as speciﬁed by diagrams constructed using a graphical interface. The user speciﬁes known and desired quantities. As diagrams are constructed, the system maintains symbolic geometric facts describing the construction. Inferences based on the diagram are used to derive new facts and to introduce new objects based on geometric reasoning, to ﬁlter choices presented to the user, to interpret the user’s intention in ambiguous cases, to detect over-speciﬁcation, and to generate the program. A knowledge base of descriptions of generic software components is used to prove that features of the geometry can be computed from known values. These local proofs are combined to guide generation of a program that computes the desired values from inputs. The library of generic geometric program components is used to generate both in-line code and specialized subroutines; partial evaluation improves the efﬁciency of the generated code. The resulting program is automatically translated into the desired language. The program can also be run interactively to simulate the geometry by generating graphical traces on the diagram as input quantities are varied.

Revision: r1.1 - 02 Oct 2011 - 00:41 - PeterKim

Copyright © 1999-2020 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.

Ideas, requests, problems regarding TWiki? Send feedback

Ideas, requests, problems regarding TWiki? Send feedback