Changeset 185e5b in git for Singular/LIB/gitfan.lib
 Timestamp:
 Jan 26, 2017, 5:39:14 PM (7 years ago)
 Branches:
 (u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
 Children:
 de96278c020b8a3fb467b672cee2bd7527925e0f
 Parents:
 cbe2b1e3a78bf1b5422767113f7f157a793e1f65
 gitauthor:
 Janko Boehm <boehm@mathematik.unikl.de>20170126 17:39:14+01:00
 gitcommitter:
 Yue Ren <ren@mathematik.unikl.de>20170608 18:10:26+02:00
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

Singular/LIB/gitfan.lib
rcbe2b1e r185e5b 421 421 { 422 422 echo = 2; 423 // Note that simplexOrbitRepresentatives and simplexSymmetryGroup are subsets of the actual sets for G25. For the full example see the examples in the source code documentation. 423 LIB "gitfan.lib"; 424 424 ring R = 0,T(1..10),wp(1,1,1,1,1,1,1,1,1,1); 425 425 ideal J = … … 435 435 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 436 436 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 437 list simplexSymmetryGroup = G25Action(); 437 438 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 438 intvec( 1, 2, 3, 5, 6 ), 439 intvec( 1, 2, 3, 5, 7 ), 440 intvec( 1, 2, 3, 5, 10 ), 441 intvec( 1, 2, 3, 7, 9 ), 442 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 443 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 444 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 439 intvec( 1, 2, 3, 5, 6 ), 440 intvec( 1, 2, 3, 5, 7 ), 441 intvec( 1, 2, 3, 5, 10 ), 442 intvec( 1, 2, 3, 7, 9 ), 443 intvec( 1, 2, 6, 9, 10 ), 444 intvec( 1, 2, 3, 4, 5, 6 ), 445 intvec( 1, 2, 3, 4, 5, 10 ), 446 intvec( 1, 2, 3, 5, 6, 8 ), 447 intvec( 1, 2, 3, 5, 6, 9 ), 448 intvec( 1, 2, 3, 5, 7, 10 ), 449 intvec( 1, 2, 3, 7, 9, 10 ), 450 intvec( 1, 2, 3, 4, 5, 6, 7 ), 451 intvec( 1, 2, 3, 4, 5, 6, 8 ), 452 intvec( 1, 2, 3, 4, 5, 6, 9 ), 453 intvec( 1, 2, 3, 5, 6, 9, 10 ), 454 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 455 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 456 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 457 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 445 458 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 446 list simplexSymmetryGroup = permutationFromIntvec(intvec( 1 .. 10 )),447 permutationFromIntvec(intvec( 1, 2, 4, 3, 5, 7, 6, 9, 8, 10 )),448 permutationFromIntvec(intvec( 1, 3, 2, 4, 6, 5, 7, 8, 10, 9 )),449 permutationFromIntvec(intvec( 1, 3, 4, 2, 6, 7, 5, 10, 8, 9 )),450 permutationFromIntvec(intvec( 1, 4, 2, 3, 7, 5, 6, 9, 10, 8 )),451 permutationFromIntvec(intvec( 1, 4, 3, 2, 7, 6, 5, 10, 9, 8 ));452 459 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 453 460 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); 454 apply(afaceOrbits,size); 455 } 461 apply(afaceOrbits,size);} 456 462 457 463 … … 533 539 { 534 540 echo = 2; 535 // Note that simplexOrbitRepresentatives and simplexSymmetryGroup are subsets of the actual sets for G25. For the full example see the examples in the documentation536 541 ring R = 0,T(1..10),wp(1,1,1,1,1,1,1,1,1,1); 537 542 ideal J = … … 547 552 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 548 553 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 554 list simplexSymmetryGroup = G25Action(); 549 555 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 550 intvec( 1, 2, 3, 5, 6 ), 551 intvec( 1, 2, 3, 5, 7 ), 552 intvec( 1, 2, 3, 5, 10 ), 553 intvec( 1, 2, 3, 7, 9 ), 554 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 555 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 556 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 556 intvec( 1, 2, 3, 5, 6 ), 557 intvec( 1, 2, 3, 5, 7 ), 558 intvec( 1, 2, 3, 5, 10 ), 559 intvec( 1, 2, 3, 7, 9 ), 560 intvec( 1, 2, 6, 9, 10 ), 561 intvec( 1, 2, 3, 4, 5, 6 ), 562 intvec( 1, 2, 3, 4, 5, 10 ), 563 intvec( 1, 2, 3, 5, 6, 8 ), 564 intvec( 1, 2, 3, 5, 6, 9 ), 565 intvec( 1, 2, 3, 5, 7, 10 ), 566 intvec( 1, 2, 3, 7, 9, 10 ), 567 intvec( 1, 2, 3, 4, 5, 6, 7 ), 568 intvec( 1, 2, 3, 4, 5, 6, 8 ), 569 intvec( 1, 2, 3, 4, 5, 6, 9 ), 570 intvec( 1, 2, 3, 5, 6, 9, 10 ), 571 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 572 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 573 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 574 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 557 575 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 558 list simplexSymmetryGroup = permutationFromIntvec(intvec( 1 .. 10 )),559 permutationFromIntvec(intvec( 1, 2, 4, 3, 5, 7, 6, 9, 8, 10 )),560 permutationFromIntvec(intvec( 1, 3, 2, 4, 6, 5, 7, 8, 10, 9 )),561 permutationFromIntvec(intvec( 1, 3, 4, 2, 6, 7, 5, 10, 8, 9 )),562 permutationFromIntvec(intvec( 1, 4, 2, 3, 7, 5, 6, 9, 10, 8 )),563 permutationFromIntvec(intvec( 1, 4, 3, 2, 7, 6, 5, 10, 9, 8 ));564 576 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 565 577 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); … … 738 750 { 739 751 echo = 2; 740 // Note that simplexOrbitRepresentatives and simplexSymmetryGroup are subsets of the actual sets for G25. For the full example see the examples in the documentation741 752 ring R = 0,T(1..10),wp(1,1,1,1,1,1,1,1,1,1); 742 753 ideal J = … … 752 763 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 753 764 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 765 list simplexSymmetryGroup = G25Action(); 754 766 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 755 intvec( 1, 2, 3, 5, 6 ), 756 intvec( 1, 2, 3, 5, 7 ), 757 intvec( 1, 2, 3, 5, 10 ), 758 intvec( 1, 2, 3, 7, 9 ), 759 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 760 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 761 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 767 intvec( 1, 2, 3, 5, 6 ), 768 intvec( 1, 2, 3, 5, 7 ), 769 intvec( 1, 2, 3, 5, 10 ), 770 intvec( 1, 2, 3, 7, 9 ), 771 intvec( 1, 2, 6, 9, 10 ), 772 intvec( 1, 2, 3, 4, 5, 6 ), 773 intvec( 1, 2, 3, 4, 5, 10 ), 774 intvec( 1, 2, 3, 5, 6, 8 ), 775 intvec( 1, 2, 3, 5, 6, 9 ), 776 intvec( 1, 2, 3, 5, 7, 10 ), 777 intvec( 1, 2, 3, 7, 9, 10 ), 778 intvec( 1, 2, 3, 4, 5, 6, 7 ), 779 intvec( 1, 2, 3, 4, 5, 6, 8 ), 780 intvec( 1, 2, 3, 4, 5, 6, 9 ), 781 intvec( 1, 2, 3, 5, 6, 9, 10 ), 782 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 783 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 784 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 785 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 762 786 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 763 list simplexSymmetryGroup = permutationFromIntvec(intvec( 1 .. 10 )),764 permutationFromIntvec(intvec( 1, 2, 4, 3, 5, 7, 6, 9, 8, 10 )),765 permutationFromIntvec(intvec( 1, 3, 2, 4, 6, 5, 7, 8, 10, 9 )),766 permutationFromIntvec(intvec( 1, 3, 4, 2, 6, 7, 5, 10, 8, 9 )),767 permutationFromIntvec(intvec( 1, 4, 2, 3, 7, 5, 6, 9, 10, 8 )),768 permutationFromIntvec(intvec( 1, 4, 3, 2, 7, 6, 5, 10, 9, 8 ));769 787 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 770 788 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); … … 773 791 apply(minAfaceOrbits,size); 774 792 list listOfOrbitConeOrbits = orbitConeOrbits(minAfaceOrbits,Q); 793 apply(listOfOrbitConeOrbits,size); 775 794 list listOfMinimalOrbitConeOrbits = minimalOrbitConeOrbits(listOfOrbitConeOrbits); 776 795 size(listOfMinimalOrbitConeOrbits); … … 856 875 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 857 876 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 877 list simplexSymmetryGroup = G25Action(); 858 878 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 859 intvec( 1, 2, 3, 5, 6 ), 860 intvec( 1, 2, 3, 5, 7 ), 861 intvec( 1, 2, 3, 5, 10 ), 862 intvec( 1, 2, 3, 7, 9 ), 863 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 864 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 865 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 879 intvec( 1, 2, 3, 5, 6 ), 880 intvec( 1, 2, 3, 5, 7 ), 881 intvec( 1, 2, 3, 5, 10 ), 882 intvec( 1, 2, 3, 7, 9 ), 883 intvec( 1, 2, 6, 9, 10 ), 884 intvec( 1, 2, 3, 4, 5, 6 ), 885 intvec( 1, 2, 3, 4, 5, 10 ), 886 intvec( 1, 2, 3, 5, 6, 8 ), 887 intvec( 1, 2, 3, 5, 6, 9 ), 888 intvec( 1, 2, 3, 5, 7, 10 ), 889 intvec( 1, 2, 3, 7, 9, 10 ), 890 intvec( 1, 2, 3, 4, 5, 6, 7 ), 891 intvec( 1, 2, 3, 4, 5, 6, 8 ), 892 intvec( 1, 2, 3, 4, 5, 6, 9 ), 893 intvec( 1, 2, 3, 5, 6, 9, 10 ), 894 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 895 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 896 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 897 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 866 898 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 867 list simplexSymmetryGroup = permutationFromIntvec(intvec( 1 .. 10 )),868 permutationFromIntvec(intvec( 1, 2, 4, 3, 5, 7, 6, 9, 8, 10 )),869 permutationFromIntvec(intvec( 1, 3, 2, 4, 6, 5, 7, 8, 10, 9 )),870 permutationFromIntvec(intvec( 1, 3, 4, 2, 6, 7, 5, 10, 8, 9 )),871 permutationFromIntvec(intvec( 1, 4, 2, 3, 7, 5, 6, 9, 10, 8 )),872 permutationFromIntvec(intvec( 1, 4, 3, 2, 7, 6, 5, 10, 9, 8 ));873 899 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 874 900 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); … … 1283 1309 example 1284 1310 { 1285 ///// todo 1311 permutation sigma = permutationFromIntvec(intvec( 1, 2, 4, 3, 5, 7, 6, 9, 8, 10 )); 1312 sigma; 1313 permutationToIntvec(sigma); 1286 1314 } 1287 1315 … … 1476 1504 example 1477 1505 { 1478 ///// todo 1506 ring R = 0,T(1..10),wp(1,1,1,1,1,1,1,1,1,1); 1507 ideal J = 1508 T(5)*T(10)T(6)*T(9)+T(7)*T(8), 1509 T(1)*T(9)T(2)*T(7)+T(4)*T(5), 1510 T(1)*T(8)T(2)*T(6)+T(3)*T(5), 1511 T(1)*T(10)T(3)*T(7)+T(4)*T(6), 1512 T(2)*T(10)T(3)*T(9)+T(4)*T(8); 1513 intmat Q[5][10] = 1514 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1515 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1516 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1517 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1518 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 1519 list simplexSymmetryGroup = G25Action(); 1520 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 1521 intvec( 1, 2, 3, 5, 6 ), 1522 intvec( 1, 2, 3, 5, 7 ), 1523 intvec( 1, 2, 3, 5, 10 ), 1524 intvec( 1, 2, 3, 7, 9 ), 1525 intvec( 1, 2, 6, 9, 10 ), 1526 intvec( 1, 2, 3, 4, 5, 6 ), 1527 intvec( 1, 2, 3, 4, 5, 10 ), 1528 intvec( 1, 2, 3, 5, 6, 8 ), 1529 intvec( 1, 2, 3, 5, 6, 9 ), 1530 intvec( 1, 2, 3, 5, 7, 10 ), 1531 intvec( 1, 2, 3, 7, 9, 10 ), 1532 intvec( 1, 2, 3, 4, 5, 6, 7 ), 1533 intvec( 1, 2, 3, 4, 5, 6, 8 ), 1534 intvec( 1, 2, 3, 4, 5, 6, 9 ), 1535 intvec( 1, 2, 3, 5, 6, 9, 10 ), 1536 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 1537 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 1538 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 1539 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 1540 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 1541 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 1542 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); 1543 apply(afaceOrbits,size); 1544 list minAfaceOrbits = minimalAfaceOrbits(afaceOrbits); 1545 apply(minAfaceOrbits,size); 1546 list listOfOrbitConeOrbits = orbitConeOrbits(minAfaceOrbits,Q); 1547 apply(listOfOrbitConeOrbits,size); 1548 list listOfMinimalOrbitConeOrbits = minimalOrbitConeOrbits(listOfOrbitConeOrbits); 1549 size(listOfMinimalOrbitConeOrbits); 1550 list Asigma = groupActionOnQImage(simplexSymmetryGroup,Q); 1551 list actionOnOrbitconeIndices = groupActionOnHashes(Asigma,listOfOrbitConeOrbits); 1552 list OClist = listOfOrbitConeOrbits[1]; 1553 for (int i =2;i<=size(listOfOrbitConeOrbits);i++){ 1554 OClist = OClist + listOfOrbitConeOrbits[i]; 1555 } 1556 cone mov = coneViaPoints(transpose(Q)); 1557 mov = canonicalizeCone(mov); 1558 printlevel = 3; 1559 list Sigma = GITfanSymmetric(OClist, Q, mov, actionOnOrbitconeIndices); 1560 Sigma; 1479 1561 } 1480 1562 … … 1610 1692 example 1611 1693 { 1612 ///// todo 1694 ring R = 0,T(1..10),wp(1,1,1,1,1,1,1,1,1,1); 1695 ideal J = 1696 T(5)*T(10)T(6)*T(9)+T(7)*T(8), 1697 T(1)*T(9)T(2)*T(7)+T(4)*T(5), 1698 T(1)*T(8)T(2)*T(6)+T(3)*T(5), 1699 T(1)*T(10)T(3)*T(7)+T(4)*T(6), 1700 T(2)*T(10)T(3)*T(9)+T(4)*T(8); 1701 intmat Q[5][10] = 1702 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1703 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1704 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1705 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1706 0, 0, 1, 1, 1, 0, 0, 0, 0, 1; 1707 list simplexSymmetryGroup = G25Action(); 1708 list simplexOrbitRepresentatives = intvec( 1, 2, 3, 4, 5 ), 1709 intvec( 1, 2, 3, 5, 6 ), 1710 intvec( 1, 2, 3, 5, 7 ), 1711 intvec( 1, 2, 3, 5, 10 ), 1712 intvec( 1, 2, 3, 7, 9 ), 1713 intvec( 1, 2, 6, 9, 10 ), 1714 intvec( 1, 2, 3, 4, 5, 6 ), 1715 intvec( 1, 2, 3, 4, 5, 10 ), 1716 intvec( 1, 2, 3, 5, 6, 8 ), 1717 intvec( 1, 2, 3, 5, 6, 9 ), 1718 intvec( 1, 2, 3, 5, 7, 10 ), 1719 intvec( 1, 2, 3, 7, 9, 10 ), 1720 intvec( 1, 2, 3, 4, 5, 6, 7 ), 1721 intvec( 1, 2, 3, 4, 5, 6, 8 ), 1722 intvec( 1, 2, 3, 4, 5, 6, 9 ), 1723 intvec( 1, 2, 3, 5, 6, 9, 10 ), 1724 intvec( 1, 2, 3, 4, 5, 6, 7, 8 ), 1725 intvec( 1, 2, 3, 4, 5, 6, 9, 10 ), 1726 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9 ), 1727 intvec( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ); 1728 list afaceOrbitRepresentatives=afaces(J,simplexOrbitRepresentatives); 1729 list fulldimAfaceOrbitRepresentatives=fullDimImages(afaceOrbitRepresentatives,Q); 1730 list afaceOrbits=computeAfaceOrbits(fulldimAfaceOrbitRepresentatives,simplexSymmetryGroup); 1731 apply(afaceOrbits,size); 1732 list minAfaceOrbits = minimalAfaceOrbits(afaceOrbits); 1733 apply(minAfaceOrbits,size); 1734 list listOfOrbitConeOrbits = orbitConeOrbits(minAfaceOrbits,Q); 1735 apply(listOfOrbitConeOrbits,size); 1736 list listOfMinimalOrbitConeOrbits = minimalOrbitConeOrbits(listOfOrbitConeOrbits); 1737 size(listOfMinimalOrbitConeOrbits); 1738 list Asigma = groupActionOnQImage(simplexSymmetryGroup,Q); 1739 list actionOnOrbitconeIndices = groupActionOnHashes(Asigma,listOfOrbitConeOrbits); 1740 list OClist = listOfOrbitConeOrbits[1]; 1741 for (int i =2;i<=size(listOfOrbitConeOrbits);i++){ 1742 OClist = OClist + listOfOrbitConeOrbits[i]; 1743 } 1744 cone mov = coneViaPoints(transpose(Q)); 1745 mov = canonicalizeCone(mov); 1746 list Sigma = GITfanParallelSymmetric(OClist, Q, mov, actionOnOrbitconeIndices); 1747 Sigma; 1613 1748 } 1614 1749
Note: See TracChangeset
for help on using the changeset viewer.