fix tabulation and gaps in expression.rb

This commit is contained in:
2026-03-23 10:07:26 +03:00
parent 2d5aeffa38
commit daa2e4e747

View File

@@ -69,6 +69,7 @@ module RubyAlgebra
def type
:sub
end
def diff(v)
Subtraction.new(@lhs.diff(v), @rhs.diff(v))
end
@@ -114,13 +115,14 @@ module RubyAlgebra
def op_assoc_type
:left
end
def diff(v)
u_prime = @lhs.diff(v)
v_prime = @rhs.diff(v)
term1 = Multiplication.new(u_prime, @rhs)
term2 = Multiplication.new(@lhs, v_prime)
Addition.new(term1, term2)
end
u_prime = @lhs.diff(v)
v_prime = @rhs.diff(v)
term1 = Multiplication.new(u_prime, @rhs)
term2 = Multiplication.new(@lhs, v_prime)
Addition.new(term1, term2)
end
end
class Division < Multiplication
@@ -176,6 +178,7 @@ module RubyAlgebra
def op_assoc_type
:right
end
def diff(v)
unless @exponent.is_a?(Constant)
raise NotImplementedError, "Дифференцирование степени с неконстантным показателем не реализовано"
@@ -244,6 +247,7 @@ module RubyAlgebra
def single_letter?
@is_single_letter
end
def diff(v)
@symbol == v ? Constant.new(1) : Constant.new(0)
end