14 lines
602 B
Python
14 lines
602 B
Python
|
def combination_components(omega, zmag, w):
|
||
|
'''Given a form omega on AS cover and normal basis element zmag, find the decomposition
|
||
|
sum_g g(zmag) omega_g and return sum_g g(w) omega_g.'''
|
||
|
AS = omega.curve
|
||
|
p = AS.characteristic
|
||
|
group_elts = [(j1, j2) for j1 in range(p) for j2 in range(p)]
|
||
|
zvee = dual_elt(AS, zmag)
|
||
|
result = as_form(AS, 0)
|
||
|
for i in range(p^2):
|
||
|
omegai = ith_magical_component(omega, zvee, i)
|
||
|
aux_fct1 = w.group_action(group_elts[i]).function
|
||
|
aux_fct2 = omegai.form
|
||
|
result += as_form(AS, aux_fct1*aux_fct2)
|
||
|
return result
|