当前位置: 代码迷 >> 综合 >> 32阶可分解环R16_i×R2_j(其中R16_i为不可分解环,已找到194种,还差67种)
  详细解决方案

32阶可分解环R16_i×R2_j(其中R16_i为不可分解环,已找到194种,还差67种)

热度:1   发布时间:2024-01-30 17:57:41.0

int main(int argc, char* argv[])
{ 
//return Mrijk(argc,argv);
// 129种16阶可分解环
static int IDs0[]={6,9,10,11,12,13,14,15,103,104,107,112,113,116,152,180,200,203,204,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,230,231,233,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,380,382,384,386,387,388,389};    
static int IDs1[]={274,282,286,287,289,290,126,127,283,377,29,30,31,32,70,190,153,155,159,163,165,128,147,148,149,160,162,167,168,169,183,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,93,94,95,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,129,130,131,132,133,134,135,136,137,138,139,140,150,151,152,154,156,157,158,161,164,166,170,174,177,179,184,185,186,187,188,189,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,275,276,277,278,180,284,285,288,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,378,379,380,381,382,383,384,385,386,387,388,389,390};
static int cnt0=sizeof(IDs0)/sizeof(IDs0[0]);
static int cnt1=sizeof(IDs1)/sizeof(IDs1[0]);
static int cnt=sizeof(IDs)/sizeof(IDs[0]);
vector<int> IDs2;// 差集s1-s0=s2
#if 1
std::sort(IDs1,IDs1+cnt1);
std::sort(IDs0,IDs0+cnt0);
set_difference(IDs1,IDs1+cnt1,IDs0,IDs0+cnt0,back_inserter(IDs2));    
#else    
set<int> s0(IDs0,IDs0+cnt0);
set<int> s1(IDs1,IDs1+cnt1);    
set_difference(s1.begin(),s1.end(),s0.begin(),s0.end(),back_inserter(IDs2));
#endif
printf("cnt0=%d,cnt1=%d,cnt=%d,cnt2=cnt1-cnt0=%d\n",cnt0,cnt1,cnt,IDs2.size());
// R16R2,其中R16为不可分解环
for(int k=0;k<IDs2.size();k++){
int i=IDs2[k];
for(int j=1;j<=2;j++){
IRing* r=newR16R2(i,1);
if(r){
string strR=calcRingInvariant(r);            
char sz2[100]={0};    
sprintf(sz2,"//R8_%d×R2_%d",i,j);            
string strRingInvariant="m_RingInvariant.insert(make_pair(\""+strR+"\",0));"+sz2;
printf("%s\n",strRingInvariant.c_str());        
string I1=calcI1(r);
string I2=calcI2(r);            
string strI1I2="m_I1I2.insert(make_pair(\""+I1+","+I2+"\","+"0"+"));"+sz2;
printf("%s\n",strI1I2.c_str());    
int ID=IdRing(r);
printf("R16_%d×R2_%d=R32_%d\n",i,j,ID);    
delete r;
r=NULL;               
}    
}           
}
return 0;
}
D:\MathTool\gaptool>iring
cnt0=129,cnt1=323,cnt=68,cnt2=cnt1-cnt0=194
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,31,31,1024,31,32,[1,3,4,8,16,0],[]",0));//R8_1×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,1,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,1,184],[16,12,48]]",0));//R8_1×R2_1
R16_1×R2_1=R32_8
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,31,31,1024,31,32,[1,3,4,8,16,0],[]",0));//R8_1×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,1,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,1,184],[16,12,48]]",0));//R8_1×R2_2
R16_1×R2_2=R32_8
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,7,15,320,31,32,[1,3,4,8,16,0],[[4,16,64],[8,8,64],[8,16,128],[16,4,64],[16,8,128],[16,16,256]]",0));//R8_2×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,4,8],[16,2,16]],[[2,1,3],[4,1,10],[4,4,3],[8,4,44],[8,5,12],[16,2,184],[16,9,48]]",0));//R8_2×R2_1
R16_2×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,7,15,320,31,32,[1,3,4,8,16,0],[[4,16,64],[8,8,64],[8,16,128],[16,4,64],[16,8,128],[16,16,256]]",0));//R8_2×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,4,8],[16,2,16]],[[2,1,3],[4,1,10],[4,4,3],[8,4,44],[8,5,12],[16,2,184],[16,9,48]]",0));//R8_2×R2_2
R16_2×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,2,7,7,192,31,32,[1,3,4,8,8,8],[[2,16,32],[4,8,32],[4,16,64],[8,4,32],[8,8,64],[8,16,128],[16,2,32],[16,4,64],[16,8,128],[16,16,256]]",0));//R8_3×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,2,8],[16,3,8]],[[2,1,3],[4,1,10],[4,4,3],[8,2,44],[8,5,12],[16,3,92],[16,10,48]]",0));//R8_3×R2_1
R16_3×R2_1=R32_15
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,2,7,7,192,31,32,[1,3,4,8,8,8],[[2,16,32],[4,8,32],[4,16,64],[8,4,32],[8,8,64],[8,16,128],[16,2,32],[16,4,64],[16,8,128],[16,16,256]]",0));//R8_3×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,2,8],[16,3,8]],[[2,1,3],[4,1,10],[4,4,3],[8,2,44],[8,5,12],[16,3,92],[16,10,48]]",0));//R8_3×R2_2
R16_3×R2_2=R32_15
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,15,31,512,31,32,[1,3,4,8,16,0],[[8,16,128],[16,8,128],[16,16,256]]",0));//R8_4×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,4,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,4,184],[16,12,48]]",0));//R8_4×R2_1
R16_4×R2_1=R32_17
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,15,31,512,31,32,[1,3,4,8,16,0],[[8,16,128],[16,8,128],[16,16,256]]",0));//R8_4×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,4,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,4,184],[16,12,48]]",0));//R8_4×R2_2
R16_4×R2_2=R32_17
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,15,31,768,31,32,[1,3,4,8,16,0],[[16,16,256]]",0));//R8_5×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,5,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,5,184],[16,12,48]]",0));//R8_5×R2_1
R16_5×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,3,4,8,16,0],16,1,0,32,1,15,31,768,31,32,[1,3,4,8,16,0],[[16,16,256]]",0));//R8_5×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,3],[4,1,4],[8,1,8],[16,5,16]],[[2,1,3],[4,1,10],[4,4,3],[8,1,44],[8,5,12],[16,5,184],[16,12,48]]",0));//R8_5×R2_2
R16_5×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,2,7,15,256,31,32,[1,7,8,4,8,4],[[2,8,96],[4,4,64],[4,8,128],[8,2,96],[8,4,128],[8,8,256]]",0));//R8_7×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,2,8],[8,3,4],[16,7,4],[16,11,4]],[[2,1,7],[4,2,20],[4,4,21],[8,3,22],[8,16,72],[16,7,70],[16,11,70]]",0));//R8_7×R2_1
R16_7×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,2,7,15,256,31,32,[1,7,8,4,8,4],[[2,8,96],[4,4,64],[4,8,128],[8,2,96],[8,4,128],[8,8,256]]",0));//R8_7×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,2,8],[8,3,4],[16,7,4],[16,11,4]],[[2,1,7],[4,2,20],[4,4,21],[8,3,22],[8,16,72],[16,7,70],[16,11,70]]",0));//R8_7×R2_2
R16_7×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,15,15,512,31,32,[1,7,8,0,16,0],[[4,8,128],[8,4,128],[8,8,256]]",0));//R8_8×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[16,8,16]],[[2,1,7],[4,1,20],[4,4,21],[8,5,72],[16,8,184]]",0));//R8_8×R2_1
R16_8×R2_1=R32_2007
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,15,15,512,31,32,[1,7,8,0,16,0],[[4,8,128],[8,4,128],[8,8,256]]",0));//R8_8×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[16,8,16]],[[2,1,7],[4,1,20],[4,4,21],[8,5,72],[16,8,184]]",0));//R8_8×R2_2
R16_8×R2_2=R32_2007
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,31,31,640,31,32,[1,7,8,16,0,0],[[2,8,64],[4,8,64],[8,2,64],[8,4,64],[8,8,128]]",0));//R8_16×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[8,1,16]],[[2,1,7],[4,1,20],[4,4,21],[8,1,88],[8,5,72],[16,12,96],[16,16,192]]",0));//R8_16×R2_1
R16_16×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,31,31,640,31,32,[1,7,8,16,0,0],[[2,8,64],[4,8,64],[8,2,64],[8,4,64],[8,8,128]]",0));//R8_16×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[8,1,16]],[[2,1,7],[4,1,20],[4,4,21],[8,1,88],[8,5,72],[16,12,96],[16,16,192]]",0));//R8_16×R2_2
R16_16×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,15,15,512,31,32,[1,7,8,0,16,0],[[2,8,64],[4,8,64],[8,2,64],[8,4,64],[8,8,256]]",0));//R8_17×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[16,17,16]],[[2,1,7],[4,1,20],[4,4,21],[8,5,72],[16,17,184]]",0));//R8_17×R2_1
R16_17×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,1,0,32,1,15,15,512,31,32,[1,7,8,0,16,0],[[2,8,64],[4,8,64],[8,2,64],[8,4,64],[8,8,256]]",0));//R8_17×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[16,17,16]],[[2,1,7],[4,1,20],[4,4,21],[8,5,72],[16,17,184]]",0));//R8_17×R2_2
R16_17×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,0,0,32,1,23,31,768,31,8,[1,7,8,16,0,0],[[2,8,64],[4,8,64],[8,8,128]]",0));//R8_18×R2_1
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[8,1,8],[8,4,8]],[[2,1,7],[4,1,20],[4,4,21],[8,1,44],[8,4,44],[8,5,72],[16,9,48],[16,12,48],[16,18,192]]",0));//R8_18×R2_1
R16_18×R2_1=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,0,0,32,1,23,31,768,31,8,[1,7,8,16,0,0],[[2,8,64],[4,8,64],[8,8,128]]",0));//R8_18×R2_2
m_I1I2.insert(make_pair("[[1,1,1],[2,1,7],[4,1,8],[8,1,8],[8,4,8]],[[2,1,7],[4,1,20],[4,4,21],[8,1,44],[8,4,44],[8,5,72],[16,9,48],[16,12,48],[16,18,192]]",0));//R8_18×R2_2
R16_18×R2_2=R32_-1
m_RingInvariant.insert(make_pair("[1,7,8,16,0,0],8,0,0,32,1,15,15,512,31,8,[1,7,8,16,0,0],[[2,8,64],[4,8,64],[8,4,128],[8,8,256]]",0));//R8_19×R2_1