Clean up namespaces in the analysis framework

- Wrap the forward-analysis framework in a Spa.Forward namespace so its
  generic names (analyze, result, joinAll, variablesAt, ...) no longer
  sit flat in Spa, matching the ConstAnalysis/SignAnalysis convention.
- Merge the split Graph namespace in Graphs.lean by relocating buildCfg.
- Use nested namespace Spa / Fixedpoint instead of Spa.Fixedpoint.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-24 13:54:37 -05:00
parent 7fb9d9aa19
commit 93f913a699
8 changed files with 35 additions and 15 deletions

View File

@@ -5,6 +5,8 @@ import Spa.Showable
namespace Spa
open Forward
inductive Sign where
| plus
| minus
@@ -215,7 +217,7 @@ instance eval_valid : ValidExprEvaluator SignLattice prog := by
theorem analyze_correct {ρ : Env} (hrun : EvalStmt [] prog.rootStmt ρ) :
variablesAt prog.finalState (result SignLattice prog) ρ :=
Spa.analyze_correct SignLattice prog hrun
Forward.analyze_correct SignLattice prog hrun
end SignAnalysis