def row(trclass, goodorbad, p, poly): if isinstance(poly[0], list): galois_pretty_factors = list_factored_to_factored_poly_otherorder else: galois_pretty_factors = list_to_factored_poly_otherorder out = "" try: if L.coefficient_field == "CDF" or None in poly: factors = r'\( %s \)' % pretty_poly(poly) gal_groups = [[0,0]] elif not display_galois: factors = galois_pretty_factors(poly, galois=display_galois, p = p) factors = make_bigint(r'\( %s \)' % factors) else: factors, gal_groups = galois_pretty_factors(poly, galois=display_galois, p = p) factors = make_bigint(r'\( %s \)' % factors) out += "<tr" + trclass + "><td>" + goodorbad + "</td><td>" + str(p) + "</td>" if display_galois: out += "<td class='galois'>" if gal_groups[0]==[0,0]: pass # do nothing, because the local factor is 1 else: out += r"$\times$".join( [group_display_knowl_C1_as_trivial(n,k) for n, k in gal_groups] ) out += "</td>" out += "<td> %s </td>" % factors out += "</tr>\n" except IndexError: out += "<tr><td></td><td>" + str(j) + "</td><td>" + "not available" + "</td></tr>\n" return out
def process_euler(f, p): fG = list_to_factored_poly_otherorder(f, galois=galois, p=p) if galois: factors, gal_groups = fG else: factors, gal_groups = fG, "" factors = make_bigint(r'\( %s \)' % factors) if gal_groups: if gal_groups[0] == [0,0]: gal_groups = "" else: gal_groups = r"$\times$".join( [group_display_knowl_C1_as_trivial(n, t) for n, t in gal_groups]) return [gal_groups, factors, self.ordinary(f, p)]