Remove match_multiply_zero in favor of match_multiply_numerics.

parent 5a7ecfed
...@@ -8,7 +8,7 @@ from .powers import match_add_exponents, match_subtract_exponents, \ ...@@ -8,7 +8,7 @@ from .powers import match_add_exponents, match_subtract_exponents, \
match_raised_fraction, match_remove_negative_exponent, \ match_raised_fraction, match_remove_negative_exponent, \
match_exponent_to_root, match_extend_exponent, match_constant_exponent match_exponent_to_root, match_extend_exponent, match_constant_exponent
from .numerics import match_add_numerics, match_divide_numerics, \ from .numerics import match_add_numerics, match_divide_numerics, \
match_multiply_numerics, match_multiply_zero, match_raise_numerics match_multiply_numerics, match_raise_numerics
from .fractions import match_constant_division, match_add_fractions, \ from .fractions import match_constant_division, match_add_fractions, \
match_multiply_fractions, match_divide_fractions, \ match_multiply_fractions, match_divide_fractions, \
match_extract_fraction_terms, match_division_in_denominator match_extract_fraction_terms, match_division_in_denominator
...@@ -38,9 +38,8 @@ RULES = { ...@@ -38,9 +38,8 @@ RULES = {
match_combine_groups, match_add_quadrants, match_combine_groups, match_add_quadrants,
match_add_logarithms, match_sort_polynome], match_add_logarithms, match_sort_polynome],
OP_MUL: [match_multiply_numerics, match_expand, match_add_exponents, OP_MUL: [match_multiply_numerics, match_expand, match_add_exponents,
match_multiply_zero, match_negated_factor, match_negated_factor, match_multiply_fractions,
match_multiply_fractions, match_factor_in_multiplicant, match_factor_in_multiplicant, match_sort_monomial],
match_sort_monomial],
OP_DIV: [match_subtract_exponents, match_divide_numerics, OP_DIV: [match_subtract_exponents, match_divide_numerics,
match_constant_division, match_divide_fractions, match_constant_division, match_divide_fractions,
match_negated_division, match_extract_fraction_terms, match_negated_division, match_extract_fraction_terms,
......
...@@ -165,25 +165,6 @@ MESSAGES[reduce_fraction_constants] = \ ...@@ -165,25 +165,6 @@ MESSAGES[reduce_fraction_constants] = \
_('Divide the nominator and denominator of fraction {0} by {1}.') _('Divide the nominator and denominator of fraction {0} by {1}.')
def match_multiply_zero(node):
"""
a * 0 -> 0
0 * a -> 0
-0 * a -> -0
0 * -a -> -0
-0 * -a -> 0
"""
assert node.is_op(OP_MUL)
left, right = node
if (left.is_leaf and left.value == 0) \
or (right.is_leaf and right.value == 0):
return [P(node, multiply_zero, (left.negated + right.negated,))]
return []
def match_multiply_numerics(node): def match_multiply_numerics(node):
""" """
3 * 2 -> 6 3 * 2 -> 6
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment