Skip to content

Commit 8ccf1dc

Browse files
author
Release Manager
committed
sagemathgh-39186: Remove backslash hack in doctest Would fix sagemath#39058 . I think it's cleaner to remove this thing anyway (given that it doesn't work in the real Sage command prompt either) ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [x] I have linked a relevant issue or discussion. - [x] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#39186 Reported by: user202729 Reviewer(s): Tobias Diez
2 parents 6b2a603 + 0ed925b commit 8ccf1dc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+334
-367
lines changed

src/doc/en/developer/coding_basics.rst

+3-5
Original file line numberDiff line numberDiff line change
@@ -1114,12 +1114,10 @@ written.
11141114
The :ref:`doctest fixer <section-fixdoctests-optional-needs>` uses
11151115
tab stops at columns 48, 56, 64, ... for these tags.
11161116

1117-
- **Split long lines:** You may want to split long lines of code with a
1118-
backslash. Note: this syntax is non-standard and may be removed in the
1119-
future::
1117+
- **Split long lines:** Standard Python rules apply. For example::
11201118

1121-
sage: n = 123456789123456789123456789\
1122-
....: 123456789123456789123456789
1119+
sage: n = (123456789123456789123456789 +
1120+
....: 123456789123456789123456789)
11231121
sage: n.is_prime()
11241122
False
11251123

src/doc/en/thematic_tutorials/lie/branching_rules.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -344,7 +344,7 @@ we could accomplish the branching in two steps, thus::
344344
sage: A1xA1 = WeylCharacterRing("A1xA1", style="coroots")
345345
sage: reps = [A3(fw) for fw in A3.fundamental_weights()]
346346
sage: [pi.branch(C2, rule="symmetric").branch(B2, rule="isomorphic"). \
347-
branch(D2, rule="extended").branch(A1xA1, rule="isomorphic") for pi in reps]
347+
....: branch(D2, rule="extended").branch(A1xA1, rule="isomorphic") for pi in reps]
348348
[A1xA1(1,0) + A1xA1(0,1), 2*A1xA1(0,0) + A1xA1(1,1), A1xA1(1,0) + A1xA1(0,1)]
349349

350350
As you can see, we've redone the branching rather circuitously this

src/doc/en/thematic_tutorials/lie/crystals.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -741,7 +741,7 @@ irreducible crystal. We can make four such crystals::
741741
sage: C = crystals.Letters("A2")
742742
sage: T = crystals.TensorProduct(C,C,C)
743743
sage: [T1,T2,T3,T4] = \
744-
[crystals.TensorProduct(C,C,C,generators=[v]) for v in T.highest_weight_vectors()]
744+
....: [crystals.TensorProduct(C,C,C,generators=[v]) for v in T.highest_weight_vectors()]
745745
sage: [B.cardinality() for B in [T1,T2,T3,T4]]
746746
[10, 8, 8, 1]
747747
sage: [B.character(A2) for B in [T1,T2,T3,T4]]
@@ -754,7 +754,7 @@ We see that two of these crystals are isomorphic, with character
754754
sage: C = crystals.Letters("A2")
755755
sage: T = crystals.TensorProduct(C,C,C)
756756
sage: [T1,T2,T3,T4] = \
757-
[crystals.TensorProduct(C,C,C,generators=[v]) for v in T.highest_weight_vectors()]
757+
....: [crystals.TensorProduct(C,C,C,generators=[v]) for v in T.highest_weight_vectors()]
758758
sage: T1.plot()
759759
Graphics object consisting of 35 graphics primitives
760760
sage: T2.plot()

src/doc/en/thematic_tutorials/sandpile.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -1174,7 +1174,7 @@ dict (configuration)
11741174
EXAMPLES::
11751175

11761176
sage: g = {0:{},1:{0:1,3:1,4:1},2:{0:1,3:1,5:1}, \
1177-
3:{2:1,5:1},4:{1:1,3:1},5:{2:1,3:1}}
1177+
....: 3:{2:1,5:1},4:{1:1,3:1},5:{2:1,3:1}}
11781178
sage: S = Sandpile(g,0)
11791179
sage: S.burning_config()
11801180
{1: 2, 2: 0, 3: 1, 4: 1, 5: 0}
@@ -1226,7 +1226,7 @@ OUTPUT: dict
12261226
EXAMPLES::
12271227

12281228
sage: g = {0:{},1:{0:1,3:1,4:1},2:{0:1,3:1,5:1},\
1229-
3:{2:1,5:1},4:{1:1,3:1},5:{2:1,3:1}}
1229+
....: 3:{2:1,5:1},4:{1:1,3:1},5:{2:1,3:1}}
12301230
sage: S = Sandpile(g,0)
12311231
sage: S.burning_config()
12321232
{1: 2, 2: 0, 3: 1, 4: 1, 5: 0}

src/sage/coding/delsarte_bounds.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,7 @@ def delsarte_bound_additive_hamming_space(n, d, q, d_star=1, q_base=0, return_da
490490
sage: codes.bounds.delsarte_bound_additive_hamming_space(11, 6, 2)
491491
3
492492
sage: a,p,val = codes.bounds.delsarte_bound_additive_hamming_space(\
493-
11, 6, 2, return_data=True)
493+
....: 11, 6, 2, return_data=True)
494494
sage: [j for i,j in p.get_values(a).items()]
495495
[1, 0, 0, 0, 0, 0, 5, 2, 0, 0, 0, 0]
496496
@@ -514,13 +514,13 @@ def delsarte_bound_additive_hamming_space(n, d, q, d_star=1, q_base=0, return_da
514514
TESTS::
515515
516516
sage: a,p,x = codes.bounds.delsarte_bound_additive_hamming_space(\
517-
19,15,7,return_data=True,isinteger=True)
517+
....: 19,15,7,return_data=True,isinteger=True)
518518
sage: [j for i,j in p.get_values(a).items()]
519519
[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 307, 0, 0, 1, 34]
520520
sage: codes.bounds.delsarte_bound_additive_hamming_space(19,15,7,solver='glpk')
521521
3
522522
sage: codes.bounds.delsarte_bound_additive_hamming_space(\
523-
19,15,7, isinteger=True, solver='glpk')
523+
....: 19,15,7, isinteger=True, solver='glpk')
524524
3
525525
"""
526526
from sage.numerical.mip import MIPSolverException

src/sage/coding/extended_code.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ def parity_check_matrix(self):
134134
EXAMPLES::
135135
136136
sage: C = LinearCode(matrix(GF(2),[[1,0,0,1,1],\
137-
[0,1,0,1,0],\
138-
[0,0,1,1,1]]))
137+
....: [0,1,0,1,0],\
138+
....: [0,0,1,1,1]]))
139139
sage: C.parity_check_matrix()
140140
[1 0 1 0 1]
141141
[0 1 0 1 1]
@@ -259,8 +259,8 @@ def generator_matrix(self):
259259
EXAMPLES::
260260
261261
sage: C = LinearCode(matrix(GF(2),[[1,0,0,1,1],\
262-
[0,1,0,1,0],\
263-
[0,0,1,1,1]]))
262+
....: [0,1,0,1,0],\
263+
....: [0,0,1,1,1]]))
264264
sage: Ce = codes.ExtendedCode(C)
265265
sage: E = codes.encoders.ExtendedCodeExtendedMatrixEncoder(Ce)
266266
sage: E.generator_matrix()

src/sage/coding/information_set_decoder.py

+12-12
Original file line numberDiff line numberDiff line change
@@ -157,10 +157,10 @@ def decode(self, r):
157157
EXAMPLES::
158158
159159
sage: M = matrix(GF(2), [[1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0],\
160-
[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1],\
161-
[0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0],\
162-
[0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1],\
163-
[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1]])
160+
....: [0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1],\
161+
....: [0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0],\
162+
....: [0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1],\
163+
....: [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1]])
164164
sage: C = codes.LinearCode(M)
165165
sage: from sage.coding.information_set_decoder import LeeBrickellISDAlgorithm
166166
sage: A = LeeBrickellISDAlgorithm(C, (2,2))
@@ -448,10 +448,10 @@ def decode(self, r):
448448
EXAMPLES::
449449
450450
sage: M = matrix(GF(2), [[1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0],\
451-
[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1],\
452-
[0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0],\
453-
[0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1],\
454-
[0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1]])
451+
....: [0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1],\
452+
....: [0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0],\
453+
....: [0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1],\
454+
....: [0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1]])
455455
sage: C = codes.LinearCode(M)
456456
sage: from sage.coding.information_set_decoder import LeeBrickellISDAlgorithm
457457
sage: A = LeeBrickellISDAlgorithm(C, (2,2))
@@ -929,10 +929,10 @@ def decode_to_code(self, r):
929929
EXAMPLES::
930930
931931
sage: M = matrix(GF(2), [[1,0,0,0,0,0,1,0,1,0,1,1,0,0,1],\
932-
[0,1,0,0,0,1,1,1,1,0,0,0,0,1,1],\
933-
[0,0,1,0,0,0,0,1,0,1,1,1,1,1,0],\
934-
[0,0,0,1,0,0,1,0,1,0,0,0,1,1,0],\
935-
[0,0,0,0,1,0,0,0,1,0,1,1,0,1,0]])
932+
....: [0,1,0,0,0,1,1,1,1,0,0,0,0,1,1],\
933+
....: [0,0,1,0,0,0,0,1,0,1,1,1,1,1,0],\
934+
....: [0,0,0,1,0,0,1,0,1,0,0,0,1,1,0],\
935+
....: [0,0,0,0,1,0,0,0,1,0,1,1,0,1,0]])
936936
sage: C = LinearCode(M)
937937
sage: c = C.random_element()
938938
sage: Chan = channels.StaticErrorRateChannel(C.ambient_space(), 2)

src/sage/coding/linear_code.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,8 @@ class should inherit from this class. Also ``AbstractLinearCode`` should never
6666
A ``LinearCode`` is instantiated by providing a generator matrix::
6767
6868
sage: M = matrix(GF(2), [[1, 0, 0, 1, 0],\
69-
[0, 1, 0, 1, 1],\
70-
[0, 0, 1, 1, 1]])
69+
....: [0, 1, 0, 1, 1],\
70+
....: [0, 0, 1, 1, 1]])
7171
sage: C = codes.LinearCode(M)
7272
sage: C
7373
[5, 3] linear code over GF(2)

src/sage/coding/linear_code_no_metric.py

+23-23
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,7 @@ def systematic_generator_matrix(self, systematic_positions=None):
525525
EXAMPLES::
526526
527527
sage: G = matrix(GF(3), [[ 1, 2, 1, 0],\
528-
[ 2, 1, 1, 1]])
528+
....: [ 2, 1, 1, 1]])
529529
sage: C = LinearCode(G)
530530
sage: C.generator_matrix()
531531
[1 2 1 0]
@@ -577,8 +577,8 @@ def standard_form(self, return_permutation=True):
577577
sage: Cs is C
578578
True
579579
sage: C = LinearCode(matrix(GF(2), [[1,0,0,0,1,1,0],\
580-
[0,1,0,1,0,1,0],\
581-
[0,0,0,0,0,0,1]]))
580+
....: [0,1,0,1,0,1,0],\
581+
....: [0,0,0,0,0,0,1]]))
582582
sage: Cs, p = C.standard_form()
583583
sage: p
584584
[1, 2, 7, 3, 4, 5, 6]
@@ -627,7 +627,7 @@ def redundancy_matrix(self):
627627
[1 1 0]
628628
[1 1 1]
629629
sage: C = LinearCode(matrix(GF(3),2,[1,2,0,\
630-
2,1,1]))
630+
....: 2,1,1]))
631631
sage: C.systematic_generator_matrix()
632632
[1 2 0]
633633
[0 0 1]
@@ -1053,9 +1053,9 @@ class LinearCodeSystematicEncoder(Encoder):
10531053
10541054
sage: LCSE = codes.encoders.LinearCodeSystematicEncoder
10551055
sage: G = Matrix(GF(2), [[1,1,1,0,0,0,0,0],\
1056-
[1,0,0,1,1,0,0,0],\
1057-
[0,1,0,1,0,1,0,0],\
1058-
[1,1,0,1,0,0,1,1]])
1056+
....: [1,0,0,1,1,0,0,0],\
1057+
....: [0,1,0,1,0,1,0,0],\
1058+
....: [1,1,0,1,0,0,1,1]])
10591059
sage: C = LinearCode(G)
10601060
sage: E = LCSE(C)
10611061
sage: E.generator_matrix()
@@ -1207,9 +1207,9 @@ def generator_matrix(self):
12071207
12081208
sage: LCSE = codes.encoders.LinearCodeSystematicEncoder
12091209
sage: G = Matrix(GF(2), [[1,1,1,0,0,0,0],\
1210-
[1,0,0,1,1,0,0],\
1211-
[0,1,0,1,0,1,0],\
1212-
[1,1,0,1,0,0,1]])
1210+
....: [1,0,0,1,1,0,0],\
1211+
....: [0,1,0,1,0,1,0],\
1212+
....: [1,1,0,1,0,0,1]])
12131213
sage: C = LinearCode(G)
12141214
sage: E = LCSE(C)
12151215
sage: E.generator_matrix()
@@ -1230,9 +1230,9 @@ def generator_matrix(self):
12301230
Another example where there is no generator matrix of the form `[I \vert H]`::
12311231
12321232
sage: G = Matrix(GF(2), [[1,1,0,0,1,0,1],\
1233-
[1,1,0,0,1,0,0],\
1234-
[0,0,1,0,0,1,0],\
1235-
[0,0,1,0,1,0,1]])
1233+
....: [1,1,0,0,1,0,0],\
1234+
....: [0,0,1,0,0,1,0],\
1235+
....: [0,0,1,0,1,0,1]])
12361236
sage: C = LinearCode(G)
12371237
sage: E = LCSE(C)
12381238
sage: E.generator_matrix()
@@ -1277,8 +1277,8 @@ def systematic_permutation(self):
12771277
EXAMPLES::
12781278
12791279
sage: C = LinearCode(matrix(GF(2), [[1,0,0,0,1,1,0],\
1280-
[0,1,0,1,0,1,0],\
1281-
[0,0,0,0,0,0,1]]))
1280+
....: [0,1,0,1,0,1,0],\
1281+
....: [0,0,0,0,0,0,1]]))
12821282
sage: E = codes.encoders.LinearCodeSystematicEncoder(C)
12831283
sage: E.systematic_positions()
12841284
(0, 1, 6)
@@ -1309,9 +1309,9 @@ def systematic_positions(self):
13091309
13101310
sage: LCSE = codes.encoders.LinearCodeSystematicEncoder
13111311
sage: G = Matrix(GF(2), [[1,1,1,0,0,0,0],\
1312-
[1,0,0,1,1,0,0],\
1313-
[0,1,0,1,0,1,0],\
1314-
[1,1,0,1,0,0,1]])
1312+
....: [1,0,0,1,1,0,0],\
1313+
....: [0,1,0,1,0,1,0],\
1314+
....: [1,1,0,1,0,0,1]])
13151315
sage: C = LinearCode(G)
13161316
sage: E = LCSE(C)
13171317
sage: E.systematic_positions()
@@ -1320,9 +1320,9 @@ def systematic_positions(self):
13201320
We take another matrix with a less nice shape::
13211321
13221322
sage: G = Matrix(GF(2), [[1,1,0,0,1,0,1],\
1323-
[1,1,0,0,1,0,0],\
1324-
[0,0,1,0,0,1,0],\
1325-
[0,0,1,0,1,0,1]])
1323+
....: [1,1,0,0,1,0,0],\
1324+
....: [0,0,1,0,0,1,0],\
1325+
....: [0,0,1,0,1,0,1]])
13261326
sage: C = LinearCode(G)
13271327
sage: E = LCSE(C)
13281328
sage: E.systematic_positions()
@@ -1343,8 +1343,8 @@ def systematic_positions(self):
13431343
positions (even if another choice might also be systematic)::
13441344
13451345
sage: G = Matrix(GF(2), [[1,0,0,0],\
1346-
[0,1,0,0],\
1347-
[0,0,1,1]])
1346+
....: [0,1,0,0],\
1347+
....: [0,0,1,1]])
13481348
sage: C = LinearCode(G)
13491349
sage: E = LCSE(C, systematic_positions=[0,1,3])
13501350
sage: E.systematic_positions()

src/sage/combinat/designs/gen_quadrangles_with_spread.pyx

+1-1
Original file line numberDiff line numberDiff line change
@@ -267,7 +267,7 @@ def generalised_quadrangle_hermitian_with_ovoid(const int q):
267267
TESTS::
268268
269269
sage: from sage.combinat.designs.gen_quadrangles_with_spread import \
270-
is_GQ_with_spread, dual_GQ_ovoid
270+
....: is_GQ_with_spread, dual_GQ_ovoid
271271
sage: t = designs.generalised_quadrangle_hermitian_with_ovoid(3)
272272
sage: t = dual_GQ_ovoid(*t)
273273
sage: is_GQ_with_spread(*t, s=3, t=9)

src/sage/doctest/forker.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1821,8 +1821,8 @@ def parallel_dispatch(self):
18211821
canceled::
18221822
18231823
sage: from tempfile import NamedTemporaryFile as NTF
1824-
sage: with NTF(suffix='.py', mode='w+t') as f1, \
1825-
....: NTF(suffix='.py', mode='w+t') as f2:
1824+
sage: with (NTF(suffix='.py', mode='w+t') as f1,
1825+
....: NTF(suffix='.py', mode='w+t') as f2):
18261826
....: _ = f1.write("'''\nsage: import time; time.sleep(60)\n'''")
18271827
....: f1.flush()
18281828
....: _ = f2.write("'''\nsage: True\nFalse\n'''")

src/sage/doctest/parsing.py

+9-39
Original file line numberDiff line numberDiff line change
@@ -880,26 +880,6 @@ def parse(self, string, *args):
880880
sage: ex.source
881881
'for i in range(Integer(4)):\n print(i)\n'
882882
883-
Sage currently accepts backslashes as indicating that the end
884-
of the current line should be joined to the next line. This
885-
feature allows for breaking large integers over multiple lines
886-
but is not standard for Python doctesting. It's not
887-
guaranteed to persist::
888-
889-
sage: n = 1234\
890-
....: 5678
891-
sage: print(n)
892-
12345678
893-
sage: type(n)
894-
<class 'sage.rings.integer.Integer'>
895-
896-
It also works without the line continuation::
897-
898-
sage: m = 8765\
899-
4321
900-
sage: print(m)
901-
87654321
902-
903883
Optional tags at the start of an example block persist to the end of
904884
the block (delimited by a blank line)::
905885
@@ -993,15 +973,15 @@ def parse(self, string, *args):
993973
994974
sage: parse("::\n\n sage: # needs sage.combinat\n sage: from sage.geometry.polyhedron.combinatorial_polyhedron.conversions \\\n ....: import incidence_matrix_to_bit_rep_of_Vrep\n sage: P = polytopes.associahedron(['A',3])\n\n")
995975
['::\n\n',
996-
'',
997-
(None,
998-
'from sage.geometry.polyhedron.combinatorial_polyhedron.conversions import incidence_matrix_to_bit_rep_of_Vrep\n',
999-
'from sage.geometry.polyhedron.combinatorial_polyhedron.conversions import incidence_matrix_to_bit_rep_of_Vrep\n'),
1000-
'',
1001-
(None,
1002-
"P = polytopes.associahedron(['A',3])\n",
1003-
"P = polytopes.associahedron(['A',Integer(3)])\n"),
1004-
'\n']
976+
'',
977+
(None,
978+
'from sage.geometry.polyhedron.combinatorial_polyhedron.conversions \\\n import incidence_matrix_to_bit_rep_of_Vrep\n',
979+
'from sage.geometry.polyhedron.combinatorial_polyhedron.conversions import incidence_matrix_to_bit_rep_of_Vrep\n'),
980+
'',
981+
(None,
982+
"P = polytopes.associahedron(['A',3])\n",
983+
"P = polytopes.associahedron(['A',Integer(3)])\n"),
984+
'\n']
1005985
1006986
sage: example4 = '::\n\n sage: C.minimum_distance(algorithm="guava") # optional - guava\n ...\n 24\n\n'
1007987
sage: parsed4 = DTP.parse(example4)
@@ -1016,20 +996,10 @@ def parse(self, string, *args):
1016996
find_sage_continuation = re.compile(r"^(\s*)\.\.\.\.:", re.M)
1017997
find_python_continuation = re.compile(r"^(\s*)\.\.\.([^\.])", re.M)
1018998
python_prompt = re.compile(r"^(\s*)>>>", re.M)
1019-
backslash_replacer = re.compile(r"""(\s*)sage:(.*)\\\ *
1020-
\ *((\.){4}:)?\ *""")
1021999

10221000
# The following are used to allow ... at the beginning of output
10231001
ellipsis_tag = "<TEMP_ELLIPSIS_TAG>"
10241002

1025-
# Hack for non-standard backslash line escapes accepted by the current
1026-
# doctest system.
1027-
m = backslash_replacer.search(string)
1028-
while m is not None:
1029-
g = m.groups()
1030-
string = string[:m.start()] + g[0] + "sage:" + g[1] + string[m.end():]
1031-
m = backslash_replacer.search(string, m.start())
1032-
10331003
replace_ellipsis = not python_prompt.search(string)
10341004
if replace_ellipsis:
10351005
# There are no >>> prompts, so we can allow ... to begin the output

src/sage/dynamics/arithmetic_dynamics/affine_ds.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ def dynatomic_polynomial(self, period):
519519
sage: R.<c> = QQ[]
520520
sage: Pc.<x,y> = ProjectiveSpace(R, 1)
521521
sage: G = DynamicalSystem_projective([(1/2*c + 1/2)*x^2 + (-2*c)*x*y + 2*c*y^2 , \
522-
(1/4*c + 1/2)*x^2 + (-c - 1)*x*y + (c + 1)*y^2])
522+
....: (1/4*c + 1/2)*x^2 + (-c - 1)*x*y + (c + 1)*y^2])
523523
sage: G.dehomogenize(1).dynatomic_polynomial(2)
524524
(1/4*c + 1/4)*x^2 + (-c - 1/2)*x + c + 1
525525
"""

src/sage/dynamics/arithmetic_dynamics/projective_ds.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -2259,10 +2259,10 @@ def canonical_height(self, P, **kwds):
22592259
22602260
::
22612261
2262-
sage: RSA768 = 123018668453011775513049495838496272077285356959533479219732245215\
2263-
....: 1726400507263657518745202199786469389956474942774063845925192557326303453731548\
2264-
....: 2685079170261221429134616704292143116022212404792747377940806653514195974598569\
2265-
....: 02143413
2262+
sage: RSA768 = Integer('123018668453011775513049495838496272077285356959533479219732245215'
2263+
....: '1726400507263657518745202199786469389956474942774063845925192557326303453731548'
2264+
....: '2685079170261221429134616704292143116022212404792747377940806653514195974598569'
2265+
....: '02143413')
22662266
sage: P.<x,y> = ProjectiveSpace(QQ,1)
22672267
sage: f = DynamicalSystem_projective([RSA768*x^2 + y^2, x*y])
22682268
sage: Q = P(RSA768,1)

0 commit comments

Comments
 (0)