(f, K, inf=None, sup=None, eps=None, fast=False, mobius=False)
return results
Iteratively compute disjoint negative root isolation intervals.
Iteratively compute disjoint negative root isolation intervals.
Iteratively compute disjoint negative root isolation intervals .
def dup_inner_isolate_negative_roots(f, K, inf=None, sup=None, eps=None, fast=False, mobius=False):
    """Iteratively compute disjoint negative root isolation intervals. """
    if inf is not None and inf >= 0:
        return []

    roots = dup_inner_isolate_real_roots(dup_mirror(f, K), K, eps=eps, fast=fast)

    F, results = K.get_field(), []

    if inf is not None or sup is not None:
        for f, M in roots:
            result = _discard_if_outside_interval(f, M, inf, sup, K, True, fast, mobius)

            if result is not None:
                results.append(result)
    elif not mobius:
        for f, M in roots:
            u, v = _mobius_to_interval(M, F)
            results.append((-v, -u))
    else:
        results = roots

    return results
def dup_inner_isolate_negative_roots ( f , K , inf = None , sup = None , eps = None , fast = False , mobius = False ) : if inf is not None and inf >= 0 : return [ ] roots = dup_inner_isolate_real_roots ( dup_mirror ( f , K ) , K , eps = eps , fast = fast ) F , results = K . get_field ( ) , [ ] if inf is not None or sup is not None : for f , M in roots : result = _discard_if_outside_interval ( f , M , inf , sup , K , True , fast , mobius ) if result is not None : results . append ( result ) elif not mobius : for f , M in roots : u , v = _mobius_to_interval ( M , F ) results . append ( ( - v , - u ) ) else : results = roots return results