First sets: 3: IDList { Id } 27: QId { Id } 33: Cmd5 { ";" } 37: ExprList { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 41: RelationOp { "~" "=" "#" "<" ">" "<=" ">=" CONG PARA HOR VER } 45: AddOp { "+" "-" "&" } 48: MulOp { "*" "/" DIV MOD } 51: BuiltIn { REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 50: Literal { LitReal LitText } 75: NearVar { Id } 14: PredHead { Id } 16: FuncHead { Id } 24: PH6 { "(" } 31: FormTail { ";" "->" } 35: QIdCT2 { ":=" } 34: NearVarList { Id } 40: Form3 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 54: LPET7 { "(" } 60: QIdList { Id } 23: PH5 { ":" } 32: Cmd6 { "{" VAR SKIP ABORT IF DO SAVE } 39: Form2 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 52: QIdExprTail { "(" ":" } 58: LPET6 { ":" } 21: PH4 { "(" } 29: Cmd4 { "{" VAR SKIP ABORT IF DO SAVE } 38: Form1 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 59: LPET5 { "," ")" } 74: Expr4QId { "(" ":" } 15: Formula { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 22: PH3 { Id "(" } 57: LPET4 { "," ")" } 7: PredDecl { Id } 17: Constraint { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 20: PH2 { "," "(" ":=" ":" } 56: LPET3 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 8: FuncDecl { Id } 18: ProcHead { Id "(" } 55: LPET2 { E } 53: LPExprTail { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE NOT E REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 49: Expr4 { LitReal LitText Id "(" "[" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 68: Expr4NoQId { LitReal LitText "(" "[" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 46: Expr3 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 47: Expr2Tail { "*" "/" DIV MOD } 67: Expr3NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 43: Expr2 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 66: Expr2NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 73: Expr2QId { "(" ":" "*" "/" DIV MOD } 44: Expr1Tail { "+" "-" "&" } 42: Expr1 { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 65: Expr1NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 72: Expr1QId { "(" ":" "+" "-" "*" "/" "&" DIV MOD } 13: Expr { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 64: ExprNoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 71: ExprQId { "(" ":" "+" "-" "*" "/" "&" REL DIV MOD } 11: ConstExpr { LitReal LitText Id "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 12: VarDeclItem { Id } 63: Form3NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 70: Form3QId { "(" ":" "~" "=" "#" "<" ">" "<=" ">=" "+" "-" "*" "/" "&" CONG PARA HOR VER REL DIV MOD } 6: VarDecl { Id } 10: ConstDeclItem { Id } 62: Form2NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 69: Form1QId { "(" ":" "~" "=" "#" "<" ">" "<=" ">=" "+" "-" "*" "/" "&" AND CONG PARA HOR VER REL DIV MOD } 5: ConstDecl { Id } 36: FormulaQId { "(" ":" "~" "=" "#" "<" ">" "<=" ">=" "+" "-" "*" "/" "&" OR AND CONG PARA HOR VER REL DIV MOD } 61: Form1NoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 28: QIdCmdTail { ";" "," "(" ":=" ":" "->" "~" "=" "#" "<" ">" "<=" ">=" "+" "-" "*" "/" "&" OR AND CONG PARA HOR VER REL DIV MOD } 30: FormulaNoQId { LitReal LitText "(" "[" "-" NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 26: Cmd3 { LitReal LitText "(" "{" "[" "-" VAR SKIP ABORT IF DO SAVE NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 25: Cmd2 { LitReal LitText Id "(" "{" "[" "-" VAR SKIP ABORT IF DO SAVE NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 19: Cmd { LitReal LitText Id "(" "{" "[" "-" VAR SKIP ABORT IF DO SAVE NIL TRUE FALSE NOT REAL TEXT PAIR INT FLOOR CEILING ROUND ABS SIN COS ATAN LN EXP CAR CDR MAX MIN } 9: ProcDecl { Id "(" } 4: Decl { CONST VAR PRED FUNC PROC } 1: Block { Comment MODULE PRIVATE FROM IMPORT CONST VAR PRED FUNC PROC } 2: Unit { Comment MODULE PRIVATE FROM IMPORT CONST VAR PRED FUNC PROC } 0: { Comment MODULE PRIVATE FROM IMPORT CONST VAR PRED FUNC PROC } Use sets: 3: IDList { Block PredHead FuncHead PH4 PH6 } 27: QId { Cmd2 QIdCmdTail Expr4 QIdExprTail LPET6 QIdList } 33: Cmd5 { Cmd4 FormTail QIdCT2 } 37: ExprList { QIdCT2 Expr4 LPET7 Expr4NoQId } 41: RelationOp { Form3 Form3NoQId Form3QId } 45: AddOp { Expr1Tail } 48: MulOp { Expr2Tail } 51: BuiltIn { Expr4 Expr4NoQId } 50: Literal { Expr4 Expr4NoQId } 75: NearVar { NearVarList } 14: PredHead { PredDecl } 16: FuncHead { FuncDecl } 24: PH6 { PH2 PH3 PH5 } 31: FormTail { Cmd3 QIdCmdTail } 35: QIdCT2 { QIdCmdTail } 34: NearVarList { Cmd6 LPET2 } 40: Form3 { Form2 } 54: LPET7 { QIdExprTail LPET6 } 60: QIdList { LPET5 } 23: PH5 { PH2 PH4 PH3 } 32: Cmd6 { Cmd4 } 39: Form2 { Form1 Form2 Form2NoQId } 52: QIdExprTail { Expr4 Expr4QId } 58: LPET6 { LPET4 LPET5 } 21: PH4 { ProcHead PH3 } 29: Cmd4 { Cmd3 } 38: Form1 { Formula Form1 Form1NoQId Form1QId } 59: LPET5 { LPET4 } 74: Expr4QId { Expr2QId } 15: Formula { PredDecl Formula Constraint FormulaNoQId FormulaQId LPET3 } 22: PH3 { PH2 } 57: LPET4 { LPET3 } 7: PredDecl { Decl } 17: Constraint { FuncDecl LPET2 } 20: PH2 { ProcHead } 56: LPET3 { LPExprTail } 8: FuncDecl { Decl } 18: ProcHead { ProcDecl } 55: LPET2 { LPExprTail } 53: LPExprTail { Expr4 Expr4NoQId } 49: Expr4 { Expr3 } 68: Expr4NoQId { Expr3NoQId } 46: Expr3 { Expr2 Expr3 Expr2Tail Expr3NoQId } 47: Expr2Tail { Expr2 Expr2Tail Expr2NoQId Expr2QId } 67: Expr3NoQId { Expr2NoQId } 43: Expr2 { Expr1 Expr1Tail } 66: Expr2NoQId { Expr1NoQId } 73: Expr2QId { Expr1QId } 44: Expr1Tail { Expr1 Expr1Tail Expr1NoQId Expr1QId } 42: Expr1 { Expr ExprNoQId ExprQId } 65: Expr1NoQId { ExprNoQId } 72: Expr1QId { ExprQId } 13: Expr { ConstExpr VarDeclItem ExprList Form3 BuiltIn LPET4 Form3NoQId Form3QId NearVar } 64: ExprNoQId { Form3NoQId } 71: ExprQId { Form3QId } 11: ConstExpr { ConstDeclItem } 12: VarDeclItem { VarDecl } 63: Form3NoQId { Form2NoQId } 70: Form3QId { Form1QId } 6: VarDecl { Decl } 10: ConstDeclItem { ConstDecl } 62: Form2NoQId { Form1NoQId } 69: Form1QId { FormulaQId } 5: ConstDecl { Decl } 36: FormulaQId { QIdCmdTail } 61: Form1NoQId { FormulaNoQId } 28: QIdCmdTail { Cmd2 } 30: FormulaNoQId { Cmd3 } 26: Cmd3 { Cmd2 } 25: Cmd2 { Cmd FormTail Cmd5 } 19: Cmd { ProcDecl Cmd Cmd6 } 9: ProcDecl { Decl } 4: Decl { Block } 1: Block { Unit } 2: Unit { } 0: { }