Răsfoiți Sursa

Changed an integral rule slightly to fit the new fraction rules better.

Taddeus Kroes 14 ani în urmă
părinte
comite
15ad7e944e
2 a modificat fișierele cu 4 adăugiri și 4 ștergeri
  1. 3 3
      src/rules/integrals.py
  2. 1 1
      tests/test_rules_integrals.py

+ 3 - 3
src/rules/integrals.py

@@ -66,7 +66,7 @@ def solve_indef(root, args):
 
 def match_integrate_variable_power(node):
     """
-    int x ^ n dx  ->  x ^ (n + 1) / (n + 1)
+    int x ^ n dx  ->  1 / (n + 1) * x ^ (n + 1)
     int g ^ x dx  ->  g ^ x / ln(g)
     """
     assert node.is_op(OP_INT)
@@ -87,11 +87,11 @@ def match_integrate_variable_power(node):
 
 def integrate_variable_root(root, args):
     """
-    int x ^ n dx  ->  x ^ (n + 1) / (n + 1)
+    int x ^ n dx  ->  1 / (n + 1) * x ^ (n + 1)
     """
     x, n = root[0]
 
-    return solve_integral(root, x ** (n + 1) / (n + 1))
+    return solve_integral(root, L(1) / (n + 1) * x ** (n + 1))
 
 
 MESSAGES[integrate_variable_root] = \

+ 1 - 1
tests/test_rules_integrals.py

@@ -57,7 +57,7 @@ class TestRulesIntegrals(RulesTestCase):
                     [P(root, integrate_variable_exponent)])
 
     def test_integrate_variable_root(self):
-        root, expect = tree('int x ^ n, x ^ (n + 1) / (n + 1) + c')
+        root, expect = tree('int x ^ n, 1 / (n + 1) * x ^ (n + 1) + c')
         self.assertEqual(integrate_variable_root(root, ()), expect)
 
     def test_integrate_variable_exponent(self):