(f, g, u, K)
Helper function for `dmp_inner_gcd()`.
Helper function for `dmp_inner_gcd()`.
Helper function for dmp_inner_gcd () .
def _dmp_inner_gcd(f, g, u, K):
    """Helper function for `dmp_inner_gcd()`. """
    if not K.is_Exact:
        try:
            exact = K.get_exact()
        except DomainError:
            return dmp_one(u, K), f, g

        f = dmp_convert(f, u, K, exact)
        g = dmp_convert(g, u, K, exact)

        h, cff, cfg = _dmp_inner_gcd(f, g, u, exact)

        h = dmp_convert(h, u, exact, K)
        cff = dmp_convert(cff, u, exact, K)
        cfg = dmp_convert(cfg, u, exact, K)

        return h, cff, cfg
    elif K.has_Field:
        if K.is_QQ and query('USE_HEU_GCD'):
            try:
                return dmp_qq_heu_gcd(f, g, u, K)
            except HeuristicGCDFailed:
                pass

        return dmp_ff_prs_gcd(f, g, u, K)
    else:
        if K.is_ZZ and query('USE_HEU_GCD'):
            try:
                return dmp_zz_heu_gcd(f, g, u, K)
            except HeuristicGCDFailed:
                pass

        return dmp_rr_prs_gcd(f, g, u, K)
def _dmp_inner_gcd ( f , g , u , K ) : if not K . is_Exact : try : exact = K . get_exact ( ) except DomainError : return dmp_one ( u , K ) , f , g f = dmp_convert ( f , u , K , exact ) g = dmp_convert ( g , u , K , exact ) h , cff , cfg = _dmp_inner_gcd ( f , g , u , exact ) h = dmp_convert ( h , u , exact , K ) cff = dmp_convert ( cff , u , exact , K ) cfg = dmp_convert ( cfg , u , exact , K ) return h , cff , cfg elif K . has_Field : if K . is_QQ and query ( 'USE_HEU_GCD' ) : try : return dmp_qq_heu_gcd ( f , g , u , K ) except HeuristicGCDFailed : pass return dmp_ff_prs_gcd ( f , g , u , K ) else : if K . is_ZZ and query ( 'USE_HEU_GCD' ) : try : return dmp_zz_heu_gcd ( f , g , u , K ) except HeuristicGCDFailed : pass return dmp_rr_prs_gcd ( f , g , u , K )