regina 7.3.1.1__cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.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.

Potentially problematic release.


This version of regina might be problematic. Click here for more details.

Files changed (163) hide show
  1. regina/__init__.py +203 -0
  2. regina/engine.cpython-311-aarch64-linux-gnu.so +0 -0
  3. regina/plainCompleter.py +221 -0
  4. regina/pyCensus/__init__.py +14 -0
  5. regina/pyCensus/christy-knots-links.tdb +0 -0
  6. regina/pyCensus/closed-hyp-census-full.tdb +0 -0
  7. regina/pyCensus/closed-nor-census-11.tdb +0 -0
  8. regina/pyCensus/closed-or-census-11.tdb +0 -0
  9. regina/pyCensus/cusped-hyp-nor-census-9.tdb +0 -0
  10. regina/pyCensus/cusped-hyp-or-census-9.tdb +0 -0
  11. regina/sageRegina/__init__.py +2 -0
  12. regina/sageRegina/config.py +9 -0
  13. regina/sageRegina/test.py +132 -0
  14. regina/sageRegina/testsuite/CMakeLists.txt +60 -0
  15. regina/sageRegina/testsuite/O2_1.rga +15 -0
  16. regina/sageRegina/testsuite/O2_1.tri +28 -0
  17. regina/sageRegina/testsuite/README.txt +20 -0
  18. regina/sageRegina/testsuite/alltypes.out +1551 -0
  19. regina/sageRegina/testsuite/alltypes.test +88 -0
  20. regina/sageRegina/testsuite/angles.out +102 -0
  21. regina/sageRegina/testsuite/angles.test +72 -0
  22. regina/sageRegina/testsuite/basic_callback.out +124 -0
  23. regina/sageRegina/testsuite/basic_sub.out +7 -0
  24. regina/sageRegina/testsuite/bool.out +6 -0
  25. regina/sageRegina/testsuite/bool.test +64 -0
  26. regina/sageRegina/testsuite/bytes.out +17 -0
  27. regina/sageRegina/testsuite/bytes.test +78 -0
  28. regina/sageRegina/testsuite/callbacks.out +515 -0
  29. regina/sageRegina/testsuite/callbacks.test +281 -0
  30. regina/sageRegina/testsuite/census.out +120 -0
  31. regina/sageRegina/testsuite/census.test +157 -0
  32. regina/sageRegina/testsuite/clone.out +18 -0
  33. regina/sageRegina/testsuite/clone.test +101 -0
  34. regina/sageRegina/testsuite/constructors.out +14 -0
  35. regina/sageRegina/testsuite/constructors.test +97 -0
  36. regina/sageRegina/testsuite/cube.orb +87 -0
  37. regina/sageRegina/testsuite/discs.out +3 -0
  38. regina/sageRegina/testsuite/discs.test +40 -0
  39. regina/sageRegina/testsuite/docstrings.filter +19 -0
  40. regina/sageRegina/testsuite/docstrings.out +808 -0
  41. regina/sageRegina/testsuite/docstrings.out.v3 +808 -0
  42. regina/sageRegina/testsuite/docstrings.test +57 -0
  43. regina/sageRegina/testsuite/dodec.orb +309 -0
  44. regina/sageRegina/testsuite/embeddings.out +23 -0
  45. regina/sageRegina/testsuite/embeddings.test +89 -0
  46. regina/sageRegina/testsuite/enumerate.out +62 -0
  47. regina/sageRegina/testsuite/enumerate.test +82 -0
  48. regina/sageRegina/testsuite/equality.out +112 -0
  49. regina/sageRegina/testsuite/equality.test +310 -0
  50. regina/sageRegina/testsuite/euler.out +15 -0
  51. regina/sageRegina/testsuite/euler.test +95 -0
  52. regina/sageRegina/testsuite/exception.out +7 -0
  53. regina/sageRegina/testsuite/exception.test +100 -0
  54. regina/sageRegina/testsuite/facenumbering.out +546 -0
  55. regina/sageRegina/testsuite/facenumbering.test +74 -0
  56. regina/sageRegina/testsuite/faces.out +40 -0
  57. regina/sageRegina/testsuite/faces.test +72 -0
  58. regina/sageRegina/testsuite/file.out +1229 -0
  59. regina/sageRegina/testsuite/file.test +70 -0
  60. regina/sageRegina/testsuite/file1.rga +0 -0
  61. regina/sageRegina/testsuite/file2.rga +0 -0
  62. regina/sageRegina/testsuite/file3.rga +119 -0
  63. regina/sageRegina/testsuite/flype.out +37 -0
  64. regina/sageRegina/testsuite/flype.test +50 -0
  65. regina/sageRegina/testsuite/generic.out +116 -0
  66. regina/sageRegina/testsuite/generic.test +76 -0
  67. regina/sageRegina/testsuite/groups.out +70 -0
  68. regina/sageRegina/testsuite/groups.test +117 -0
  69. regina/sageRegina/testsuite/hypersurfaces.out +681 -0
  70. regina/sageRegina/testsuite/hypersurfaces.test +90 -0
  71. regina/sageRegina/testsuite/i18n-latin1.rga +8 -0
  72. regina/sageRegina/testsuite/i18n-utf8.rga +8 -0
  73. regina/sageRegina/testsuite/i18n.out +6 -0
  74. regina/sageRegina/testsuite/i18n.test +91 -0
  75. regina/sageRegina/testsuite/id.out +2 -0
  76. regina/sageRegina/testsuite/id.test +47 -0
  77. regina/sageRegina/testsuite/index.out +2 -0
  78. regina/sageRegina/testsuite/index.test +43 -0
  79. regina/sageRegina/testsuite/integer.out +74 -0
  80. regina/sageRegina/testsuite/integer.test +56 -0
  81. regina/sageRegina/testsuite/italian.orb +90 -0
  82. regina/sageRegina/testsuite/iterators.out +118 -0
  83. regina/sageRegina/testsuite/iterators.test +128 -0
  84. regina/sageRegina/testsuite/knotted-Y.orb +47 -0
  85. regina/sageRegina/testsuite/listener.out +43 -0
  86. regina/sageRegina/testsuite/listener.test +101 -0
  87. regina/sageRegina/testsuite/listview.out +416 -0
  88. regina/sageRegina/testsuite/listview.test +253 -0
  89. regina/sageRegina/testsuite/lookup.out +13 -0
  90. regina/sageRegina/testsuite/lookup.test +44 -0
  91. regina/sageRegina/testsuite/memory1.out +62 -0
  92. regina/sageRegina/testsuite/memory1.test +154 -0
  93. regina/sageRegina/testsuite/memory2.out +62 -0
  94. regina/sageRegina/testsuite/memory2.test +124 -0
  95. regina/sageRegina/testsuite/memory3.out +92 -0
  96. regina/sageRegina/testsuite/memory3.test +216 -0
  97. regina/sageRegina/testsuite/misc.out +7 -0
  98. regina/sageRegina/testsuite/misc.test +56 -0
  99. regina/sageRegina/testsuite/operators.out +129 -0
  100. regina/sageRegina/testsuite/operators.test +61 -0
  101. regina/sageRegina/testsuite/orb.out +441 -0
  102. regina/sageRegina/testsuite/orb.test +49 -0
  103. regina/sageRegina/testsuite/pdf.out +4 -0
  104. regina/sageRegina/testsuite/pdf.test +49 -0
  105. regina/sageRegina/testsuite/perm.out +55 -0
  106. regina/sageRegina/testsuite/perm.test +96 -0
  107. regina/sageRegina/testsuite/plantri.out +12 -0
  108. regina/sageRegina/testsuite/plantri.test +60 -0
  109. regina/sageRegina/testsuite/presentations.out +11 -0
  110. regina/sageRegina/testsuite/presentations.test +61 -0
  111. regina/sageRegina/testsuite/refs.out +51 -0
  112. regina/sageRegina/testsuite/refs.test +128 -0
  113. regina/sageRegina/testsuite/repr.out +951 -0
  114. regina/sageRegina/testsuite/repr.out.v3 +951 -0
  115. regina/sageRegina/testsuite/repr.test +548 -0
  116. regina/sageRegina/testsuite/safeheldtype_basic.out +17 -0
  117. regina/sageRegina/testsuite/safeheldtype_basic.test +113 -0
  118. regina/sageRegina/testsuite/safeheldtype_packet.out +58 -0
  119. regina/sageRegina/testsuite/safeheldtype_packet.test +181 -0
  120. regina/sageRegina/testsuite/sample.pdf +0 -0
  121. regina/sageRegina/testsuite/sets.out +7 -0
  122. regina/sageRegina/testsuite/sets.test +44 -0
  123. regina/sageRegina/testsuite/skeleton.out +308 -0
  124. regina/sageRegina/testsuite/skeleton.test +54 -0
  125. regina/sageRegina/testsuite/snappea.out +82 -0
  126. regina/sageRegina/testsuite/snappea.test +107 -0
  127. regina/sageRegina/testsuite/snapshot.out +15 -0
  128. regina/sageRegina/testsuite/snapshot.test +78 -0
  129. regina/sageRegina/testsuite/sort.out +57 -0
  130. regina/sageRegina/testsuite/sort.test +53 -0
  131. regina/sageRegina/testsuite/special.out +4 -0
  132. regina/sageRegina/testsuite/special.test +47 -0
  133. regina/sageRegina/testsuite/standardtri.out +12101 -0
  134. regina/sageRegina/testsuite/standardtri.test +455 -0
  135. regina/sageRegina/testsuite/surfaces.out +2133 -0
  136. regina/sageRegina/testsuite/surfaces.test +114 -0
  137. regina/sageRegina/testsuite/swapping.out +25 -0
  138. regina/sageRegina/testsuite/swapping.test +88 -0
  139. regina/sageRegina/testsuite/testall.in +176 -0
  140. regina/sageRegina/testsuite/testbasic.in +279 -0
  141. regina/sageRegina/testsuite/testcallback.in +150 -0
  142. regina/sageRegina/testsuite/testsub.in +150 -0
  143. regina/sageRegina/testsuite/theta_in_solid_torus.orb +65 -0
  144. regina/sageRegina/testsuite/tightencode.out +40 -0
  145. regina/sageRegina/testsuite/tightencode.test +108 -0
  146. regina/sageRegina/testsuite/treedecomp.out +135 -0
  147. regina/sageRegina/testsuite/treedecomp.test +66 -0
  148. regina/sageRegina/testsuite/treetraversal.out +52 -0
  149. regina/sageRegina/testsuite/treetraversal.test +190 -0
  150. regina/sageRegina/testsuite/trigeneral.out +1251 -0
  151. regina/sageRegina/testsuite/trigeneral.test +155 -0
  152. regina/sageRegina/testsuite/utf8.out +42 -0
  153. regina/sageRegina/testsuite/utf8.test +94 -0
  154. regina/sageRegina/version.py +5 -0
  155. regina/sageSetup.py +41 -0
  156. regina/test.py +6 -0
  157. regina-7.3.1.1.dist-info/METADATA +109 -0
  158. regina-7.3.1.1.dist-info/RECORD +163 -0
  159. regina-7.3.1.1.dist-info/WHEEL +6 -0
  160. regina-7.3.1.1.dist-info/top_level.txt +4 -0
  161. regina.libs/libbz2-738ca772.so.1.0.6 +0 -0
  162. regina.libs/libgmp-6683d5d4.so.10.2.0 +0 -0
  163. regina.libs/libgmpxx-7c3a5907.so.4.4.0 +0 -0
@@ -0,0 +1,90 @@
1
+ # Regina - A Normal Surface Theory Calculator
2
+ # Python Test Suite Component
3
+ #
4
+ # Copyright (c) 2007-2023, Ben Burton
5
+ # For further details contact Ben Burton (bab@debian.org).
6
+ #
7
+ # Provides various tests for normal surface enumeration.
8
+ #
9
+ # This file is a single component of Regina's python test suite. To run
10
+ # the python test suite, move to the main python directory in the source
11
+ # tree and run "make check".
12
+ #
13
+ # This program is free software; you can redistribute it and/or
14
+ # modify it under the terms of the GNU General Public License as
15
+ # published by the Free Software Foundation; either version 2 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # As an exception, when this program is distributed through (i) the
19
+ # App Store by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or
20
+ # (iii) Google Play by Google Inc., then that store may impose any
21
+ # digital rights management, device limits and/or redistribution
22
+ # restrictions that are required by its terms of service.
23
+ #
24
+ # This program is distributed in the hope that it will be useful, but
25
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27
+ # General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public
30
+ # License along with this program; if not, write to the Free
31
+ # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
32
+ # MA 02110-1301, USA.
33
+
34
+ def dumpSurfaces(name, tri, triName, coords = regina.HS_STANDARD, which = regina.HS_LIST_DEFAULT, alg = regina.HS_ALG_DEFAULT):
35
+ try:
36
+ slist = regina.NormalHypersurfaces(tri, coords, which)
37
+ except:
38
+ print("-------------------------------")
39
+ print(name)
40
+ print('ENUMERATION FAILED')
41
+ print("-------------------------------")
42
+ print()
43
+ return
44
+
45
+ print("-------------------------------")
46
+ print(triName)
47
+ print(name)
48
+ print("-------------------------------")
49
+ print()
50
+
51
+ # Dump the hypersurfaces in sort order, since we don't really mind if the
52
+ # ordering changes between releases.
53
+ surfaces = slist.detail().split('\n')
54
+ surfaces.sort()
55
+ # Let the text headers appear up top.
56
+ surfaces.reverse()
57
+ for s in surfaces:
58
+ print(s)
59
+
60
+ # Nothing else to say.
61
+ print()
62
+
63
+ def surfaceStats(tri, triName):
64
+ dumpSurfaces('Vertex hypersurfaces (std)',
65
+ tri, triName, regina.HS_STANDARD, regina.HS_VERTEX)
66
+ dumpSurfaces('Vertex hypersurfaces (prism)',
67
+ tri, triName, regina.HS_PRISM, regina.HS_VERTEX)
68
+ dumpSurfaces('Fundamental surfaces (std, primal)',
69
+ tri, triName, regina.HS_STANDARD, regina.HS_FUNDAMENTAL,
70
+ regina.HS_HILBERT_PRIMAL)
71
+ dumpSurfaces('Fundamental surfaces (std, dual)',
72
+ tri, triName, regina.HS_STANDARD, regina.HS_FUNDAMENTAL,
73
+ regina.HS_HILBERT_DUAL)
74
+ dumpSurfaces('Fundamental surfaces (prism, primal)',
75
+ tri, triName, regina.HS_PRISM, regina.HS_FUNDAMENTAL,
76
+ regina.HS_HILBERT_PRIMAL)
77
+ dumpSurfaces('Fundamental surfaces (prism, dual)',
78
+ tri, triName, regina.HS_PRISM, regina.HS_FUNDAMENTAL, regina.HS_HILBERT_DUAL)
79
+
80
+ t = regina.Triangulation4()
81
+ surfaceStats(t, 'Empty triangulation')
82
+
83
+ surfaceStats(regina.Example4.fourSphere(), '4-sphere')
84
+ # surfaceStats(regina.Example4.simplicialFourSphere(), 'Simplicial 4-sphere')
85
+ surfaceStats(regina.Example4.rp4(), 'Real projective 4-space')
86
+ surfaceStats(regina.Example4.s3xs1(), 'S3 x S1')
87
+ surfaceStats(regina.Example4.s3xs1Twisted(), 'S3 x~ S1')
88
+ surfaceStats(regina.Example4.cappellShaneson(), 'Cappell-Shaneson knot complement')
89
+ # L(8,3) x S1:
90
+ surfaceStats(regina.Triangulation4('kLLLzQMQQccefhihhgihijjijjKb9aGbKbebvbPadbaaebmb9aGasasamb'), 'L(8,3) x S1')
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0"?>
2
+ <reginadata engine="4.4">
3
+ <packet label="�mit �zer"
4
+ type="Text" typeid="2"
5
+ parent="">
6
+ <text>3��</text>
7
+ </packet> <!-- �mit �zer (Text) -->
8
+ </reginadata>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0"?>
2
+ <reginadata engine="4.5">
3
+ <packet label="Ümit Özer"
4
+ type="Text" typeid="2"
5
+ parent="">
6
+ <text>3½°</text>
7
+ </packet> <!-- Ümit Özer (Text) -->
8
+ </reginadata>
@@ -0,0 +1,6 @@
1
+ Ümit Özer
2
+ 3½°
3
+ Ümit Özer
4
+ 3½°
5
+ O2₁
6
+ O2₁
@@ -0,0 +1,91 @@
1
+ # Regina - A Normal Surface Theory Calculator
2
+ # Python Test Suite Component
3
+ #
4
+ # Copyright (c) 2007-2023, Ben Burton
5
+ # For further details contact Ben Burton (bab@debian.org).
6
+ #
7
+ # Tests for UTF-8 character encodings when loading and importing files
8
+ #
9
+ # This file is a single component of Regina's python test suite. To run
10
+ # the python test suite, move to the main python directory in the source
11
+ # tree and run "make check".
12
+ #
13
+ # This program is free software; you can redistribute it and/or
14
+ # modify it under the terms of the GNU General Public License as
15
+ # published by the Free Software Foundation; either version 2 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # As an exception, when this program is distributed through (i) the
19
+ # App Store by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or
20
+ # (iii) Google Play by Google Inc., then that store may impose any
21
+ # digital rights management, device limits and/or redistribution
22
+ # restrictions that are required by its terms of service.
23
+ #
24
+ # This program is distributed in the hope that it will be useful, but
25
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27
+ # General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public
30
+ # License along with this program; if not, write to the Free
31
+ # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
32
+ # MA 02110-1301, USA.
33
+
34
+ # Fetch the python/testsuite path in the source tree, since we will need
35
+ # to access external files.
36
+ import sys
37
+ if (len(sys.argv) > 1):
38
+ testpath = sys.argv[1]
39
+ else:
40
+ testpath = '.'
41
+
42
+ # Make sure we get the transition between LATIN1 and UTF-8 regimes correct.
43
+ oldVersions = [ '0', '01', '1', '2', '3', '4',
44
+ '0.0', '0.1', '0.4', '0.5', '0.9', '0.10',
45
+ '1.0', '1.1', '1.4', '1.5', '1.9', '1.10',
46
+ '2.0', '2.1', '2.4', '2.5', '2.9', '2.10',
47
+ '3.0', '3.1', '3.4', '3.5', '3.9', '3.10',
48
+ '4.0', '4.01', '4.1', '4.2', '4.3', '4.4', '4.4.1', '4.4.9' ]
49
+ newVersions = [ '', '5', '6', '7', '8', '9', '10', '20', '30', '40', '50', '90',
50
+ '4.5', '4.6', '4.9', '4.10', '4.20', '4.30', '4.40', '4.50', '4.90',
51
+ '5.0', '5.1', '5.4', '5.5', '5.9', '9.1', '9.9', '10.1', '10.9',
52
+ '40.1', '40.9', '50.1', '50.9' ]
53
+ suffixes = [ '', 'a', 'alpha', '.', '.0', '.01', '.0.1', '.1',
54
+ '+a', '-a', '-0', '-1', '-9', '-10' ]
55
+
56
+ for v in oldVersions:
57
+ for s in suffixes:
58
+ if regina.versionUsesUTF8(v + s):
59
+ print('ERROR: Version ' + v + s + ' claims to use UTF-8.')
60
+
61
+ for v in newVersions:
62
+ for s in suffixes:
63
+ if not regina.versionUsesUTF8(v + s):
64
+ print('ERROR: Version ' + v + s + ' does not claim to use UTF-8.')
65
+
66
+ # Load a file created by an old version of regina. This file stores it
67
+ # strings as LATIN1, which should be converted to UTF-8 on import.
68
+ i18nOld = regina.open(testpath + '/i18n-latin1.rga')
69
+ if i18nOld != None:
70
+ print(i18nOld.label())
71
+ print(i18nOld.text())
72
+
73
+ # Load a version of the same file created by a newer version of Regina,
74
+ # which stores strings directly in UTF-8.
75
+ i18nNew = regina.open(testpath + '/i18n-utf8.rga')
76
+ if i18nNew != None:
77
+ print(i18nNew.label())
78
+ print(i18nNew.text())
79
+
80
+ # Import a triangulation from SnapPea that uses a subscript character in
81
+ # the triangulation name.
82
+ subscriptImport = SnapPeaTriangulation(testpath + '/O2_1.tri')
83
+ if subscriptImport != None:
84
+ print(subscriptImport.name())
85
+
86
+ # Load a Regina data file with a pre-saved version of this same SnapPea
87
+ # triangulation.
88
+ subscriptLoad = regina.open(testpath + '/O2_1.rga')
89
+ if subscriptLoad != None:
90
+ print(subscriptLoad.firstChild().label())
91
+
@@ -0,0 +1,2 @@
1
+ True False False
2
+ True False False
@@ -0,0 +1,47 @@
1
+ # Regina - A Normal Surface Theory Calculator
2
+ # Python Test Suite Component
3
+ #
4
+ # Copyright (c) 2007-2023, Ben Burton
5
+ # For further details contact Ben Burton (bab@debian.org).
6
+ #
7
+ # Provides tests for variables that should be the same object in Python.
8
+ #
9
+ # This file is a single component of Regina's python test suite. To run
10
+ # the python test suite, move to the main python directory in the source
11
+ # tree and run "make check".
12
+ #
13
+ # This program is free software; you can redistribute it and/or
14
+ # modify it under the terms of the GNU General Public License as
15
+ # published by the Free Software Foundation; either version 2 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # As an exception, when this program is distributed through (i) the
19
+ # App Store by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or
20
+ # (iii) Google Play by Google Inc., then that store may impose any
21
+ # digital rights management, device limits and/or redistribution
22
+ # restrictions that are required by its terms of service.
23
+ #
24
+ # This program is distributed in the hope that it will be useful, but
25
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27
+ # General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public
30
+ # License along with this program; if not, write to the Free
31
+ # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
32
+ # MA 02110-1301, USA.
33
+
34
+ a = Integer.zero
35
+ b = Integer.zero
36
+ c = Integer(0)
37
+ d = Integer(0)
38
+
39
+ print(a is b, c is d, a is c)
40
+
41
+ p = Rational.one
42
+ q = Rational.one
43
+ r = LargeInteger(1)
44
+ s = LargeInteger(1)
45
+
46
+ print(p is q, r is s, p is r)
47
+
@@ -0,0 +1,2 @@
1
+ Edge 3, internal, degree 5: 0 (12), 1 (32), 2 (30), 3 (01), 4 (12)
2
+ 3
@@ -0,0 +1,43 @@
1
+ # Regina - A Normal Surface Theory Calculator
2
+ # Python Test Suite Component
3
+ #
4
+ # Copyright (c) 2019, Matthias Goerner
5
+ # For further details contact Ben Burton (bab@debian.org).
6
+ #
7
+ # Provides tests for recognising the special __index__ method (PEP 357).
8
+ #
9
+ # This file is a single component of Regina's python test suite. To run
10
+ # the python test suite, move to the main python directory in the source
11
+ # tree and run "make check".
12
+ #
13
+ # This program is free software; you can redistribute it and/or
14
+ # modify it under the terms of the GNU General Public License as
15
+ # published by the Free Software Foundation; either version 2 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # As an exception, when this program is distributed through (i) the
19
+ # App Store by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or
20
+ # (iii) Google Play by Google Inc., then that store may impose any
21
+ # digital rights management, device limits and/or redistribution
22
+ # restrictions that are required by its terms of service.
23
+ #
24
+ # This program is distributed in the hope that it will be useful, but
25
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27
+ # General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public
30
+ # License along with this program; if not, write to the Free
31
+ # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
32
+ # MA 02110-1301, USA.
33
+
34
+ class C:
35
+ def __index__(self):
36
+ return 3
37
+
38
+ c = C()
39
+ t = Example3.poincare()
40
+ print(t.edge(c))
41
+
42
+ n = regina.Integer(c)
43
+ print(n)
@@ -0,0 +1,74 @@
1
+ 1
2
+ -1
3
+ 100
4
+ -100
5
+ 10000
6
+ -10000
7
+ 1000000
8
+ -1000000
9
+ 100000000
10
+ -100000000
11
+ 10000000000
12
+ -10000000000
13
+ 1000000000000
14
+ -1000000000000
15
+ 100000000000000
16
+ -100000000000000
17
+ 10000000000000000
18
+ -10000000000000000
19
+ 1000000000000000000
20
+ -1000000000000000000
21
+ 100000000000000000000
22
+ -100000000000000000000
23
+ 10000000000000000000000
24
+ -10000000000000000000000
25
+ 1000000000000000000000000
26
+ -1000000000000000000000000
27
+ 100000000000000000000000000
28
+ -100000000000000000000000000
29
+ 10000000000000000000000000000
30
+ -10000000000000000000000000000
31
+ 3141592
32
+ 1234567
33
+ 1
34
+ -1
35
+ 100
36
+ -100
37
+ 10000
38
+ -10000
39
+ 1000000
40
+ -1000000
41
+ 100000000
42
+ -100000000
43
+ 10000000000
44
+ -10000000000
45
+ 1000000000000
46
+ -1000000000000
47
+ 100000000000000
48
+ -100000000000000
49
+ 10000000000000000
50
+ -10000000000000000
51
+ 1000000000000000000
52
+ -1000000000000000000
53
+ 100000000000000000000
54
+ -100000000000000000000
55
+ 10000000000000000000000
56
+ -10000000000000000000000
57
+ 1000000000000000000000000
58
+ -1000000000000000000000000
59
+ 100000000000000000000000000
60
+ -100000000000000000000000000
61
+ 10000000000000000000000000000
62
+ -10000000000000000000000000000
63
+ 3141592
64
+ 1234567
65
+ 123
66
+ <class 'int'> 123
67
+ -123456789123456789123456789123456789123456789123456789
68
+ <class 'int'> -123456789123456789123456789123456789123456789123456789
69
+ 123
70
+ <class 'int'> 123
71
+ -123456789123456789123456789123456789123456789123456789
72
+ <class 'int'> -123456789123456789123456789123456789123456789123456789
73
+ inf
74
+ Could not convert
@@ -0,0 +1,56 @@
1
+ # Regina - A Normal Surface Theory Calculator
2
+ # Python Test Suite Component
3
+ #
4
+ # Copyright (c) 2019, Matthias Goerner
5
+ # For further details contact Ben Burton (bab@debian.org).
6
+ #
7
+ # Provides tests for working with the python long integer type.
8
+ #
9
+ # This file is a single component of Regina's python test suite. To run
10
+ # the python test suite, move to the main python directory in the source
11
+ # tree and run "make check".
12
+ #
13
+ # This program is free software; you can redistribute it and/or
14
+ # modify it under the terms of the GNU General Public License as
15
+ # published by the Free Software Foundation; either version 2 of the
16
+ # License, or (at your option) any later version.
17
+ #
18
+ # As an exception, when this program is distributed through (i) the
19
+ # App Store by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or
20
+ # (iii) Google Play by Google Inc., then that store may impose any
21
+ # digital rights management, device limits and/or redistribution
22
+ # restrictions that are required by its terms of service.
23
+ #
24
+ # This program is distributed in the hope that it will be useful, but
25
+ # WITHOUT ANY WARRANTY; without even the implied warranty of
26
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
27
+ # General Public License for more details.
28
+ #
29
+ # You should have received a copy of the GNU General Public
30
+ # License along with this program; if not, write to the Free
31
+ # Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
32
+ # MA 02110-1301, USA.
33
+
34
+ for IntegerType in [Integer, LargeInteger]:
35
+
36
+ for i in range(0,30,2):
37
+ print(IntegerType(10**i))
38
+ print(IntegerType(-(10**i)))
39
+
40
+ print(IntegerType('3141592'))
41
+ print(IntegerType(1234567.89))
42
+
43
+ x = IntegerType(123)
44
+ y = IntegerType(-123456789123456789123456789123456789123456789123456789)
45
+
46
+ for IntegerType in [Integer, LargeInteger]:
47
+ for i in [ x, y ]:
48
+ print(i)
49
+ z = i.pythonValue()
50
+ print(type(z), z)
51
+
52
+ try:
53
+ print(LargeInteger.infinity)
54
+ print(LargeInteger.infinity.pythonValue())
55
+ except:
56
+ print('Could not convert')
@@ -0,0 +1,90 @@
1
+ % orb
2
+ italian
3
+ SolutionType geometric_solution
4
+ vertices_known
5
+
6
+ 1 0 1.000 1 1 3vu 3xu 2uw 1wu 3uw 3xv 2vw 1wv 3xw 2xw 1wx 3vw
7
+ 2 0 1.000 2 1 2vu 1xv 2ux 1vu 2xv 1ux
8
+
9
+ 1 -0.7962776727648548 0.6563031871196925 0.6563031871196925 0.5538708696492985 0.5538708696492985 0.4933266815472988 0.4933266815472988 0.5538708696492985 0.5538708696492985 0.4933266815472988 0.4933266815472988 0.5538708696492985 0.4933266815472988 0.4933266815472988 0.5538708696492985
10
+ 2 -2.8959419028600042 0.0000000000000088 0.6563031871196925 1.0471975511965974 1.0471975511965974 1.0471975511965972 1.0471975511965974 1.0471975511965974 1.0471975511965972
11
+
12
+ 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
13
+ 2 -1 0 0 0 -3 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 4 0 0 0 1 0 0 0 3 0 0 0 0 0 0 0 -1 0 0 0 -1 0 0 0 -4 0 0 0
14
+
15
+ 26
16
+ 0 47 47
17
+ 1 47 205
18
+ 2 142 205
19
+ 3 142 47
20
+ 4 265 47
21
+ 5 265 205
22
+ 6 103 65
23
+ 7 306 65
24
+ 8 306 158
25
+ 9 219 158
26
+ 10 189 85
27
+ 11 85 84
28
+ 12 85 157
29
+ 13 178 157
30
+ 14 223 84
31
+ 15 283 84
32
+ 16 283 131
33
+ 17 242 131
34
+ 18 242 104
35
+ 19 317 104
36
+ 20 317 182
37
+ 21 120 182
38
+ 22 120 101
39
+ 23 161 100
40
+ 24 161 134
41
+ 25 103 134
42
+
43
+ 27
44
+ 0 0 1 1
45
+ 1 1 2 1
46
+ 2 2 3 1
47
+ 3 3 4 1
48
+ 4 4 5 1
49
+ 5 5 2 1
50
+ 6 3 0 1
51
+ 7 6 7 1
52
+ 8 7 8 1
53
+ 9 8 9 1
54
+ 10 9 10 1
55
+ 11 10 11 1
56
+ 12 11 12 1
57
+ 13 12 13 1
58
+ 14 13 14 1
59
+ 15 14 15 1
60
+ 16 15 16 1
61
+ 17 16 17 1
62
+ 18 17 18 1
63
+ 19 18 19 1
64
+ 20 19 20 1
65
+ 21 20 21 1
66
+ 22 21 22 1
67
+ 23 22 23 1
68
+ 24 23 24 1
69
+ 25 24 25 1
70
+ 26 25 6 1
71
+
72
+ 18
73
+ 0 202 117 14 10 0.541187 0.554886
74
+ 1 306 104 8 19 0.419355 0.853333
75
+ 2 265 158 9 4 0.471264 0.702532
76
+ 3 265 104 4 19 0.360759 0.306667
77
+ 4 265 182 21 4 0.263959 0.85443
78
+ 5 265 65 4 7 0.113924 0.79803
79
+ 6 120 134 25 22 0.706897 0.592593
80
+ 7 103 84 26 11 0.722129 0.826923
81
+ 8 120 157 13 22 0.376344 0.308642
82
+ 9 142 65 2 7 0.886076 0.192118
83
+ 10 142 84 2 11 0.762354 0.451923
84
+ 11 142 157 13 2 0.612903 0.303797
85
+ 12 142 182 21 2 0.888325 0.14557
86
+ 13 142 100 2 23 0.661624 0.536585
87
+ 14 142 134 25 2 0.327586 0.449367
88
+ 15 265 131 17 4 0.439024 0.531646
89
+ 16 265 84 4 15 0.234177 0.7
90
+ 17 283 104 16 19 0.425532 0.546667
@@ -0,0 +1,118 @@
1
+ a.children():
2
+ aa
3
+ ab
4
+ a.subtree():
5
+ a
6
+ aa
7
+ aaa
8
+ aab
9
+ ab
10
+ aba
11
+ abb
12
+ a.descendants():
13
+ aa
14
+ aaa
15
+ aab
16
+ ab
17
+ aba
18
+ abb
19
+ a as iterable:
20
+ a
21
+ aa
22
+ aaa
23
+ aab
24
+ ab
25
+ aba
26
+ abb
27
+ Angle structure iteration:
28
+ 1 0 0 ; 1 0 0
29
+ 0 0 1 ; 0 1 0
30
+ 0 1 0 ; 0 0 1
31
+ 0 1/2 1/2 ; 1 0 0
32
+ 1 0 0 ; 0 1/2 1/2
33
+ Normal surface iteration:
34
+ inf inf inf inf ; 0 2 0 || inf inf inf inf ; 1 0 0
35
+ inf inf inf inf ; 0 0 2 || inf inf inf inf ; 1 0 0
36
+ inf inf inf inf ; 1 0 0 || inf inf inf inf ; 0 2 0
37
+ inf inf inf inf ; 1 0 0 || inf inf inf inf ; 0 0 2
38
+ ( inf inf inf inf 0 2 0 inf inf inf inf 1 0 0 )
39
+ ( inf inf inf inf 0 0 2 inf inf inf inf 1 0 0 )
40
+ ( inf inf inf inf 1 0 0 inf inf inf inf 0 2 0 )
41
+ ( inf inf inf inf 1 0 0 inf inf inf inf 0 0 2 )
42
+ Normal disc iteration:
43
+ 0:1 #0
44
+ 0:3 #0
45
+ 0:5 #0
46
+ 1:2 #0
47
+ 1:3 #0
48
+ 1:4 #0
49
+ 2:0 #0
50
+ 2:2 #0
51
+ 2:5 #0
52
+ 3:1 #0
53
+ 3:3 #0
54
+ 3:5 #0
55
+ 4:0 #0
56
+ 4:1 #0
57
+ 4:4 #0
58
+ Normal hypersurface iteration:
59
+ 0 0 0 0 0 ; 0 0 0 0 0 0 0 1 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 0 0 1 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 0 0 1 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 0 0 1 0 0
60
+ 0 0 0 0 0 ; 0 0 0 0 0 1 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 1 0 0 0 0 || 0 0 0 0 0 ; 0 1 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 1 0 0 0 0 0 0 0 0
61
+ 0 0 0 0 0 ; 0 0 0 0 1 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 1 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 1 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 1 0 0 0 0 0 0 0
62
+ 0 0 0 0 0 ; 0 0 1 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 1 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 1 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 1 0 0 0 0 0
63
+ 0 0 0 0 0 ; 0 1 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 1 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 1 0 0 0 0 || 0 0 0 0 0 ; 0 0 0 0 0 1 0 0 0 0
64
+ 0 0 0 0 0 ; 1 0 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 1 0 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 1 0 0 0 0 0 0 0 0 0 || 0 0 0 0 0 ; 1 0 0 0 0 0 0 0 0 0
65
+ 0 0 0 0 1 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 0 0 1 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 0 0 1 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 0 0 1 ; 0 0 0 0 0 0 0 0 0 0
66
+ 0 0 0 1 0 ; 0 0 0 0 0 0 0 0 1 0 || 0 0 0 1 0 ; 0 0 0 0 0 0 0 0 1 0 || 0 0 1 0 0 ; 0 0 0 0 0 0 0 0 0 1 || 0 0 1 0 0 ; 0 0 0 0 0 0 0 0 0 1
67
+ 0 0 1 0 0 ; 0 0 0 0 0 0 0 0 0 1 || 0 0 1 0 0 ; 0 0 0 0 0 0 0 0 0 1 || 0 0 0 1 0 ; 0 0 0 0 0 0 0 0 1 0 || 0 0 0 1 0 ; 0 0 0 0 0 0 0 0 1 0
68
+ 0 0 1 1 0 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 1 1 0 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 1 1 0 ; 0 0 0 0 0 0 0 0 0 0 || 0 0 1 1 0 ; 0 0 0 0 0 0 0 0 0 0
69
+ 0 1 0 0 0 ; 0 0 0 1 0 0 0 0 0 0 || 0 1 0 0 0 ; 0 0 0 1 0 0 0 0 0 0 || 1 0 0 0 0 ; 0 0 0 0 0 0 1 0 0 0 || 1 0 0 0 0 ; 0 0 0 0 0 0 1 0 0 0
70
+ 1 0 0 0 0 ; 0 0 0 0 0 0 1 0 0 0 || 1 0 0 0 0 ; 0 0 0 0 0 0 1 0 0 0 || 0 1 0 0 0 ; 0 0 0 1 0 0 0 0 0 0 || 0 1 0 0 0 ; 0 0 0 1 0 0 0 0 0 0
71
+ 1 1 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 || 1 1 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 || 1 1 0 0 0 ; 0 0 0 0 0 0 0 0 0 0 || 1 1 0 0 0 ; 0 0 0 0 0 0 0 0 0 0
72
+ ( 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 )
73
+ ( 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 )
74
+ ( 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 )
75
+ ( 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 )
76
+ ( 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 )
77
+ ( 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 )
78
+ ( 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 )
79
+ ( 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 )
80
+ ( 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 )
81
+ ( 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 )
82
+ ( 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 )
83
+ ( 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 )
84
+ ( 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 )
85
+ Model link graph cell arc iteration:
86
+ ['0:0', '1:1', '4:1', '5:3', '3:3']
87
+ ['0:1', '2:1', '1:0']
88
+ ['0:2', '3:1', '2:0']
89
+ ['0:3', '3:0']
90
+ ['1:2', '4:0']
91
+ ['1:3', '2:2', '5:1', '4:3']
92
+ ['2:3', '3:2', '5:0']
93
+ ['4:2', '5:2']
94
+ Vector<Integer> iteration:
95
+ 3
96
+ 5
97
+ -1
98
+ Vector<LargeInteger> iteration:
99
+ 3
100
+ 5
101
+ -1
102
+ PermGroup iteration:
103
+ 3210
104
+ 2130
105
+ 1320
106
+ 0231
107
+ 2301
108
+ 3021
109
+ 1032
110
+ 0312
111
+ 3102
112
+ 1203
113
+ 2013
114
+ 0123
115
+ TableView iteration:
116
+ 01/23
117
+ 02/13
118
+ 03/12