# Plan Normalizer Modules

This directory splits the DomainPlan -> CorePlan normalization into small modules.

Responsibilities:
- Keep pattern-specific knowledge localized per module.
- Share small, stable helpers (AST lowering, block layouts, phi bindings).
- Preserve PlanNormalizer as the single SSOT entry point.

Modules:
- helpers.rs: shared block layouts, phi bindings, AST-to-ValueId lowering helpers.
- pattern_scan_with_init.rs: Pattern6 scan-with-init normalization.
- pattern_split_scan.rs: Pattern7 split-scan normalization.
- pattern4_continue.rs: Pattern4 continue-loop normalization.
- pattern1_simple_while.rs: Pattern1 simple while normalization.
- pattern9_accum_const_loop.rs: Pattern9 accumulator-loop normalization.
- pattern8_bool_predicate_scan.rs: Pattern8 predicate-scan normalization.
- pattern3_if_phi.rs: Pattern3 if-phi normalization.
- pattern2_break.rs: Pattern2 break-loop normalization.
- pattern5_infinite_early_exit.rs: Pattern5 infinite loop with early exit normalization.
