Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.0.0 - English


sylm

Sylvester matrix of two polynomials

Syntax

S = sylm(a, b)

Arguments

a, b

Two single polynomials with real or complex coefficients.

S

square matrix of real or complex numbers, of size degree(a*b).

Description

sylm(a,b) gives the Sylvester matrix associated to polynomials a and b, i.e. the matrix S such that:

coeff( a*x + b*y )' = S * [coeff(x)';coeff(y)'].

If a and b are coprime polynomials then rank(sylm(a,b))=degree(a)+degree(b)) and the instructions

u = sylm(a,b) \ eye(na+nb,1)
x = poly(u(1:nb),'z','coeff')
y = poly(u(nb+1:na+nb),'z','coeff')

compute Bezout factors x and y of minimal degree such that a*x+b*y = 1

Examples

x = poly(0,"x");
y = poly ([1, 2, 3], "x", "coeff")
sylm(x, y)
--> x = poly(0, "x");
--> y = poly([1, 2, 3], "x","coeff")
 y  =
  1 +2x +3x²

--> sylm(x, y)
 ans  =
   0.   0.   1.
   1.   0.   2.
   0.   1.   3.

Resultant of two polynomials: It can be defined as the determinant of the Sylvester matrix of the two polynomials. It is null if and only if both polynomials have at least one common root.

a = poly([1 2 3 4], "x", "roots")
b = poly([-2 -1 5], "x", "roots")
det(sylm(a, b))

// Simpler case:
det(sylm((%s+1)^5, (%s+3)^3))
(-3 -(-1))^(5*3)     // Expected resultant
--> a = poly([1 2 3 4],"x","roots")
 a  =
  24 -50x +35x² -10x³ +x⁴

--> b = poly([-2 -1 5],"x","roots")
 b  =
  -10 -13x -2x² +x³

--> det(sylm(a,b))
 ans  =
   1036800.0

--> // Simpler case:
--> det(sylm((%s+1)^5,(%s+3)^3))
 ans  =
  -32768.000

--> (-3 -(-1))^(5*3)     // Expected resultant
 ans  =
  -32768.

See Also

  • bezout — GCD of two polynomials or two integers, by the Bezout method
  • diophant — Solves the diophantine (Bezout) equation p1*x1 + p2*x2 = b
Report an issue
<< simp_mode Polynomials varn >>

Copyright (c) 2022-2023 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Oct 24 14:30:03 CEST 2023