Implement Solver Pattern abstraction
Description
After solver consolidation, refactor solvers into a proper abstraction hierarchy to improve maintainability and extensibility.
Tasks
- Create abstract Solver base class in pyeeg/solvers.py
- Refactor existing regression methods as concrete Solver subclasses:
- SVDSolver
- LSTQSolver
- ConjugateGradientSolver
- Others as appropriate
- Update TRFEstimator to accept a solver instance via dependency injection
- Ensure all solvers implement consistent interface
Acceptance Criteria
- Abstract Solver base class with clear interface
- All existing solvers are concrete implementations
- TRFEstimator can use any solver via composition
- Easy to add new solver types
- All solvers produce consistent results
Priority
Medium
Dependencies
Epic
Refactoring for Modularity
Related
Builds on solver architecture work from NEXT_STEPS.md Step 3
Implement Solver Pattern abstraction
Description
After solver consolidation, refactor solvers into a proper abstraction hierarchy to improve maintainability and extensibility.
Tasks
Acceptance Criteria
Priority
Medium
Dependencies
Epic
Refactoring for Modularity
Related
Builds on solver architecture work from NEXT_STEPS.md Step 3