passagemath-gap 10.5.43__cp310-cp310-macosx_14_0_arm64.whl → 10.6.1rc1__cp310-cp310-macosx_14_0_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- gap/gap +0 -0
- {passagemath_gap-10.5.43.dist-info → passagemath_gap-10.6.1rc1.dist-info}/METADATA +5 -6
- {passagemath_gap-10.5.43.dist-info → passagemath_gap-10.6.1rc1.dist-info}/METADATA.bak +6 -7
- {passagemath_gap-10.5.43.dist-info → passagemath_gap-10.6.1rc1.dist-info}/RECORD +33 -33
- passagemath_gap.dylibs/libgap.9.dylib +0 -0
- sage/coding/codecan/autgroup_can_label.cpython-310-darwin.so +0 -0
- sage/coding/codecan/autgroup_can_label.pyx +34 -25
- sage/coding/codecan/codecan.cpython-310-darwin.so +0 -0
- sage/coding/codecan/codecan.pxd +2 -2
- sage/coding/codecan/codecan.pyx +25 -18
- sage/combinat/enumeration_mod_permgroup.cpython-310-darwin.so +0 -0
- sage/combinat/enumeration_mod_permgroup.pyx +3 -3
- sage/combinat/root_system/reflection_group_c.cpython-310-darwin.so +0 -0
- sage/combinat/root_system/reflection_group_complex.py +11 -12
- sage/combinat/root_system/reflection_group_element.cpython-310-darwin.so +0 -0
- sage/combinat/root_system/weyl_group.py +2 -2
- sage/groups/class_function.py +0 -1
- sage/groups/libgap_wrapper.cpython-310-darwin.so +0 -0
- sage/groups/libgap_wrapper.pyx +1 -1
- sage/groups/matrix_gps/binary_dihedral.py +1 -1
- sage/groups/matrix_gps/group_element_gap.cpython-310-darwin.so +0 -0
- sage/groups/perm_gps/partn_ref2/refinement_generic.cpython-310-darwin.so +0 -0
- sage/groups/perm_gps/permgroup.py +17 -48
- sage/groups/perm_gps/permgroup_element.cpython-310-darwin.so +0 -0
- sage/groups/perm_gps/permgroup_element.pyx +25 -9
- sage/interfaces/gap.py +12 -3
- sage/libs/gap/element.cpython-310-darwin.so +0 -0
- sage/libs/gap/libgap.cpython-310-darwin.so +0 -0
- sage/libs/gap/util.cpython-310-darwin.so +0 -0
- sage/matrix/matrix_gap.cpython-310-darwin.so +0 -0
- sage/rings/species.py +116 -60
- {passagemath_gap-10.5.43.dist-info → passagemath_gap-10.6.1rc1.dist-info}/WHEEL +0 -0
- {passagemath_gap-10.5.43.dist-info → passagemath_gap-10.6.1rc1.dist-info}/top_level.txt +0 -0
gap/gap
CHANGED
Binary file
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: passagemath-gap
|
3
|
-
Version: 10.
|
3
|
+
Version: 10.6.1rc1
|
4
4
|
Summary: passagemath: Computational Group Theory with GAP
|
5
5
|
Author-email: The Sage Developers <sage-support@googlegroups.com>
|
6
6
|
Maintainer: Matthias Köppe, passagemath contributors
|
@@ -19,19 +19,18 @@ Classifier: Intended Audience :: Science/Research
|
|
19
19
|
Classifier: Operating System :: POSIX
|
20
20
|
Classifier: Operating System :: MacOS :: MacOS X
|
21
21
|
Classifier: Programming Language :: Python :: 3 :: Only
|
22
|
-
Classifier: Programming Language :: Python :: 3.9
|
23
22
|
Classifier: Programming Language :: Python :: 3.10
|
24
23
|
Classifier: Programming Language :: Python :: 3.11
|
25
24
|
Classifier: Programming Language :: Python :: 3.12
|
26
25
|
Classifier: Programming Language :: Python :: 3.13
|
27
26
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
28
27
|
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
29
|
-
Requires-Python: <3.14,>=3.
|
28
|
+
Requires-Python: <3.14,>=3.10
|
30
29
|
Description-Content-Type: text/x-rst
|
31
30
|
Requires-Dist: cysignals!=1.12.0,>=1.11.2
|
32
31
|
Requires-Dist: memory_allocator
|
33
|
-
Requires-Dist: passagemath-environment
|
34
|
-
Requires-Dist: passagemath-categories
|
32
|
+
Requires-Dist: passagemath-environment==10.6.1rc1
|
33
|
+
Requires-Dist: passagemath-categories==10.6.1rc1
|
35
34
|
Provides-Extra: test
|
36
35
|
Requires-Dist: passagemath-repl; extra == "test"
|
37
36
|
|
@@ -76,7 +75,7 @@ passagemath attempts to support all major Linux distributions and recent version
|
|
76
75
|
macOS. Use on Windows currently requires the use of Windows Subsystem for Linux or
|
77
76
|
virtualization.
|
78
77
|
|
79
|
-
Complete sets of binary wheels are provided on PyPI for Python versions 3.
|
78
|
+
Complete sets of binary wheels are provided on PyPI for Python versions 3.10.x-3.13.x.
|
80
79
|
Python 3.13.x is also supported, but some third-party packages are still missing wheels,
|
81
80
|
so compilation from source is triggered for those.
|
82
81
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: passagemath-gap
|
3
|
-
Version: 10.
|
3
|
+
Version: 10.6.1rc1
|
4
4
|
Summary: passagemath: Computational Group Theory with GAP
|
5
5
|
Author-email: The Sage Developers <sage-support@googlegroups.com>
|
6
6
|
Maintainer: Matthias Köppe, passagemath contributors
|
@@ -19,20 +19,19 @@ Classifier: Intended Audience :: Science/Research
|
|
19
19
|
Classifier: Operating System :: POSIX
|
20
20
|
Classifier: Operating System :: MacOS :: MacOS X
|
21
21
|
Classifier: Programming Language :: Python :: 3 :: Only
|
22
|
-
Classifier: Programming Language :: Python :: 3.9
|
23
22
|
Classifier: Programming Language :: Python :: 3.10
|
24
23
|
Classifier: Programming Language :: Python :: 3.11
|
25
24
|
Classifier: Programming Language :: Python :: 3.12
|
26
25
|
Classifier: Programming Language :: Python :: 3.13
|
27
26
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
28
27
|
Classifier: Topic :: Scientific/Engineering :: Mathematics
|
29
|
-
Requires-Python: <3.14,>=3.
|
28
|
+
Requires-Python: <3.14,>=3.10
|
30
29
|
Description-Content-Type: text/x-rst
|
31
30
|
Requires-Dist: cysignals!=1.12.0,>=1.11.2
|
32
31
|
Requires-Dist: memory_allocator
|
33
|
-
Requires-Dist: passagemath-conf
|
34
|
-
Requires-Dist: passagemath-environment
|
35
|
-
Requires-Dist: passagemath-categories
|
32
|
+
Requires-Dist: passagemath-conf==10.6.1rc1
|
33
|
+
Requires-Dist: passagemath-environment==10.6.1rc1
|
34
|
+
Requires-Dist: passagemath-categories==10.6.1rc1
|
36
35
|
Provides-Extra: test
|
37
36
|
Requires-Dist: passagemath-repl; extra == "test"
|
38
37
|
|
@@ -77,7 +76,7 @@ passagemath attempts to support all major Linux distributions and recent version
|
|
77
76
|
macOS. Use on Windows currently requires the use of Windows Subsystem for Linux or
|
78
77
|
virtualization.
|
79
78
|
|
80
|
-
Complete sets of binary wheels are provided on PyPI for Python versions 3.
|
79
|
+
Complete sets of binary wheels are provided on PyPI for Python versions 3.10.x-3.13.x.
|
81
80
|
Python 3.13.x is also supported, but some third-party packages are still missing wheels,
|
82
81
|
so compilation from source is triggered for those.
|
83
82
|
|
@@ -1,11 +1,11 @@
|
|
1
1
|
passagemath_gap.dylibs/libreadline.8.2.dylib,sha256=gMjzPdDup0edmSYMOcb8CM5iODcwCzM9XROsVV_tJ_I,312608
|
2
|
-
passagemath_gap.dylibs/libgap.9.dylib,sha256
|
2
|
+
passagemath_gap.dylibs/libgap.9.dylib,sha256=-Tp0GHPIgvbchlCWAW6uWSqYobwNODAcEzS4RDiD7Ik,2475408
|
3
3
|
passagemath_gap.dylibs/libgmp.10.dylib,sha256=B7ReWYn6LgAnERoGBg2WlT0gFhJFVgBkW4i7UNz7Vg0,464688
|
4
4
|
gap/CITATION,sha256=MnPKDTe9tpRqVXgjpptKgFLPWoV7Ottj9MHEMJgvd8E,2106
|
5
5
|
gap/LICENSE,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
|
6
6
|
gap/INSTALL.md,sha256=6mu89qCZoDyakSrB6NS8Y9ch59Cnx22jQQWgOtQqIRM,26518
|
7
7
|
gap/README.md,sha256=uQAfvPpWvNmFGCO0p_fcJnjz8hU0KG0O3fgWM1ZSBZo,6555
|
8
|
-
gap/gap,sha256=
|
8
|
+
gap/gap,sha256=N_3LMMpBgyGpyjHo1xdCZfq-D2tyBqh5k3u8KxGEKvk,52032
|
9
9
|
gap/CONTRIBUTING.md,sha256=ETeQXP8shqpBa8kjFQ-P-PatuJ09OX3J4fEI9hbGTAk,9576
|
10
10
|
gap/COPYRIGHT,sha256=xS8Dkc5sFfgcrgVXoN6KtpNtDKLV4VAXnbcQEsbpwWw,2854
|
11
11
|
gap/sysinfo.gap,sha256=2u7oz67BRBHxRnEYvDYI-eZyt4fkZP03YMgDwC4YCHw,2581
|
@@ -10478,21 +10478,21 @@ gap/pkg/ctbllib/doc2/ctblcons18.png,sha256=8X6PO82PlIlmJryxn5ux_44UqVZz0djE5QrZQ
|
|
10478
10478
|
gap/pkg/ctbllib/doc2/ctocenex2.png,sha256=k6VZQ4yBdR4L-C6hY7fWAP3B2XMm4RSEnWhFx66WweU,1504
|
10479
10479
|
gap/pkg/ctbllib/doc2/chapInd_mj.html,sha256=dmd_hWTMRRBWQg2qDj3bTSsBzUv_gqg73HwtGFNnv0o,2613
|
10480
10480
|
gap/pkg/ctbllib/doc2/chooser.html,sha256=ZBwBn_4DujhjpNNtb5qCsU4zHcH6hiXQcDOnK2AIpnw,3886
|
10481
|
-
passagemath_gap-10.
|
10482
|
-
passagemath_gap-10.
|
10483
|
-
passagemath_gap-10.
|
10484
|
-
passagemath_gap-10.
|
10485
|
-
passagemath_gap-10.
|
10481
|
+
passagemath_gap-10.6.1rc1.dist-info/RECORD,,
|
10482
|
+
passagemath_gap-10.6.1rc1.dist-info/METADATA.bak,sha256=YNb1NI2ePeCev1mPQIHh1NPC8RKGgflrqzotcCDkbT0,5163
|
10483
|
+
passagemath_gap-10.6.1rc1.dist-info/WHEEL,sha256=BY2G-e9pCnwWPELNk7GCw-k-0y7AcCiRrhf_nAfhQVk,136
|
10484
|
+
passagemath_gap-10.6.1rc1.dist-info/top_level.txt,sha256=Kmzulf9WsphADFQuqgvdy5mvTLDj_V2zkFHU2s3UXos,6
|
10485
|
+
passagemath_gap-10.6.1rc1.dist-info/METADATA,sha256=y6_bPA6FDKUDZAWkBhu1ohVhRahFwO6bwilYVCKsjys,5120
|
10486
10486
|
sage/all__sagemath_gap.py,sha256=RMuy5dc4uE3eazyDuyWx8iiZnxlbpuU4Kn1S-_RgNgA,593
|
10487
|
-
sage/combinat/enumeration_mod_permgroup.pyx,sha256=
|
10488
|
-
sage/combinat/enumeration_mod_permgroup.cpython-310-darwin.so,sha256
|
10487
|
+
sage/combinat/enumeration_mod_permgroup.pyx,sha256=JfO8wrPfkjMsudy-7y8-ottLuxT0be0wPIjy3_YHU6I,9989
|
10488
|
+
sage/combinat/enumeration_mod_permgroup.cpython-310-darwin.so,sha256=NMq5ucJr4XhJmOxcw9B9suTudvCFUirlETb73Ncstww,135104
|
10489
10489
|
sage/combinat/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10490
10490
|
sage/combinat/enumeration_mod_permgroup.pxd,sha256=1MzkJhWyxuKGTb8Q_V0qr1Zlm8S8tuYbFqvXCQLfMug,587
|
10491
10491
|
sage/combinat/root_system/reflection_group_element.pyx,sha256=NVKjj24WPnEeUKD13q8w_ujw5lyL7oOodxwp5Q1JgVA,45463
|
10492
|
-
sage/combinat/root_system/reflection_group_c.cpython-310-darwin.so,sha256=
|
10493
|
-
sage/combinat/root_system/reflection_group_element.cpython-310-darwin.so,sha256=
|
10494
|
-
sage/combinat/root_system/weyl_group.py,sha256=
|
10495
|
-
sage/combinat/root_system/reflection_group_complex.py,sha256=
|
10492
|
+
sage/combinat/root_system/reflection_group_c.cpython-310-darwin.so,sha256=h3iVS5eBP83nDClEcfiPjwmpiSUZRAjIFe2JnjoBTGk,225568
|
10493
|
+
sage/combinat/root_system/reflection_group_element.cpython-310-darwin.so,sha256=BZ5YOX7PjD616MFFi6tmmZaYMN3pdIhZTEdkdgT1YvU,289152
|
10494
|
+
sage/combinat/root_system/weyl_group.py,sha256=BeX9e-3KmjlF-_7cVNeDOM3VyCXn9jYUJGV8CSjPRwA,46122
|
10495
|
+
sage/combinat/root_system/reflection_group_complex.py,sha256=lBgJQ_or2L0moL8PE_bTYBfd1zr725_eP1018PtAnvw,84327
|
10496
10496
|
sage/combinat/root_system/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10497
10497
|
sage/combinat/root_system/reflection_group_c.pyx,sha256=dgpfjw6tgw-ojmk3IvHHnrDqu1wVx52yfLkH-0XwCu0,21861
|
10498
10498
|
sage/combinat/root_system/reflection_group_element.pxd,sha256=1RVx6VLkhNGSC0iv_vWePsQXWeEqjjz8rQ4F-k0Mm8M,552
|
@@ -10503,9 +10503,9 @@ sage/ext_data/gap/sage.g,sha256=g38h92MCy3q3Wq6uTfQNzftx0pvKs7W5cbLrDQXStnw,4533
|
|
10503
10503
|
sage/ext_data/gap/joyner/hurwitz_crv_rr_sp.gap,sha256=7KiCCji_Z2nCxceABiCiZ2mTk9pH2Uv0msAYvV8vsAw,9286
|
10504
10504
|
sage/ext_data/gap/joyner/modular_crv_rr_sp.gap,sha256=WC_XUFN8Bh-rUin5BA_UlZDLtxR8qJRWAKnzSeSYz58,7030
|
10505
10505
|
sage/groups/libgap_mixin.py,sha256=xwgYFNYA1OuPGihXJeT0hPH1sjsT446KC_4yQZv-j-s,31759
|
10506
|
-
sage/groups/class_function.py,sha256
|
10507
|
-
sage/groups/libgap_wrapper.pyx,sha256=
|
10508
|
-
sage/groups/libgap_wrapper.cpython-310-darwin.so,sha256=
|
10506
|
+
sage/groups/class_function.py,sha256=NjISnnM2eQntPYpzspbzkPhg0uVoPm0rA7RmBPNFB5A,48599
|
10507
|
+
sage/groups/libgap_wrapper.pyx,sha256=rlSD90ziIzyJqgZyXarJdpT6zT7joHSTDm-hP4k7Vi8,23510
|
10508
|
+
sage/groups/libgap_wrapper.cpython-310-darwin.so,sha256=wzmfoRHTZ9maVetNMjaR7SpBLwsVQw6NSnA7UifOTQI,272112
|
10509
10509
|
sage/groups/libgap_morphism.py,sha256=aNIDzJUqYRQBAXfv3V0sOidbiicl0-4A6h_oxtoLU_w,27860
|
10510
10510
|
sage/groups/all__sagemath_gap.py,sha256=0jMNQaDJCB91-B5Vb42YjN2ZS0J92UMejcEq9B_ALuM,348
|
10511
10511
|
sage/groups/galois_group_perm.py,sha256=U8o3hNZYw1iVR2jPgOtjsre8T9VoUqXtLE7on-VmKFg,7668
|
@@ -10514,18 +10514,18 @@ sage/groups/libgap_wrapper.pxd,sha256=3GN4VL7SbZGZR4Lx_hyv_drcBH32XnO2VvWc2yqB3k
|
|
10514
10514
|
sage/groups/conjugacy_classes.py,sha256=IlA9emEBpGi8oremSwjeKUkSSreqUE-XiqlZHaWgxis,17014
|
10515
10515
|
sage/groups/perm_gps/symgp_conjugacy_class.py,sha256=zxgZ8ctHn0hWYyAYMMG_9T2EtmSWcNMj09xGViXpAMw,12272
|
10516
10516
|
sage/groups/perm_gps/permgroup_morphism.py,sha256=MOk3UQZyu9zuIbZI6cNx_9njP50Q6dWmXzFG2OHmU8k,11589
|
10517
|
-
sage/groups/perm_gps/permgroup.py,sha256=
|
10517
|
+
sage/groups/perm_gps/permgroup.py,sha256=qFujAsEGjkHpd51zMAh_LmMU0nWSsCm2dPipVV08SxA,197753
|
10518
10518
|
sage/groups/perm_gps/cubegroup.py,sha256=JhDtdlR1X5vMeNpeZ7JkUFjycA23mETDqIsPhdZXhY0,59382
|
10519
10519
|
sage/groups/perm_gps/constructor.py,sha256=DIPRBoKlEm_8V66EBaVydJknCWw83ejMwvZd2oBrUSw,9055
|
10520
10520
|
sage/groups/perm_gps/permutation_groups_catalog.py,sha256=nBJCF8Ci2a4IX7fw3gabqzpOJGdRZyO0I4A2WRjtEY8,1272
|
10521
10521
|
sage/groups/perm_gps/permgroup_named.py,sha256=u46E5qd97WjPB7pI_TAE7flElNX2cDho3Rz2sg_lsmY,119818
|
10522
10522
|
sage/groups/perm_gps/all.py,sha256=iDGHouhuDklSyispK95tIYUecqKrjPgjZeexTOJ_If0,1428
|
10523
10523
|
sage/groups/perm_gps/permgroup_element.pxd,sha256=vKhO951GtbTnqDTGEeOndLsvCni3KSx1QBRKInC-xAc,1347
|
10524
|
-
sage/groups/perm_gps/permgroup_element.pyx,sha256=
|
10525
|
-
sage/groups/perm_gps/permgroup_element.cpython-310-darwin.so,sha256=
|
10524
|
+
sage/groups/perm_gps/permgroup_element.pyx,sha256=Lf5qdlDjsfy_Jq9tlI2_L-5ZQEYVTsyekvg-3uYtxcY,70445
|
10525
|
+
sage/groups/perm_gps/permgroup_element.cpython-310-darwin.so,sha256=hajfWG8kQjBlnHez-pYfFdqWoA1hGc3xQIxlL_afhsk,418224
|
10526
10526
|
sage/groups/perm_gps/partn_ref/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10527
10527
|
sage/groups/perm_gps/partn_ref2/refinement_generic.pyx,sha256=NyOI48ggOkTSfNz56lUx3Z1eK65UZZRNXV9ku98u9fg,38135
|
10528
|
-
sage/groups/perm_gps/partn_ref2/refinement_generic.cpython-310-darwin.so,sha256=
|
10528
|
+
sage/groups/perm_gps/partn_ref2/refinement_generic.cpython-310-darwin.so,sha256=aUQ8l5drYL7jDx2bIaW1D-p7zEDN8A8O5IKpYdTlwHA,188720
|
10529
10529
|
sage/groups/perm_gps/partn_ref2/refinement_generic.h,sha256=38tsIbqXuLaEiAPSW-obee7Nx1ztC-dAchuPir1jHtI,1112
|
10530
10530
|
sage/groups/perm_gps/partn_ref2/all.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10531
10531
|
sage/groups/perm_gps/partn_ref2/refinement_generic.pxd,sha256=PBlntyHTRNvKW00ec728ay4w2Z0uAXskzrHqwbm7wC0,3836
|
@@ -10535,12 +10535,12 @@ sage/groups/abelian_gps/abelian_group_morphism.py,sha256=G3MNt9F7iOPbcd-yfHg6Dnv
|
|
10535
10535
|
sage/groups/abelian_gps/all__sagemath_gap.py,sha256=ouqkntfIYCrgSyLg4UODAVrKGj3mJRn17a6gsKaFNJM,201
|
10536
10536
|
sage/groups/matrix_gps/orthogonal_gap.py,sha256=gdu4dopyxM7Q6zdGI-sczmbz31pC96Dbu4WWr0OX8f0,4328
|
10537
10537
|
sage/groups/matrix_gps/unitary_gap.py,sha256=aIwWF1LmpX1PXL1LDMV-hLHtwUJrXFrkC1pfoZYZjOE,2296
|
10538
|
-
sage/groups/matrix_gps/binary_dihedral.py,sha256=
|
10538
|
+
sage/groups/matrix_gps/binary_dihedral.py,sha256=D_X_BZer4cwZebflHlMl8njPlhd-otuilPYjKNHMceI,3937
|
10539
10539
|
sage/groups/matrix_gps/isometries.py,sha256=1jm8St4iPIm_r8tYmoRtafclTF2cVOkAYrZoxohrrSE,15821
|
10540
10540
|
sage/groups/matrix_gps/finitely_generated_gap.py,sha256=KUP5YMIp_43DOLA9y--zaB0sGrKjHiwas7UvvnPDX30,39337
|
10541
10541
|
sage/groups/matrix_gps/linear_gap.py,sha256=voHn-cH6SHAhIzLFTmg7yDr1wjkVvCoGl8_8CIJculg,789
|
10542
10542
|
sage/groups/matrix_gps/named_group_gap.py,sha256=qHQY-xRmkt_gjLceQpn2GqRih4gl9VgAr5V442WaJvs,2154
|
10543
|
-
sage/groups/matrix_gps/group_element_gap.cpython-310-darwin.so,sha256=
|
10543
|
+
sage/groups/matrix_gps/group_element_gap.cpython-310-darwin.so,sha256=k2CUAG11mYxsOhzUzyVH7VEjQQPCAh4LzmDFDE_xppw,204944
|
10544
10544
|
sage/groups/matrix_gps/group_element_gap.pxd,sha256=LN2A5zqKkzMBfC8gu7bQ-JrVfuHvt_-CntE2m8mb4A8,220
|
10545
10545
|
sage/groups/matrix_gps/group_element_gap.pyx,sha256=l_1EdHz1xMaTmaB3pfBB5ai3SQC9S96-xOn0yztiE9E,13282
|
10546
10546
|
sage/groups/matrix_gps/heisenberg.py,sha256=QpHMsIuUbLvvExGn0OPxp-2nGFuKUBsVP4wAne8nBjg,8274
|
@@ -10558,34 +10558,34 @@ sage/libs/gap/all.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
|
10558
10558
|
sage/libs/gap/test.py,sha256=u9dmPL-NFNYcump22uL_I3goylGOw6rK0-Ctk9f1gb4,671
|
10559
10559
|
sage/libs/gap/operations.py,sha256=pjGCr4wukT0F3lIbBnmZ3XJO4ufIKeIslxWjDFgVWoc,3616
|
10560
10560
|
sage/libs/gap/context_managers.py,sha256=w6MOfJFgtijEDT77aJJ5bFfHV5wbPVN42BOW04KBL1A,3319
|
10561
|
-
sage/libs/gap/element.cpython-310-darwin.so,sha256=
|
10561
|
+
sage/libs/gap/element.cpython-310-darwin.so,sha256=2BzaN8rA1AZXfKR-93ofilvppBXkfTeRhgphB9yUMTA,465040
|
10562
10562
|
sage/libs/gap/sage.gaprc,sha256=thmhuOlUaHRTrCUWeaCT-VLTE2AKuN1_c5wETdjXBGc,1304
|
10563
10563
|
sage/libs/gap/element.pxd,sha256=4_-Te0nkerQk1MCI4qfeALfUWN1Jn1QbEpGQe2vrGn4,3297
|
10564
10564
|
sage/libs/gap/all_documented_functions.py,sha256=79ehQ66NrZFT3Oc1ZCYA4f-pxYorYV2YaZI0nTvz7Ss,612
|
10565
10565
|
sage/libs/gap/test_long.py,sha256=Y4874pVnQUR6GPD2IJHP68YKblWeO6m2ZvW11sPJA3w,1282
|
10566
10566
|
sage/libs/gap/gap_globals.py,sha256=klLCm09wJmEXnZ_V5pHKn7OOwxREIILcYmPeglHsKTw,1360
|
10567
|
-
sage/libs/gap/libgap.cpython-310-darwin.so,sha256=
|
10568
|
-
sage/libs/gap/util.cpython-310-darwin.so,sha256=
|
10567
|
+
sage/libs/gap/libgap.cpython-310-darwin.so,sha256=SoPbP2oVOEzM7qcQcLtzUzDxtUZpHgFkGuGOYUr1WK4,202000
|
10568
|
+
sage/libs/gap/util.cpython-310-darwin.so,sha256=SAEtJi1PaKvTvS0yzBsBRK4qsCpkmWZqpYVslJwmIEo,143504
|
10569
10569
|
sage/libs/gap/libgap.pyx,sha256=SWQqkcSSFvUkv5CcOIQTPTO6O9gUIhCxRCk2mEJqiAk,23664
|
10570
10570
|
sage/libs/gap/util.pyx,sha256=xDs-zKqFLr5UqafL29yS7yco1h5Q81geESFHSESdVj4,16009
|
10571
10571
|
sage/coding/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10572
|
-
sage/coding/codecan/codecan.cpython-310-darwin.so,sha256=
|
10573
|
-
sage/coding/codecan/codecan.pxd,sha256
|
10574
|
-
sage/coding/codecan/autgroup_can_label.cpython-310-darwin.so,sha256=
|
10572
|
+
sage/coding/codecan/codecan.cpython-310-darwin.so,sha256=rHzHHw5eY8vpCxqEVV0YVDRjFmzmKKEbbm4EEPSXsGc,262400
|
10573
|
+
sage/coding/codecan/codecan.pxd,sha256=YR5-u7RV9JRxOsG7pkPN8h42A9c6CaUdA5QG2qXQMnQ,2807
|
10574
|
+
sage/coding/codecan/autgroup_can_label.cpython-310-darwin.so,sha256=3EEkNFkCvYbQb2pLaOoOFqiRgjp0jsFDDSii8Eb5wMI,252840
|
10575
10575
|
sage/coding/codecan/all.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10576
|
-
sage/coding/codecan/autgroup_can_label.pyx,sha256=
|
10576
|
+
sage/coding/codecan/autgroup_can_label.pyx,sha256=Gf3C3hENQ6J5xMCWBtcBboFtc8u8RAg6ktXaGGK2LHg,26467
|
10577
10577
|
sage/coding/codecan/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10578
|
-
sage/coding/codecan/codecan.pyx,sha256=
|
10578
|
+
sage/coding/codecan/codecan.pyx,sha256=6kq55p_wgc_k3sKoAuPWq_YTj2gXHXhlYsnaW5hIyCc,45189
|
10579
10579
|
sage/rings/universal_cyclotomic_field.py,sha256=9SxDpQErP79YT7eaJwl-eQgeM15ZEPHy_JZtoMsmk0M,49761
|
10580
|
-
sage/rings/species.py,sha256
|
10580
|
+
sage/rings/species.py,sha256=oWdmsS-fd7INB_r183fbIysNhQJJYuu8UCVuvl43Ph4,97187
|
10581
10581
|
sage/rings/all__sagemath_gap.py,sha256=zp3YvAicr5KOBRkL4JowXChnJ4alNq2pq-DzejZ11DE,195
|
10582
10582
|
sage/geometry/ribbon_graph.py,sha256=RdiKR3d0-zwqDc3QWvbQ1ODIVgzRQ3nAJcggmf0o97k,48909
|
10583
10583
|
sage/geometry/all__sagemath_gap.py,sha256=REzYJFn-wm_XHNsj7VemcU2CAtiOrEwa5flNcs0zAR4,163
|
10584
10584
|
sage/matrix/matrix_gap.pxd,sha256=SjdGKj8fAWF2WojhiVbyRzl9uJQPLywixGrUO-ohUfQ,305
|
10585
|
-
sage/matrix/matrix_gap.cpython-310-darwin.so,sha256=
|
10585
|
+
sage/matrix/matrix_gap.cpython-310-darwin.so,sha256=TzIdARjAsHR4RWbcBGYNTnXgky6kXrpKwWhCEFNl0kQ,161392
|
10586
10586
|
sage/matrix/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10587
10587
|
sage/matrix/matrix_gap.pyx,sha256=gPOMGKhRezDGrxGdvxSm-jyqBXvdZ1WY2tYO3RU_4mE,13747
|
10588
10588
|
sage/interfaces/all__sagemath_gap.py,sha256=Tzpetos0ih-3KeCyjXrlRL8IHaMKehOTYLKYbpM_g8w,42
|
10589
10589
|
sage/interfaces/gap3.py,sha256=oumiD4-ntTNg3g4qP733rlp4ud-c5FXgrk_Pjtcqcik,32914
|
10590
|
-
sage/interfaces/gap.py,sha256=
|
10590
|
+
sage/interfaces/gap.py,sha256=41vr5oGme6KBdHSS5u3fLN_Nmd1rOs4bwRECPqRq50s,59989
|
10591
10591
|
sage/interfaces/gap_workspace.py,sha256=6325mTcx8RgDfHGHuUse-QwM1sSj8S9dFNMvwir7Z_U,4719
|
Binary file
|
Binary file
|
@@ -246,7 +246,7 @@ class LinearCodeAutGroupCanLabel:
|
|
246
246
|
z.sort()
|
247
247
|
z = [i for (p, i) in z]
|
248
248
|
|
249
|
-
normalization_factors = [
|
249
|
+
normalization_factors = [F.one()] * mat.ncols()
|
250
250
|
if algorithm_type == "permutational":
|
251
251
|
for c in col_list:
|
252
252
|
c.set_immutable()
|
@@ -258,20 +258,20 @@ class LinearCodeAutGroupCanLabel:
|
|
258
258
|
|
259
259
|
normalization = S(v=normalization_factors)
|
260
260
|
normalization_inverse = normalization ** (-1)
|
261
|
-
col_set = list({col_list[y] for y in nz
|
261
|
+
col_set = list({col_list[y] for y in nz})
|
262
262
|
col2pos = []
|
263
263
|
col2P = []
|
264
264
|
for c in col_set:
|
265
|
-
X = [(pos2P[y], y) for y in range(mat.ncols()) if col_list[y] == c
|
265
|
+
X = [(pos2P[y], y) for y in range(mat.ncols()) if col_list[y] == c]
|
266
266
|
X.sort()
|
267
|
-
col2pos.append([b for
|
268
|
-
col2P.append([a for
|
267
|
+
col2pos.append([b for _, b in X])
|
268
|
+
col2P.append([a for a, _ in X])
|
269
269
|
|
270
270
|
zipped = sorted(zip(col2P, col_set, col2pos))
|
271
271
|
|
272
|
-
col2P = [qty for
|
273
|
-
col_set = [c for
|
274
|
-
col2pos = [pos for
|
272
|
+
col2P = [qty for qty, c, pos in zipped]
|
273
|
+
col_set = [c for qty, c, pos in zipped]
|
274
|
+
col2pos = [pos for qty, c, pos in zipped]
|
275
275
|
P_refined = []
|
276
276
|
p = [0]
|
277
277
|
act_qty = col2P[0]
|
@@ -291,7 +291,9 @@ class LinearCodeAutGroupCanLabel:
|
|
291
291
|
# the dimension of the dual code
|
292
292
|
# in this case we work with the code itself.
|
293
293
|
pr = PartitionRefinementLinearCode(len(col_set),
|
294
|
-
|
294
|
+
matrix(col_set).transpose(),
|
295
|
+
P=P_refined,
|
296
|
+
algorithm_type=algorithm_type)
|
295
297
|
|
296
298
|
# this command allows you some advanced debugging
|
297
299
|
# it prints the backtrack tree -> must be activated when installing
|
@@ -299,8 +301,11 @@ class LinearCodeAutGroupCanLabel:
|
|
299
301
|
|
300
302
|
can_transp = pr.get_transporter()
|
301
303
|
can_col_set = pr.get_canonical_form().columns()
|
302
|
-
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
303
|
-
|
304
|
+
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
305
|
+
pr.get_autom_gens(),
|
306
|
+
normalization,
|
307
|
+
normalization_inverse, col2pos
|
308
|
+
)
|
304
309
|
self._PGammaL_autom_size = pr.get_autom_order_permutation()
|
305
310
|
self._PGammaL_autom_size *= pr.get_autom_order_inner_stabilizer()
|
306
311
|
self._full_autom_order = self._PGammaL_autom_size
|
@@ -333,28 +338,27 @@ class LinearCodeAutGroupCanLabel:
|
|
333
338
|
A.append(S_short(perm=_cyclic_shift(n, p)))
|
334
339
|
self._full_autom_order *= factorial(len(p))
|
335
340
|
self._PGammaL_autom_size = self._full_autom_order / (len(F) - 1)
|
336
|
-
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
337
|
-
normalization, normalization_inverse, col2pos)
|
341
|
+
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
342
|
+
A, normalization, normalization_inverse, col2pos)
|
338
343
|
else:
|
339
344
|
# use the dual code for the computations
|
340
345
|
# this might have zero columns or multiple columns, hence
|
341
346
|
# we call this algorithm again.
|
342
347
|
short_dual_code = LinearCode(matrix(col_set).transpose()).dual_code()
|
343
348
|
agcl = LinearCodeAutGroupCanLabel(short_dual_code,
|
344
|
-
|
349
|
+
P=P_refined,
|
350
|
+
algorithm_type=algorithm_type)
|
345
351
|
can_transp = agcl.get_transporter()
|
346
352
|
can_transp.invert_v()
|
347
353
|
can_col_set = agcl.get_canonical_form().parity_check_matrix().columns()
|
348
354
|
A = agcl.get_autom_gens()
|
349
355
|
for a in A:
|
350
356
|
a.invert_v()
|
351
|
-
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
352
|
-
normalization, normalization_inverse, col2pos)
|
357
|
+
self._PGammaL_autom_gens = self._compute_PGammaL_automs(
|
358
|
+
A, normalization, normalization_inverse, col2pos)
|
353
359
|
self._PGammaL_autom_size = agcl.get_PGammaL_order()
|
354
360
|
self._full_autom_order = agcl.get_autom_order()
|
355
361
|
|
356
|
-
count = 0
|
357
|
-
block_ptr = []
|
358
362
|
canonical_form = matrix(F, mat.ncols(), mat.nrows())
|
359
363
|
|
360
364
|
perm = [-1] * mat.ncols()
|
@@ -363,8 +367,8 @@ class LinearCodeAutGroupCanLabel:
|
|
363
367
|
for i in range(len(can_col_set)):
|
364
368
|
img = can_transp.get_perm()(i + 1)
|
365
369
|
for j in col2pos[img - 1]:
|
366
|
-
pos = P[
|
367
|
-
canonical_form[
|
370
|
+
pos = P[pos2P[j]].pop()
|
371
|
+
canonical_form[pos] = can_col_set[i]
|
368
372
|
mult[pos] = can_transp.get_v()[i]
|
369
373
|
perm[pos] = j + 1
|
370
374
|
|
@@ -376,14 +380,17 @@ class LinearCodeAutGroupCanLabel:
|
|
376
380
|
|
377
381
|
self._canonical_form = LinearCode(canonical_form.transpose())
|
378
382
|
self._transporter = S(perm=Permutation(perm), v=mult, autom=can_transp.get_autom()) * normalization
|
379
|
-
self._trivial_autom_gens, a = self._compute_trivial_automs(
|
380
|
-
|
383
|
+
self._trivial_autom_gens, a = self._compute_trivial_automs(
|
384
|
+
normalization,
|
385
|
+
normalization_inverse, z, [pos2P[x] for x in z],
|
386
|
+
zero_column_case=True)
|
381
387
|
self._full_autom_order *= a
|
382
388
|
|
383
389
|
for i in range(len(col2P)):
|
384
390
|
if len(col2P[i]) > 1:
|
385
391
|
A, a = self._compute_trivial_automs(normalization,
|
386
|
-
|
392
|
+
normalization_inverse,
|
393
|
+
col2pos[i], col2P[i])
|
387
394
|
self._full_autom_order *= a
|
388
395
|
self._trivial_autom_gens += A
|
389
396
|
|
@@ -461,11 +468,13 @@ class LinearCodeAutGroupCanLabel:
|
|
461
468
|
aut_order *= factorial(j - beg)
|
462
469
|
# we append a transposition of the first two elements
|
463
470
|
A.append(normalization_inverse *
|
464
|
-
|
471
|
+
S(perm=_cyclic_shift(n, col2pos[beg:beg + 2])) *
|
472
|
+
normalization)
|
465
473
|
if j - beg > 2:
|
466
474
|
# we append a cycle on all elements
|
467
475
|
A.append(normalization_inverse *
|
468
|
-
|
476
|
+
S(perm=_cyclic_shift(n, col2pos[beg:j])) *
|
477
|
+
normalization)
|
469
478
|
beg = j
|
470
479
|
return A, aut_order
|
471
480
|
|
Binary file
|
sage/coding/codecan/codecan.pxd
CHANGED
@@ -37,8 +37,8 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
37
37
|
cdef int _k, _q
|
38
38
|
cdef long *_hyp_refine_vals_scratch
|
39
39
|
cdef object _inner_group_stabilizer_order
|
40
|
-
cdef bitset_t *_hyp2points
|
41
|
-
cdef bitset_t *_points2hyp
|
40
|
+
cdef bitset_t *_hyp2points # hyperplanes to points
|
41
|
+
cdef bitset_t *_points2hyp # points to hyperplanes, transpose of _hyp2points
|
42
42
|
cdef PartitionStack *_hyp_part
|
43
43
|
cdef object _matrix, _root_matrix
|
44
44
|
cdef InnerGroup _inner_group
|
sage/coding/codecan/codecan.pyx
CHANGED
@@ -85,14 +85,14 @@ is returned by generators::
|
|
85
85
|
True
|
86
86
|
"""
|
87
87
|
|
88
|
-
|
88
|
+
# *****************************************************************************
|
89
89
|
# Copyright (C) 2012 Thomas Feulner <thomas.feulner@uni-bayreuth.de>
|
90
90
|
#
|
91
91
|
# Distributed under the terms of the GNU General Public License (GPL)
|
92
92
|
# as published by the Free Software Foundation; either version 2 of
|
93
93
|
# the License, or (at your option) any later version.
|
94
94
|
# https://www.gnu.org/licenses/
|
95
|
-
|
95
|
+
# *****************************************************************************
|
96
96
|
from itertools import repeat
|
97
97
|
from copy import copy
|
98
98
|
from cysignals.memory cimport check_allocarray, sig_free
|
@@ -378,8 +378,9 @@ cdef class InnerGroup:
|
|
378
378
|
6 -> 6 7 -> 7 8 -> 8 9 -> 9
|
379
379
|
"""
|
380
380
|
return r"Subgroup of (GL(k,q) times \GF{q}^n ) rtimes Aut(\GF{q}) " + \
|
381
|
-
"with rank = %s, frobenius power = %s and partition =%s" % (
|
382
|
-
|
381
|
+
"with rank = %s, frobenius power = %s and partition =%s" % (
|
382
|
+
self.rank,
|
383
|
+
self.frob_pow, OP_string(self.row_partition))
|
383
384
|
|
384
385
|
cdef void minimize_by_frobenius(self, object v, int *applied_frob, int *stab_pow) noexcept:
|
385
386
|
r"""
|
@@ -637,7 +638,8 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
637
638
|
else:
|
638
639
|
P = remaining_inner_group.column_blocks(self._best_candidate)
|
639
640
|
for p in P:
|
640
|
-
x = S(v=[
|
641
|
+
x = S(v=[F.primitive_element() if i in p else F.one()
|
642
|
+
for i in range(self._n)])
|
641
643
|
self._autom_group_generators.append(transp_inv * x * self._transporter)
|
642
644
|
self._inner_group_stabilizer_order = (len(F) - 1) ** len(P)
|
643
645
|
|
@@ -756,10 +758,9 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
756
758
|
This graph will be later used in the refinement procedures.
|
757
759
|
"""
|
758
760
|
cdef FFSS_projPoint iter = FFSS_projPoint(self._matrix)
|
759
|
-
cdef mp_bitcnt_t i,j
|
761
|
+
cdef mp_bitcnt_t i, j
|
760
762
|
|
761
763
|
ambient_space = (self._matrix.base_ring()) ** (self._n)
|
762
|
-
weights2size = [0] * (self.len() + 1)
|
763
764
|
W = [[] for _ in repeat(None, self.len() + 1)]
|
764
765
|
span = [ambient_space.zero_subspace()] * (self.len() + 1)
|
765
766
|
min_weight = self.len()
|
@@ -814,8 +815,9 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
814
815
|
cdef bint _minimization_allowed_on_col(self, int pos) noexcept:
|
815
816
|
r"""
|
816
817
|
Decide if we are allowed to perform the inner minimization on position
|
817
|
-
``pos`` which is supposed to be a singleton.
|
818
|
-
|
818
|
+
``pos`` which is supposed to be a singleton.
|
819
|
+
|
820
|
+
For linear codes over finite fields, we can always return ``True``.
|
819
821
|
"""
|
820
822
|
return True
|
821
823
|
|
@@ -834,8 +836,9 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
834
836
|
- ``True`` if and only if the actual node compares less or equal
|
835
837
|
to the candidate for the canonical form.
|
836
838
|
"""
|
837
|
-
self._matrix = self._inner_group.minimize_matrix_col(
|
838
|
-
|
839
|
+
self._matrix = self._inner_group.minimize_matrix_col(
|
840
|
+
self._matrix, pos,
|
841
|
+
self._fixed_minimized, inner_group_changed)
|
839
842
|
|
840
843
|
# finally compare the new column with the best candidate
|
841
844
|
if self._is_candidate_initialized:
|
@@ -912,7 +915,7 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
912
915
|
- ``False`` only if the image under this homomorphism of group actions
|
913
916
|
compares larger than the image of the candidate for the canonical form.
|
914
917
|
"""
|
915
|
-
cdef int i,
|
918
|
+
cdef int i, res, stab_pow, apply_pow
|
916
919
|
|
917
920
|
if self._inner_group.rank < 2:
|
918
921
|
return True
|
@@ -990,7 +993,9 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
990
993
|
cdef long * best_vals = self._point_refine_vals.get_row(self._nr_of_point_refine_calls)
|
991
994
|
self._nr_of_point_refine_calls += 1
|
992
995
|
cdef bint ret_val = self._one_refinement(best_vals, 0, self._n,
|
993
|
-
|
996
|
+
inner_stab_changed,
|
997
|
+
changed_partition,
|
998
|
+
"point_refine")
|
994
999
|
|
995
1000
|
if not changed_partition[0]:
|
996
1001
|
self._part.depth -= 1
|
@@ -1033,8 +1038,10 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
1033
1038
|
self._nr_of_hyp_refine_calls += 1
|
1034
1039
|
|
1035
1040
|
cdef tuple ret_val = PS_refinement(self._hyp_part,
|
1036
|
-
|
1037
|
-
|
1041
|
+
self._hyp_refine_vals_scratch,
|
1042
|
+
best_vals, 0, self._hyp_part.degree,
|
1043
|
+
&self._is_candidate_initialized,
|
1044
|
+
changed_partition)
|
1038
1045
|
|
1039
1046
|
if not changed_partition[0]:
|
1040
1047
|
self._hyp_part.depth -= 1
|
@@ -1095,11 +1102,11 @@ cdef class PartitionRefinementLinearCode(PartitionRefinement_generic):
|
|
1095
1102
|
else:
|
1096
1103
|
self._latex_debug_string += " & "
|
1097
1104
|
|
1098
|
-
permuted_matrix = self._matrix.matrix_from_columns([self._part.entries[i] for i in range(self._n)
|
1105
|
+
permuted_matrix = self._matrix.matrix_from_columns([self._part.entries[i] for i in range(self._n)])
|
1099
1106
|
|
1100
1107
|
# Now we will finally print the matrix.
|
1101
|
-
for i
|
1102
|
-
for j
|
1108
|
+
for i in range(self._k):
|
1109
|
+
for j in range(self._n - 1):
|
1103
1110
|
self._latex_debug_string += "$" + permuted_matrix[i, j]._latex_() + "$ & "
|
1104
1111
|
self._latex_debug_string += "$" + permuted_matrix[i, self._n - 1]._latex_() + "$ \\\\\n"
|
1105
1112
|
|
Binary file
|
@@ -3,14 +3,14 @@
|
|
3
3
|
r"""
|
4
4
|
Tools for enumeration modulo the action of a permutation group
|
5
5
|
"""
|
6
|
-
|
6
|
+
# ***************************************************************************
|
7
7
|
# Copyright (C) 2010-12 Nicolas Borie <nicolas.borie at math dot u-psud.fr>
|
8
8
|
#
|
9
9
|
# Distributed under the terms of the GNU General Public License (GPL)
|
10
10
|
#
|
11
11
|
# The full text of the GPL is available at:
|
12
|
-
#
|
13
|
-
|
12
|
+
# https://www.gnu.org/licenses/
|
13
|
+
# ***************************************************************************
|
14
14
|
|
15
15
|
from sage.groups.perm_gps.permgroup_element cimport PermutationGroupElement
|
16
16
|
|
Binary file
|
@@ -197,26 +197,25 @@ AUTHORS:
|
|
197
197
|
# https://www.gnu.org/licenses/
|
198
198
|
# ****************************************************************************
|
199
199
|
|
200
|
-
from sage.misc.cachefunc import cached_method, cached_function
|
201
|
-
from sage.misc.misc_c import prod
|
202
200
|
from sage.categories.category import Category
|
203
|
-
from sage.categories.permutation_groups import PermutationGroups
|
204
201
|
from sage.categories.complex_reflection_groups import ComplexReflectionGroups
|
205
202
|
from sage.categories.coxeter_groups import CoxeterGroups
|
203
|
+
from sage.categories.permutation_groups import PermutationGroups
|
204
|
+
from sage.combinat.root_system.cartan_matrix import CartanMatrix
|
206
205
|
from sage.combinat.root_system.reflection_group_element import ComplexReflectionGroupElement, _gap_return
|
207
|
-
from sage.sets.family import Family
|
208
|
-
from sage.structure.unique_representation import UniqueRepresentation
|
209
206
|
from sage.groups.perm_gps.permgroup import PermutationGroup_generic
|
210
|
-
from sage.
|
211
|
-
from sage.rings.integer_ring import ZZ
|
212
|
-
from sage.rings.rational_field import QQ
|
207
|
+
from sage.interfaces.gap3 import gap3
|
213
208
|
from sage.matrix.constructor import matrix
|
214
209
|
from sage.matrix.special import identity_matrix
|
215
|
-
from sage.
|
216
|
-
from sage.
|
217
|
-
from sage.modules.free_module_element import vector
|
218
|
-
from sage.combinat.root_system.cartan_matrix import CartanMatrix
|
210
|
+
from sage.misc.cachefunc import cached_method, cached_function
|
211
|
+
from sage.misc.misc_c import prod
|
219
212
|
from sage.misc.sage_eval import sage_eval
|
213
|
+
from sage.modules.free_module_element import vector
|
214
|
+
from sage.rings.integer_ring import ZZ
|
215
|
+
from sage.rings.rational_field import QQ
|
216
|
+
from sage.sets.family import Family
|
217
|
+
from sage.structure.element import Matrix
|
218
|
+
from sage.structure.unique_representation import UniqueRepresentation
|
220
219
|
|
221
220
|
|
222
221
|
class ComplexReflectionGroup(UniqueRepresentation, PermutationGroup_generic):
|
Binary file
|
@@ -927,7 +927,7 @@ class WeylGroupElement(MatrixGroupElement_gap):
|
|
927
927
|
|
928
928
|
return s is positive
|
929
929
|
|
930
|
-
def has_left_descent(self, i):
|
930
|
+
def has_left_descent(self, i) -> bool:
|
931
931
|
"""
|
932
932
|
Test if ``self`` has a left descent at position ``i``.
|
933
933
|
|
@@ -948,7 +948,7 @@ class WeylGroupElement(MatrixGroupElement_gap):
|
|
948
948
|
"""
|
949
949
|
return self.has_descent(i, side='left')
|
950
950
|
|
951
|
-
def has_right_descent(self, i):
|
951
|
+
def has_right_descent(self, i) -> bool:
|
952
952
|
"""
|
953
953
|
Test if ``self`` has a right descent at position ``i``.
|
954
954
|
|
sage/groups/class_function.py
CHANGED
@@ -68,7 +68,6 @@ def ClassFunction(group, values):
|
|
68
68
|
sage: chi = ClassFunction(G, values); chi
|
69
69
|
Character of Cyclic group of order 4 as a permutation group
|
70
70
|
"""
|
71
|
-
from sage.misc.superseded import deprecation
|
72
71
|
try:
|
73
72
|
return group.class_function(values)
|
74
73
|
except AttributeError:
|
Binary file
|
sage/groups/libgap_wrapper.pyx
CHANGED
@@ -83,7 +83,7 @@ class BinaryDihedralGroup(UniqueRepresentation, FinitelyGeneratedMatrixGroup_gap
|
|
83
83
|
|
84
84
|
MS = MatrixSpace(R, 2)
|
85
85
|
zero = R.zero()
|
86
|
-
gens = [
|
86
|
+
gens = [MS([zeta, zero, zero, ~zeta]), MS([zero, i, i, zero])]
|
87
87
|
|
88
88
|
from sage.libs.gap.libgap import libgap
|
89
89
|
gap_gens = [libgap(matrix_gen) for matrix_gen in gens]
|