Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Change language to: Français - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.2. This page might be outdated.
See the recommended documentation of this function

# gcd

Greatest Common Divisor

### Calling Sequence

`[pgcd, U]=gcd(p)`

### Arguments

p

a polynomial row vector `p=[p1, ..., pn]` or an integer row vector (type equal to 8).

### Description

`[pgcd, U]=gcd(p)` computes the gcd of components of `p` (`pgcd`) and an unimodular matrix (with polynomial inverse) `U`, with minimal degree such that

`p*U=[0 ... 0 pgcd]`.

In mathematics, an unimodular matrix `U` is a square integer matrix having determinant `+1` or `-1`.

### Examples

```//polynomial case
s=poly(0,'s');
p=[s,s*(s+1)^2,2*s^2+s^3];
[pgcd,u]=gcd(p);
p*u

//integer case
V=int32([2^2*3^5, 2^3*3^2,2^2*3^4*5]);
[thegcd,U]=gcd(V)
V*U

gcd([15 20])

gcd(uint8([15 20]))

gcd([iconvert(15,4) iconvert(20,4)])

gcd(iconvert([15 20],4))```

• bezout — Bezout equation for polynomials or integers
• lcm — least common multiple
• hermit — Hermite form