<> <> <> <<>> <> <<>> DIRECTORY AlpsBool, Rope; AlpsHeur: CEDAR DEFINITIONS = BEGIN <> TableComparisonProc: TYPE = PROC [oldTable, newTable: AlpsBool.TableOfVariables] RETURNS [newIsBetter: BOOL]; ImproveAreaAndDelay: TableComparisonProc; ImproveSizeAndDelay: TableComparisonProc; ImproveSize: TableComparisonProc; ImproveDelay: TableComparisonProc; AlwaysBetter: TableComparisonProc; Example: PUBLIC PROC [] RETURNS [table: AlpsBool.TableOfVariables]; ExampleC1MX07A: PUBLIC PROC [] RETURNS [table: AlpsBool.TableOfVariables]; MostUsed: PUBLIC PROC [table: AlpsBool.TableOfVariables] RETURNS [exprs: LIST OF AlpsBool.Expression _ NIL]; EachRestrictionProc: TYPE = PROC [table: AlpsBool.TableOfVariables, expr: AlpsBool.Expression, nb: INT] RETURNS [quit: BOOL _ FALSE]; InterestProc: TYPE = PROC [table: AlpsBool.TableOfVariables, expr: AlpsBool.Expression] RETURNS [exprIsInteresting: BOOL _ FALSE]; DefaultInterestProc: InterestProc; EnumerateRestrictions: PUBLIC PROC [table: AlpsBool.TableOfVariables, eachRestriction: EachRestrictionProc, interestProc: InterestProc _ DefaultInterestProc]; FactorizeBest: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc, printLevel: INT _ 2] RETURNS [newTable: AlpsBool.TableOfVariables, ok: BOOL]; AllPermute: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc, permutLimit: INT _ 99] RETURNS [newTable: AlpsBool.TableOfVariables]; BestPermute: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc] RETURNS [newTable: AlpsBool.TableOfVariables, ok: BOOL _ FALSE]; FastPermute: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc] RETURNS [newTable: AlpsBool.TableOfVariables, ok: BOOL _ FALSE]; BestPermuteInfinitely: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc] RETURNS [newTable: AlpsBool.TableOfVariables]; NbOfUseOfVarInTable: PUBLIC PROC [table: AlpsBool.TableOfVariables, varNb: AlpsBool.VarNb] RETURNS [sigma: INT _ 0]; RemoveAuxVar: PUBLIC PROC [table: AlpsBool.TableOfVariables, better: TableComparisonProc, printLevel: INT _ 2] RETURNS [newTable: AlpsBool.TableOfVariables, ok: BOOL]; Reverse: PUBLIC PROC [table: AlpsBool.TableOfVariables] RETURNS [newTable: AlpsBool.TableOfVariables]; END.