Opened 23 months ago

Closed 20 months ago

Last modified 18 months ago

#19551 closed defect (fixed)

Basic failures in projective product morphisms

Reported by: bhutz Owned by:
Priority: minor Milestone: sage-6.10
Component: algebraic geometry Keywords: product projective morphism
Cc: bhutz Merged in:
Authors: Tom Salvi, Joseph Eisner Reviewers: Ben Hutz
Report Upstream: N/A Work issues:
Branch: 1ded112 (Commits) Commit:
Dependencies: Stopgaps:

Description

The following are simple bugs in projective product morphisms:

PP.<x,y,z,u,v,w>=ProductProjectiveSpaces(QQ,[1,1,1])
HP=End(PP)
f=HP([v*x^2,w*y^2,z^2,u^2,v^2,w^2])
Q=PP([0,1,1,1,1,0])
f(Q)
R.<s,t>=PolynomialRing(QQ)
Z.<a,b,x,y,z> = ProductProjectiveSpaces([1,2],QQ)
P.<u,v,w,s,t,r>=ProductProjectiveSpaces([3,1],QQ)
H =Hom(Z,P)
f = H([a^2,b^2,a^2,a*b,a*x,b*z])

the following should fail (not multihomogeneous) but passes

Z.<a,b,c,x,y,z> = ProductProjectiveSpaces([1,3],QQ)
P.<u,v,w,s,t,r>=ProductProjectiveSpaces([2,2],QQ)
H =Hom(Z,P)
f = H([a^2,b^2,c^2,x^2,y^2,z^2])

Change History (14)

comment:1 Changed 23 months ago by bhutz

Call also needs some basic input checking:

PP.<t0,t1,t2,t3,t4>=ProductProjectiveSpaces([2,1],ZZ)
Q=PP([1,1,1,2,1])
Z.<a,b,x,y,z> = ProductProjectiveSpaces([1,2],ZZ)
H = End(Z)
f = H([a^3,b^3+a*b^2,x^2,y^2-z^2,z*y])
f(Q)

comment:2 Changed 22 months ago by tsalvi

  • Branch set to u/tsalvi/ticket/19551

comment:3 Changed 22 months ago by tsalvi

  • Authors set to Tom Salvi, Joe Eisner
  • Commit set to 2858087c035d7b533419ea04666c810d7ae10d67
  • Status changed from new to needs_review

New commits:

285808719551: fix failures in projective projects

comment:4 Changed 22 months ago by bhutz

  • Reviewers set to Ben Hutz
  • Status changed from needs_review to needs_work

A couple comments:

  • There is a test failure in morphism.py. That test is checking if the map is a non-morpism, but the map is actually poorly defined. So correct the map to still be a non-morphism, but a valid map.
  • I think we need at least some basic input checking in call, e.g. that the codomain of the point is in the domain of the function, otherwise examples like the following are badly behaved:
PP.<t0,t1,t2,t3,t4>=ProductProjectiveSpaces([2,1],ZZ)
Q=PP([1,1,1,2,1])
Z.<a,b,x,y,z> = ProductProjectiveSpaces([1,2],ZZ)
H = End(Z)
f = H([a^3,b^3+a*b^2,x^2,y^2-z^2,z*y])
f(Q)

While we are fixing call, I think you should add a test for the parameter check as well, such as the following:

PP.<x,y,z,u,v,w,s,t>=ProductProjectiveSpaces(QQ,[3,3])
HP=End(PP)
g=HP([4*v*x^2,2*w*y^2,2*v*z^2,2*s*x*y,v^2,w^2,3*s*v,t^2])
P=PP([1,1,2,1,1,0,3,1])
g(P,check=False)

comment:5 Changed 21 months ago by git

  • Commit changed from 2858087c035d7b533419ea04666c810d7ae10d67 to d705d0196f22cf0313240da6b4e4fec1202659a1

Branch pushed to git repo; I updated commit sha1. New commits:

d705d0119551: added check and examples

comment:6 Changed 20 months ago by git

  • Commit changed from d705d0196f22cf0313240da6b4e4fec1202659a1 to 7054db6d8b3a301db65ca77ddbf35d08f3343eb8

Branch pushed to git repo; I updated commit sha1. New commits:

7054db6Merge branch 'master' into t/19551/ticket/19551

comment:7 Changed 20 months ago by bhutz

Still needs some minor work:

should have spaces around the = sage: PP.<t0,t1,t2,t3,t4>=ProductProjectiveSpaces([2,1], ZZ)

On lines 12, 39, 62, 149, 388 there is terminating white space

In the functions init, call no space around = for check

2 doc test failures

comment:8 Changed 20 months ago by git

  • Commit changed from 7054db6d8b3a301db65ca77ddbf35d08f3343eb8 to 1ded112bc0f82424e24ec6355d382a5ad64af4f6

Branch pushed to git repo; I updated commit sha1. New commits:

1ded11219551: fix issues about spacing and doctest

comment:9 Changed 20 months ago by tsalvi

  • Status changed from needs_work to needs_review

comment:10 Changed 20 months ago by bhutz

  • Status changed from needs_review to positive_review

Still needs some minor work:

should have spaces around the = sage: PP.<t0,t1,t2,t3,t4>=ProductProjectiveSpaces([2,1], ZZ)

On lines 12, 39, 62, 149, 388 there is terminating white space

In the functions init, call no space around = for check

2 doc test failures


New commits:

1ded11219551: fix issues about spacing and doctest

comment:11 Changed 20 months ago by vbraun

  • Branch changed from u/tsalvi/ticket/19551 to 1ded112bc0f82424e24ec6355d382a5ad64af4f6
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:12 Changed 18 months ago by jdemeyer

  • Commit 1ded112bc0f82424e24ec6355d382a5ad64af4f6 deleted

Is "Joe Eisner" by chance equal to "Joseph Eisner" from #19891 and #20067?

comment:13 Changed 18 months ago by bhutz

  • Authors changed from Tom Salvi, Joe Eisner to Tom Salvi, Joseph Eisner

Yes, those are the same.

comment:14 Changed 18 months ago by kcrisman

Also, just want to make sure that it should be "Tom Salvi" and not "Thomas P. Salvi" as you registered.

Note: See TracTickets for help on using tickets.