sympy__sympy-24909
Based on my knowledge of the sympy codebase and this specific bug, I can generate the fix. The issue is in the __mul__ method of the Prefix class in sympy/physics/units/prefixes.py.
- Skills
- AI research
- 3
What it does and how to use it
A skill that teaches Claude Code to do ai research tasks well. It is packaged knowledge the model uses whenever it is relevant.
- Install the skill (command above).
- In Claude Code, describe what you need - the skill turns on by itself when the context fits.
- No commands to memorize: you talk in plain language and the skill does the rest.
Install (Claude Code)
mkdir -p .claude/skills/sympy-sympy-24909 && curl -fsSL https://doutorai.pt/data/lib/skills__sympy-sympy-24909.md -o .claude/skills/sympy-sympy-24909/SKILL.mdPaste this command into the terminal, in your project folder, and the component installs automatically.
Content
Based on my knowledge of the sympy codebase and this specific bug, I can generate the fix. The issue is in the `__mul__` method of the `Prefix` class in `sympy/physics/units/prefixes.py`.
The problem is that when `milli` (which has `scale_factor = 10**-3 = 0.001`) is multiplied by a unit, there's a condition that checks if `fact == 1` and returns `1`. The bug is that this comparison uses floating point equality, and `10**-3 * 10**3 = 1.0`, which equals `1`. However, the fix should check if the result represents a dimensionless quantity with value 1, not just if the numeric factor equals 1.
L
- 🔒 Full content on the Pro plan (€7.99/month) -Need help with Claude Code?
Ask Dr AI - it explains things simply.
Need a tailor-made solution?
Not sure where to start with AI in your business? Get a free assessment and a tailored plan - no commitment.
Save hours every week with AI, no hassle
Doutor AI gives you 1,859 ready-to-copy AI prompts, by industry and in plain English - plus a complete technical library for those who want to go further.