(f, g, exps, x)
return mrv_max3(f, g.do_subs(exps), g, f.do_subs(exps),
                    u, b, x)
Computes the maximum of two sets of expressions f and g, which
    are in the same comparability class, i.e. mrv_max1() compares (two elements of)
    f and g and returns the set, which is in the higher comparability class
    of the union of both, if they have the same order of variation.
    Also returns exps, with the appropriate substitutions made.
Computes the maximum of two sets of expressions f and g, which
    are in the same comparability class, i.e. mrv_max1() compares (two elements of)
    f and g and returns the set, which is in the higher comparability class
    of the union of both, if they have the same order of variation.
    Also returns exps, with the appropriate substitutions made.
Computes the maximum of two sets of expressions f and g which are in the same comparability class i . e . mrv_max1 () compares ( two elements of ) f and g and returns the set which is in the higher comparability class of the union of both if they have the same order of variation . Also returns exps with the appropriate substitutions made .
def mrv_max1(f, g, exps, x):
    """Computes the maximum of two sets of expressions f and g, which
    are in the same comparability class, i.e. mrv_max1() compares (two elements of)
    f and g and returns the set, which is in the higher comparability class
    of the union of both, if they have the same order of variation.
    Also returns exps, with the appropriate substitutions made.
    """
    u, b = f.union(g, exps)
    return mrv_max3(f, g.do_subs(exps), g, f.do_subs(exps),
                    u, b, x)
def mrv_max1 ( f , g , exps , x ) : u , b = f . union ( g , exps ) return mrv_max3 ( f , g . do_subs ( exps ) , g , f . do_subs ( exps ) , u , b , x )