AST reducer