(seq, *gens, **args)
Compute GCD of a list of polynomials.

    Examples
    ========

    >>> from sympy import gcd_list
    >>> from sympy.abc import x

    >>> gcd_list([x**3 - 1, x**2 - 1, x**2 - 3*x + 2])
    x - 1
Compute GCD of a list of polynomials.
Compute GCD of a list of polynomials .
def gcd_list(seq, *gens, **args):
    """
    Compute GCD of a list of polynomials.

    Examples
    ========

    >>> from sympy import gcd_list
    >>> from sympy.abc import x

    >>> gcd_list([x**3 - 1, x**2 - 1, x**2 - 3*x + 2])
    x - 1

    """
    seq = sympify(seq)

    if not gens and not args:
        domain, numbers = construct_domain(seq)

        if not numbers:
            return domain.zero
        elif domain.is_Numerical:
            result, numbers = numbers[0], numbers[1:]

            for number in numbers:
                result = domain.gcd(result, number)

                if domain.is_one(result):
                    break

            return domain.to_sympy(result)

    options.allowed_flags(args, ['polys'])

    try:
        polys, opt = parallel_poly_from_expr(seq, *gens, **args)
    except PolificationFailed as exc:
        raise ComputationFailed('gcd_list', len(seq), exc)

    if not polys:
        if not opt.polys:
            return S.Zero
        else:
            return Poly(0, opt=opt)

    result, polys = polys[0], polys[1:]

    for poly in polys:
        result = result.gcd(poly)

        if result.is_one:
            break

    if not opt.polys:
        return result.as_expr()
    else:
        return result
def gcd_list ( seq , * gens , * * args ) : seq = sympify ( seq ) if not gens and not args : domain , numbers = construct_domain ( seq ) if not numbers : return domain . zero elif domain . is_Numerical : result , numbers = numbers [ 0 ] , numbers [ 1 : ] for number in numbers : result = domain . gcd ( result , number ) if domain . is_one ( result ) : break return domain . to_sympy ( result ) options . allowed_flags ( args , [ 'polys' ] ) try : polys , opt = parallel_poly_from_expr ( seq , * gens , * * args ) except PolificationFailed as exc : raise ComputationFailed ( 'gcd_list' , len ( seq ) , exc ) if not polys : if not opt . polys : return S . Zero else : return Poly ( 0 , opt = opt ) result , polys = polys [ 0 ] , polys [ 1 : ] for poly in polys : result = result . gcd ( poly ) if result . is_one : break if not opt . polys : return result . as_expr ( ) else : return result