Skip to content

Commit 0bfdaf0

Browse files
committed
Added same argument simplification in minus node
1 parent 290f22e commit 0bfdaf0

File tree

3 files changed

+17
-2
lines changed

3 files changed

+17
-2
lines changed

MLC/Common/LispTreeExpr/OperationNodes.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,10 @@ def formal(self):
9393
return "(" + self._nodes[0].formal() + " - " + self._nodes[1].formal() + ")"
9494

9595
def op_simplify(self):
96+
# if both arguments are equals, return 0
97+
if self._nodes[0].to_string() == self._nodes[1].to_string():
98+
return LeafNode(process_float(0))
99+
96100
# If the second argument is zero, avoid the operation.
97101
if self._node_arg_x_is_y(1, 0):
98102
return LeafNode(self._nodes[0].to_string())

MLC/GUI/Experiment/ChartConfiguration.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ class ChartConfiguration():
5555

5656
# Min, Max, Step
5757
AMOUNT_POINTS = [100, 1000, 100]
58-
MAX_COST_VALUES = [50, 5000, 50]
59-
MIN_COST_VALUES = [-200, 0, 50]
58+
MAX_COST_VALUES = [0, 500, 5]
59+
MIN_COST_VALUES = [-200, 0, 5]
6060
MARKER_SIZE_VALUES = [1, 10, 1]
6161

6262
def __init__(self, autogenerated_object):

tests/mlc/individual/test_simplification.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ class SimplificationTest(unittest.TestCase):
4848
"test_simplify_log_node_number": "(root 0.5379)",
4949
"test_simplify_log_node_sensor": "(root (log S0))",
5050
"test_simplify_log_node_zero": "(root -4.6052)",
51+
"test_simplify_minus_node_equal_numbers": "(root 0.0000)",
52+
"test_simplify_minus_node_equal_sensors": "(root 0.0000)",
53+
"test_simplify_minus_node_number_and_sensor": "(root (- 3.4092 S0))",
5154
"test_simplify_minus_node_both_numbers": "(root -0.8031)",
5255
"test_simplify_minus_node_number_and_sensor": "(root (- 3.4092 S0))",
5356
"test_simplify_minus_node_sensor_and_left_identity": "(root 0.0000)",
@@ -104,6 +107,14 @@ def test_simplify_plus_node_both_numbers(self):
104107
self._assert_expressions(expression, sys._getframe().f_code.co_name)
105108

106109
########################### MINUS NODE ####################################
110+
def test_simplify_minus_node_equal_numbers(self):
111+
expression = '(root (- 3.4092 3.4092))'
112+
self._assert_expressions(expression, sys._getframe().f_code.co_name)
113+
114+
def test_simplify_minus_node_equal_sensors(self):
115+
expression = '(root (- S0 S0))'
116+
self._assert_expressions(expression, sys._getframe().f_code.co_name)
117+
107118
def test_simplify_minus_node_number_and_sensor(self):
108119
expression = '(root (- 3.4092 S0))'
109120
self._assert_expressions(expression, sys._getframe().f_code.co_name)

0 commit comments

Comments
 (0)