diff options
author | David A. Madore <david@procyon> | 2011-11-15 18:24:19 +0100 |
---|---|---|
committer | David A. Madore <david@procyon> | 2011-11-15 18:24:19 +0100 |
commit | 8103630e169e7c9891b5931f32082cba9a36290d (patch) | |
tree | 91ed34e593fdb9d6495a8437a30c16dc38c3b9e4 /divers | |
parent | faf27ec75f269e96a298dc99f580875bf044522e (diff) | |
download | galois-8103630e169e7c9891b5931f32082cba9a36290d.tar.gz galois-8103630e169e7c9891b5931f32082cba9a36290d.tar.bz2 galois-8103630e169e7c9891b5931f32082cba9a36290d.zip |
Des notes de calculs en sage qui ne marchent pas. ☹
Diffstat (limited to 'divers')
-rw-r--r-- | divers/sageries/resolvante-d5-dans-m20 | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/divers/sageries/resolvante-d5-dans-m20 b/divers/sageries/resolvante-d5-dans-m20 new file mode 100644 index 0000000..7c7f956 --- /dev/null +++ b/divers/sageries/resolvante-d5-dans-m20 @@ -0,0 +1,71 @@ +### Trop compliqué, le calcul ne termine pas... :-( +e = SymmetricFunctionAlgebra(QQ, basis='elementary') +R.<z1,z2,z3,z4,z5,p,d,a1,a2,a3,a4,a5> = PolynomialRing(QQ,12,order='lex(5),lex(1),lex(1),deglex(5)') +asym1 = -e([1]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym2 = +e([2]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym3 = -e([3]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym4 = +e([4]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym5 = -e([5]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +Isym = R.ideal([a1-asym1, a2-asym2, a3-asym3, a4-asym4, a5-asym5]) +pexpr = z1^2*(z2*z5+z3*z4)+z2^2*(z1*z3+z4*z5)+z3^2*(z1*z5+z2*z4)+z4^2*(z1*z2+z3*z5)+z5^2*(z1*z4+z2*z3) +Ip = R.ideal([p-pexpr]) +dexpr = (z1-z2)*(z1-z3)*(z1-z4)*(z2-z3)*(z2-z4)*(z3-z4) +Id = R.ideal([d-dexpr]) +qexpr = z1*z2 + z2*z3 + z3*z4 + z4*z5 + z1*z5 +B = (Isym+Ip+Id).groebner_basis() +qexpr.reduce(B) + +### Autre tentative... toujours trop compliquée. +e = SymmetricFunctionAlgebra(QQ, basis='elementary') +R.<z1,z2,z3,z4,z5,p,a1,a2,a3,a4,a5> = PolynomialRing(QQ,11,order='lex(5),lex(1),deglex(5)') +asym1 = -e([1]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym2 = +e([2]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym3 = -e([3]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym4 = +e([4]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym5 = -e([5]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +Isym = R.ideal([a1-asym1, a2-asym2, a3-asym3, a4-asym4, a5-asym5]) +pexpr = z1^2*(z2*z5+z3*z4)+z2^2*(z1*z3+z4*z5)+z3^2*(z1*z5+z2*z4)+z4^2*(z1*z2+z3*z5)+z5^2*(z1*z4+z2*z3) +Ip = R.ideal([p-pexpr]) +qexpr = z1*z2 + z2*z3 + z3*z4 + z4*z5 + z1*z5 +qexprConj = qexpr.subs({z2:z5,z3:z4,z4:z3,z5:z2}) +coef0 = qexpr*qexprConj +coef1 = -(qexpr+qexprConj) +B = (Isym+Ip).groebner_basis() +coef1.reduce(B) +coef0.reduce(B) + +### Encore une tentative... pas mieux... +e = SymmetricFunctionAlgebra(QQ, basis='elementary') +R.<z1,z2,z3,z4,z5,q,a1,a2,a3,a4,a5> = PolynomialRing(QQ,11,order='lex(5),lex(1),deglex(5)') +asym1 = -e([1]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym2 = +e([2]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym3 = -e([3]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym4 = +e([4]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym5 = -e([5]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +Isym = R.ideal([a1-asym1, a2-asym2, a3-asym3, a4-asym4, a5-asym5]) +pexpr = z1^2*(z2*z5+z3*z4)+z2^2*(z1*z3+z4*z5)+z3^2*(z1*z5+z2*z4)+z4^2*(z1*z2+z3*z5)+z5^2*(z1*z4+z2*z3) +qexpr = z1*z2 + z2*z3 + z3*z4 + z4*z5 + z1*z5 +Iq = R.ideal([q-qexpr]) +B = (Isym+Iq).groebner_basis() +pexpr.reduce(B) + +### Encore une tentative... +e = SymmetricFunctionAlgebra(QQ, basis='elementary') +R.<x,z1,z2,z3,z4,z5,a1,a2,a3,a4,a5> = PolynomialRing(QQ,11,order='lex(1),lex(5),deglex(5)') +asym1 = -e([1]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym2 = +e([2]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym3 = -e([3]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym4 = +e([4]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +asym5 = -e([5]).expand(5).subs(x0=z1,x1=z2,x2=z3,x3=z4,x4=z5) +Isym = R.ideal([a1-asym1, a2-asym2, a3-asym3, a4-asym4, a5-asym5]) +pexpr = z1^2*(z2*z5 + z3*z4) + z2^2*(z1*z3 + z4*z5) + z3^2*(z1*z5 + z2*z4) + z4^2*(z1*z2 + z3*z5) + z5^2*(z1*z4 + z2*z3) +qexpr = z1*z2 + z2*z3 + z3*z4 + z4*z5 + z1*z5 +tmp = (x-pexpr)*(x-pexpr).subs({z4:z5,z5:z4}) +presful = tmp*tmp.subs({z1:z2,z2:z3,z3:z1})*tmp.subs({z1:z3,z2:z1,z3:z2}) +tmp0 = (x-qexpr)*(x-qexpr).subs({z1:z2,z2:z4,z4:z3,z3:z1}) +tmp = tmp0*tmp0.subs({z4:z5,z5:z4}) +qresful = tmp*tmp.subs({z1:z2,z2:z3,z3:z1})*tmp.subs({z1:z3,z2:z1,z3:z2}) +B = Isym.groebner_basis() +pres = presful.reduce(B) +qres = qresful.reduce(B) +# Mais que faire ensuite ? |