debug!(why=%e,model=%generator_model,"Loading generator model failed, failing solver-backed AC comprehension expansion rule");
tracing::debug!(model=%generator_model,comprehension=%comprehension,"Minion solving comprehnesion (ac mode)");
/// Comprehensions are leaves of the traversal, so this finds nested ones without descending into
/// All rewrites then operate purely on local references and cannot reintroduce parent-scope vars.
fn localise_non_local_references_deep(expr: Expression, symtab: &mut SymbolTable) -> Expression {
fn localise_non_local_references_shallow(expr: Expression, symtab: &mut SymbolTable) -> Expression {
let dummy_vars_by_decl_id: RefCell<HashMap<_, DeclarationPtr>> = RefCell::new(HashMap::new());
fn contains_non_quantified_variables(expr: &Expression, quantified_vars: &BTreeSet<Name>) -> bool {