Пример #1
0
p0 = p1d2 + p2d1
print('(p2-p1) + (p1-p2): ', end='')
dbgPoly(p0)
print('equals 0:', p0 == 0)

p1m2 = p1 * p2
print('p1*p2: ', end='')
dbgPoly(p1m2)
print('(p1*p2).subs({x:2}):', p1m2.subs({'x': 2}), ', (p1*p2).subs({y:3}):',
      p1m2.subs({'y': 3}), ', (p1*p2).subs({x:2,y:3}):',
      p1m2.subs({
          'x': 2,
          'y': 3
      }))

print('\np1 and p2 must have remained unchanged:')
print('p1:', p1, ', p2:', p2)
print()

z = symbol('z')
ps = x + y + z
dbgPoly(ps)
ps2 = ps**2
dbgPoly(ps2)
print(ps2(3))
print(ps2(3)(2))
print(ps2(3)(2)(1))

pxyz = Poly.fromString('-x*y*z')
dbgPoly(pxyz)