math-model-selector
npx machina-cli add skill parcadei/Continuous-Claude-v3/math-model-selector --openclawMath Model Selector
When to Use
Trigger on phrases like:
- "what math should I use"
- "which mathematical framework"
- "how do I model this"
- "what kind of problem is this"
- "formalize this problem"
Use when user has a problem but doesn't know which mathematical domain applies.
Process
Guide user through decision tree using Polya-style questions:
1. Identify the quantity
Ask: "What quantity or phenomenon are you trying to understand?"
- Physics problem -> conservation laws, differential equations
- Economics -> equilibrium, optimization
- Data patterns -> statistics, regression
2. Characterize change
Ask: "What changes, and how does it change?"
- Discrete steps -> difference equations, recurrences
- Continuous rate -> ODEs
- Rate of rate matters -> 2nd order ODEs
- Spatial variation -> PDEs
3. Check for uncertainty
Ask: "Is there randomness or uncertainty involved?"
- Deterministic -> standard analysis
- Epistemic uncertainty -> Bayesian methods
- Random process -> probability theory, stochastic processes
4. Optimization check
Ask: "Are you optimizing something?"
- Convex objective -> linear/quadratic programming
- Non-convex -> gradient descent, evolutionary methods
- Discrete choices -> combinatorics, integer programming
5. Answer precision
Ask: "What level of answer do you need?"
- Rough estimate -> dimensional analysis
- Qualitative behavior -> phase portraits, stability
- Numerical answer -> simulation
- Exact closed form -> analytical methods
Key Questions to Ask
- What changes? (discrete vs continuous)
- What causes the change? (rate dependencies)
- What's random? (uncertainty type)
- What's being optimized? (objective function)
- How precise? (qualitative vs quantitative)
Output Format
Framework Recommendation:
- Primary: [framework name]
- Why: [one-sentence justification]
Starting Point:
- Key equations: [relevant formulas]
- Initial approach: [first step]
Tools to Use:
- [specific script or computation tool]
Related Skills:
- [domain skill to activate next]
Example Interaction
User: I want to model how a rumor spreads through a population
Claude: Let me help you find the right framework.
Q1: What quantity are we tracking?
> Number of people who heard the rumor over time.
Q2: What causes it to change?
> Spread rate depends on who knows and who doesn't.
Q3: Is there randomness?
> Assume deterministic (average behavior) for now.
Q4: Optimizing anything?
> No, just understanding dynamics.
Q5: What precision?
> Qualitative behavior, maybe predict peak rate.
Framework Recommendation:
- Primary: First-order ODE (logistic growth)
- Why: Rate depends on current state nonlinearly
Starting Point:
- dN/dt = r * N * (1 - N/K)
- N = heard count, K = population, r = spread rate
Tools:
- sympy_compute.py solve (equilibrium)
- Phase line for qualitative behavior
Related Skills:
- math/math-intuition-builder (understand the model)
- odes-pdes/first-order-odes (solve it)
Co-activates
After framework selection, suggest:
- math-intuition-builder - to understand the framework
- Relevant domain skill - for actual computation
- math-mode - for symbolic verification
Source
git clone https://github.com/parcadei/Continuous-Claude-v3/blob/main/.claude/skills/math/math-model-selector/SKILL.mdView on GitHub Overview
It helps you pick the right mathematical framework when the domain is unclear. By guiding you through a Polya-style decision tree—covering quantity, change, uncertainty, optimization, and precision—it surfaces a primary framework and a practical starting point for modeling.
How This Skill Works
It asks a sequence of targeted questions to classify the problem and then outputs a Framework Recommendation, a Starting Point with key equations, and suggested Tools. It also lists Related Skills to activate next. The process emphasizes identifying the quantity, characterizing change, checking uncertainty, evaluating optimization, and deciding the required precision.
When to Use It
- What math should I use?
- Which mathematical framework should apply to this problem?
- How do I model this?
- What kind of problem is this?
- Formalize this problem
Quick Start
- Step 1: Answer the five decision questions to identify quantity, change, uncertainty, optimization, and precision.
- Step 2: Review the Framework Recommendation and extract the Starting Point (key equations and first steps).
- Step 3: Use the specified Tools and Related Skills to implement and verify the model.
Best Practices
- Follow the five-step decision tree: identify quantity, characterize change, check uncertainty, optimization, and precision.
- Ask focused clarifying questions to determine the dominant dynamics before choosing a framework.
- Match the framework to the problem's nature: deterministic vs stochastic, continuous vs discrete, optimization vs description.
- Provide a concrete Starting Point with key equations and an initial approach.
- Use the recommended tools and Related Skills to validate and implement the model.
Example Use Cases
- Modeling rumor spread with a first-order ODE (logistic growth) to illustrate framework choice.
- Physics problem: conservation laws leading to differential equations (ODEs/PDEs).
- Economics problem: equilibrium analysis or optimization to justify chosen framework.
- Data-driven problem: selecting regression/statistics for pattern fitting.
- Uncertain processes: applying probability theory or stochastic processes to model randomness.