REDUCE_CONSTS(exp) replaces constant subexpressions of EXP with constructed constant ATOMs, saving the definition of all these constructed constants in the list of equations CONST_EQNS, and returning the modified EXP. Those parts of EXP are constant which return TRUE when operated on by the function CONSTANTP. Hence, before invoking REDUCE_CONSTS, one should do DECLARE([],CONSTANT)$ to set up a database of the constant quantities occurring in your expressions. If you are planning to generate FORTRAN output after these symbolic calculations, one of the first code sections should be the calculation of all constants. To generate this code segment, do MAP('FORTRAN,CONST_EQNS)$ Variables besides CONST_EQNS which affect REDUCE_CONSTS are: CONST_PREFIX['xx] is the string of characters used to prefix all symbols generated by REDUCE_CONSTS to represent constant subexpressions. CONST_COUNTER[1] is the integer index used to generate unique symbols to represent each constant subexpression found by REDUCE_CONSTS. To use REDUCE_CONSTS, do LOAD(RDUCON)$ . A demonstration is given in SHARE1;RDUCON DEMO . Bugs to GCOOK@MIT-MC .