diff --git a/src/doc/en/constructions/algebraic_geometry.rst b/src/doc/en/constructions/algebraic_geometry.rst index a312548..3933bf0 100644 --- a/src/doc/en/constructions/algebraic_geometry.rst +++ b/src/doc/en/constructions/algebraic_geometry.rst @@ -142,13 +142,17 @@ Other methods sage: I = singular.ideal('x^4+x', 'y^4+y') sage: L = singular.closed_points(I) sage: # Here you have all the points : - sage: print(L) + sage: L # random [1]: - _[1]=y+1 # 32-bit - _[2]=x+1 # 32-bit - _[1]=y # 64-bit - _[2]=x # 64-bit + _[1]=y+1 + _[2]=x+1 ... + sage: l=[L[k].sage() for k in [1..10]]; len(l) # there are 10 points + 10 + sage: r=sorted(l[0].ring().gens()); r + [y, x] + sage: r in [t.gens() for t in l] # one of them is given by [y,x] + True - Another way to compute rational points is to use Singular's ``NSplaces`` command. Here's the Klein quartic over :math:`GF(8)` diff --git a/src/doc/en/developer/coding_in_other.rst b/src/doc/en/developer/coding_in_other.rst index ee71373..6693aed 100644 --- a/src/doc/en/developer/coding_in_other.rst +++ b/src/doc/en/developer/coding_in_other.rst @@ -439,7 +439,7 @@ interface to Singular:: '' sage: L = singular.eval("POINTS;") - sage: print(L) + sage: print(L) # random [1]: [1]: 0 @@ -447,13 +447,6 @@ interface to Singular:: 1 [3]: 0 - [2]: - [1]: - -2 - [2]: - -1 - [3]: - 1 ... From looking at the output, notice that our wrapper function will need diff --git a/src/sage/modules/fg_pid/fgp_module.py b/src/sage/modules/fg_pid/fgp_module.py index 1208768..8cb68d0 100644 --- a/src/sage/modules/fg_pid/fgp_module.py +++ b/src/sage/modules/fg_pid/fgp_module.py @@ -127,7 +127,8 @@ which is coerced into M0. :: Here we illustrate lifting an element of the image of f, i.e., finding an element of M0 that maps to a given element of M1:: - sage: y = f.lift(3*M1.0); y + sage: y = f.lift(3*M1.0) + sage: y # random (0, 13) sage: f(y) (3) @@ -1285,7 +1286,7 @@ class FGP_Module_class(Module): (0, 4) sage: Q.coordinate_vector(x, reduce=True) (0, 4) - sage: Q.coordinate_vector(-x, reduce=False) + sage: Q.coordinate_vector(-x, reduce=False) # random (0, -4) sage: x == 4*Q.1 True @@ -1414,7 +1415,7 @@ class FGP_Module_class(Module): Echelon basis matrix: [ 0 12 0] [ 0 0 4] - sage: X + sage: X # random [0 4 0] [0 1 0] [0 0 1] diff --git a/src/sage/modules/free_module_morphism.py b/src/sage/modules/free_module_morphism.py index 62379d2..2c163f5 100644 --- a/src/sage/modules/free_module_morphism.py +++ b/src/sage/modules/free_module_morphism.py @@ -350,12 +350,14 @@ class FreeModuleMorphism(matrix_morphism.MatrixMorphism): sage: V = X.span([[2, 0], [0, 8]], ZZ) sage: W = (QQ**1).span([[1/12]], ZZ) sage: f = V.hom([W([1/3]), W([1/2])], W) - sage: f.lift([1/3]) + sage: l=f.lift([1/3]); l # random (8, -16) - sage: f.lift([1/2]) - (12, -24) - sage: f.lift([1/6]) - (4, -8) + sage: f(l) + (1/3) + sage: f(f.lift([1/2])) + (1/2) + sage: f(f.lift([1/6])) + (1/6) sage: f.lift([1/12]) Traceback (most recent call last): ...