Skip to content

Commit 414201f

Browse files
committed
doc
1 parent 672f1a9 commit 414201f

1 file changed

Lines changed: 42 additions & 0 deletions

File tree

FIXME.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,3 +137,45 @@ Fallback compilation path incomplete for multi-argument functions
137137
138138
- \max/\min with subscripts — Expressions like \max\_{x \in S} f(x) are common
139139
in math but involve subscript handling that's a separate parsing concern.
140+
141+
---
142+
143+
## Priority 5: Test Debt & Identified Gaps (Inventory from `todo` comments)
144+
145+
### 1. Simplification & Arithmetic Rules
146+
- **Rational Expressions**: Implement common denominator rules for additions like `1/(x+1) - 1/x = -1/(x^2+x)` (`simplify-noskip.test.ts`).
147+
- **Logarithmic Rules**: Correct canonicalization order to allow log rules to fire before expansion (e.g., `ln((x+1)/e^{2x})`) (`simplify-noskip.test.ts`).
148+
- **Inverse Hyperbolic/Trigonometric**: Add rules for converting logarithms to inverse hyperbolic functions and inverse trig conversions (e.g., `arctan(x/sqrt(1-x^2)) = arcsin(x)`).
149+
- **Factor Extraction**: Improve `factor()` to extract common factors from `Add` expressions like `(2pi + 2pi*e)`.
150+
151+
### 2. Equation Solving
152+
- **Systems of Equations**: Enable solving systems with symbolic coefficients (e.g., `ax + by = c`).
153+
- **Inequalities**: Fully implement and test solving for linear inequalities (e.g., `2x + 1 < 5`).
154+
- **Sqrt Patterns**: Complete edge cases for Sqrt-linear, Two-sqrt terms, and Nested sqrt patterns referenced in `solve.test.ts` and `TODO #15`.
155+
156+
### 3. Latex Syntax & Set Notation
157+
- **Infinite Sets**: Support parsing and serializing set notation with ellipses (e.g., `\{1, 2, 3...\}`, `\{...-2, -1, 0\}`).
158+
- **Serialization**: Address remaining edge cases in LaTeX serialization noted in `serialize.test.ts`.
159+
160+
### 4. Cortex Language Features
161+
- **Indexed Access & Sets**: Implement support for indexed access (e.g., `a[i]`) and set membership validation in Cortex tests.
162+
163+
### 5. Pattern Matching
164+
- **Wildcards**: Extend support for repeated wildcards in deeply nested contexts (TODO #3) and repeated-match cases.
165+
- **Auto-wildcarding**: Verify if `.replace()` still incorrectly auto-wildcards single-char symbols (Regression check for TODO #23).
166+
167+
### 6. Performance & Benchmarking
168+
- **Precision**: Extend Wester benchmarks to support precision 50.
169+
- **Notation**: Verify consistency for scientific vs. engineering notation in `toLatex()`.
170+
171+
### 7. Unicode & Normalization
172+
- **Normalization**: Add tests for non-NFC normalized Unicode characters (e.g., `café` vs. `café`) to `dictionary.test.ts`.
173+
174+
### 8. Calculus & Special Functions
175+
- **Integration**: Implement additional integration patterns identified in `calculus.test.ts`.
176+
- **Signatures**: Add tests for special functions type signatures (Issue #1).
177+
178+
### 9. Ambiguous / Unclear
179+
- **Empty TODOs**: `patterns.test.ts:625` contains an empty `//@todo`.
180+
- **General Revisit**: `cortex-parse.test.ts:234` and `playground.ts:66` require general logic reviews.
181+

0 commit comments

Comments
 (0)