GRACE User's Manual

Contents:

Starting GRACE

To run GRACE, press the button marked "Start GRACE". The program will be downloaded to your computer. Depending on the speed of your network connection, this may take a few minutes; please be patient. A status window will appear to show the progress of the download. When it has finished, the GRACE window will appear.

Main window

The main window contains the Construction area, a large white field for graphically creating and viewing constructions. Above this area is a Message box that displays information about the current state of the construction. To the right of the display area is the Construction list of currently available primitives and constructions. Below this area is are two sets of buttons, Point operations and View controls.

Construction area

The construction area shows a graphical display of the current construction in progress.

Point operations

View controls

Construction list

To the right of the display area is a list of available primitives and constructions. The primitives -- "Circle," "Line," "Line Segment," "Ray," "Complementary Ray," "Perpendicular Bisector," and "Intersection" -- are built-in to GRACE. Other constructions can be added to this list when they are defined and loaded from libraries.

To apply a primitive or construction, select it by clicking on its name. To specify the arguments to the construction, click on each of the points to use as input. Note that the order of the arguments to some constructions is important. The message box usually gives information about each argument.

Edit menu

Construction menu

Libraries menu

The Libraries menu allows the user to load an entire library of constructions into GRACE. Several example libraries are provided. "Basic" provides simple, commonly-used constructions. The remaining example libraries perform advanced constructions. The "Basic" library must be loaded before the advanced libraries are loaded.

Enter URL... may be used to load a library from a specific URL. Due to Java security restrictions in most browsers, the library may only be loaded from the server that provided the Java applet (www.cs.rice.edu). The Enter library text option may be used to paste or type the text of a library directly into a window.

Windows menu

These options bring up the Text window, the Expressions window, and the Constraints window as described below.

Text window

This window displays a textual representation of the current construction. The top portion displays the names of the input points. The middle portion displays the individual steps of the construction. The names of the shapes produced by each step are listed on the left-hand side of each statement. These tags correspond to the "labels" used in the display area.

During the course of a construction, several coincident geometric primitives may be constructed. When labels overlap, GRACE displays the label for only the most recently defined shape. Also, when two shapes are near the click, the most recently defined shape will be selected. This makes it difficult to select a shape that is completely obscured by another shape. To select an obscured shape, first click on the statement in the text window that defines that shape. The label for that shape will then be displayed and the shape can be selected. For instance, in the following sequence of steps, shapes P0 and P1 become obscured by I5 and I6:


   P0
   P1

   A2 = "Midpoint"(P1,P0)
   L3 = Line(P0,P1)
   C4 = Circle(A2,P0)
   I5 I6 = Intersect(C4,L3)

Click on P0 or P1 in the Text window to make the inputs visible; click on "I5 I6 = Intersect(C4,L3)" to make the intersection points visible again.

Because Java applets are untrusted, GRACE cannot save constructions to a file. However, clicking the "pure text" button creates a window containing the actual text representation used in GRACE libraries. This text can be copied from the window and saved to a file. Several constructions can be saved in the same file, but all constructions must be defined before their use. The "Enter URL..." option in the "Library" menu can be used to load the file. Due to security restrictions, however, most browsers will only allow a URL to be loaded from the same site that GRACE came from. Alternately, the "Enter library text" option can be used to paste the text of the constructions in directly to a window.

Expressions window

This window allows the user to create expressions involving distances and angles with the mouse. The expressions are displayed textually and their current values are displayed graphically. Dragging input points causes the expressions to be updated continuously. Expressions can be used to compare various quantities associated with a construction, and are also the building blocks for the constraints used in proofs.

The left column of the window displays distance expressions, while the right column displays angle expressions. Clicking "New Distance" starts the entry of a new distance expression. Clicking on a pair of points adds their distance to the current distance expression. A similar process allows the creation of angle expressions. Expressions using pi (180 degrees) can be created using the "Add Pi" button.

dist(A,B) represents the distance between two points A and B. angle(A,B,C) represents the angle ABC. (The apex is at B.)

Constraints window

A constraint is an equation involving a pair of expressions. Constraints can be used to characterize the behavior of a ruler and compass construction. For example, a constraint can express that the sum of the angles in a triangle is Pi. The constraint window allows the user to create, manipulate and display constraints associated with a construction.

GRACE supports three types of constraints:

Input constraints
Input constraints describe the relationships between the input points to a ruler and compass construction. The "create input" button allows the user to specify input constraints during a construction. Before applying the construction, GRACE symbolically verifies that the input points satisfy all input constraints. However, GRACE does not require the construction to satisfy input constraints during its definition. (Note this does not affect the validity of the construction and proof.)
Intermediate constraints
These constraints relate angles and distances produced during intermediate step of the construction. Typically, these constraints are derived from input constraints using axioms and other user defined constructions. The "test intermediate" button allows the user to test symbolically whether a particular intermediate constraint is true.

The user can also create additional axioms using the "Force intermediate" button. GRACE adds the constraint to the current set of valid constraints without any further symbolic checking. Constructions that use forced constraints should be considered axioms, not proofs.

Output constraints
These constraints relate input primitives to output primitives. They are those constraints produced by applying a construction. The "Create output" buttons allows the user to select an intermediate constraints (or create a new constraint) and add it to the set of output constraints.

GRACE displays the current set of known constraints in the constraint window. Each constraint is preceded by the number of the construction that produced the constraint. The tag "F" means the constraint was forced with the "Force constraint" command. The tag "A" means that the system automatically generated the constraint. A new constraint is true if it can be expressed as a linear combination of existing constraints. GRACE uses linear algebra to do this test automatically.


Return to GRACE main page