EditorDoc Sections Nuprl Doc
IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html
The precedence relation is a partial ordering between individual display forms, which is used in generating parentheses during display (doc for parentheses). It is derived from the LAT objects in the library, and possibly from certain attributes attached to the display form specs themselves.

Not every partial order is a possible precedence relation; in order to define the acceptable partial orderings, we will introduce the notion of precedence expressions, and will later say how precedence is actually determined in terms of such expressions.

A display form name "OBname.n" refers to the n-th display form spec in the DISP object named OBname.

A sequence of such display form names, with <df>=<df> as the sequencing operator, is a precedence expression meaning that all the named display forms have the same precedence.

A pair (e1 < e2) of precedence expressions is a precedence expression if no display form name occurs twice, and it means that all the display forms named in e1 have lower precedence than all those of e2.

A pair (e1 e2) of precedence expressions is a precedence expression if no display form name occurs twice, and it means that all the display forms named in e1 are UNrelated by precedence to all those of e2.

The possible precedence relations are those denoted by precedence expressions. But it would not be practical to require the user to explicitly create a single precedence expression in order to define the precedence relation between the large and variable set of display forms. So, some devices have been introduced for distributing the specification of precedence throughout the collection of DISP and LAT objects.

To allow distribution of the specification for precedence between display forms, precedence expressions have been extended to allow one LAT object to refer to another, instead of having to directly use the precedence expression contained in the object so referred to. Such references are instances of "*[object]*" with the LAT object name as the string.

The remaining devices will facilitate making more robust and distributed specifications of "precedence classes", by which we mean the equivalence classes of the relation of having the same precedence.

For how precedence classes are determined doc for precedence classes.

For how precedence is determined from the LAT objects and the precedence classes (this may be obvious now) doc for precedence derivation. IF YOU CAN SEE THIS go to /sfa/Nuprl/Shared/Xindentation_hack_doc.html

EditorDoc Sections Nuprl Doc