Opened 9 years ago
Last modified 8 years ago
#13184 closed defect
Some Homset are not unique parents — at Version 11
Reported by: | caruso | Owned by: | nthiery |
---|---|---|---|
Priority: | major | Milestone: | sage-5.10 |
Component: | categories | Keywords: | homset unique parent |
Cc: | caruso, SimonKing, nbruin | Merged in: | |
Authors: | Xavier Caruso | Reviewers: | |
Report Upstream: | N/A | Work issues: | sage fails to run |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
I guess it is a bug:
sage: k = GF(5) sage: H = Hom(k,k) sage: H2 = Hom(k,k) sage: H is H2 False
I don't know what is the correct way to fix this problem.
More precisely, in sage.categories.homset (l. 223-227), one can read:
try: # Apparently X._Hom_ is supposed to be cached return X._Hom_(Y, category) except (AttributeError, TypeError): pass
However, in this particular case, k._Hom_ is apparently not cached. IMHO, caching should be the job of sage.categories.homset.Hom is all cases, but I might be wrong.
Apply
Change History (14)
Changed 9 years ago by
comment:1 Changed 9 years ago by
comment:2 Changed 9 years ago by
- Status changed from new to needs_review
comment:3 Changed 9 years ago by
- Cc caruso added
comment:4 Changed 9 years ago by
Please fill in your real name as Author.
comment:5 Changed 9 years ago by
comment:6 Changed 8 years ago by
- Description modified (diff)
comment:7 Changed 8 years ago by
- Status changed from needs_review to needs_work
Sage does not run with the patch applied:
/home/travis/sage-5.5.rc0/local/lib/python2.7/site-packages/sage/categories/homset.pyc in Hom(X, Y, category) 239 # To be investigated 240 H = X._Hom_(Y,category) --> 241 _cache[key] = weakref.ref(H) 242 return H 243 except (AttributeError, TypeError): NameError: global name 'weakref' is not defined Error importing ipy_profile_sage - perhaps you should run %upgrade? WARNING: Loading of ipy_profile_sage failed.
comment:8 Changed 8 years ago by
- Description modified (diff)
- Status changed from needs_work to needs_review
I don't understand exactly why you got this error.
Nevertheless, I noticed that ticket #11521 was merged in sage-5.5.beta0 resulting in some important modifications in sage/categories/homset.py
. As a consequence, my patch does not apply in versions >= 5.5.beta0. So, I attach a new patch to apply to these recent versions.
Changed 8 years ago by
comment:9 Changed 8 years ago by
- Description modified (diff)
comment:10 Changed 8 years ago by
- Status changed from needs_review to needs_work
- Work issues set to sage fails to run
Same error. I'm running 5.5.rc0
. The patchbot agreed with me on the previous version as well (all doctests basically fail), and I suspect it will agree with me on the new patch. Do you have any patches applied in your queue, or if are running something before 5.5.rc0
, do you have every patch which modifies homset.py
applied before the patch in the queue?
Thanks,
Travis
PS - it's generally not a good idea to have periods in your filenames since they are used for extension types; typically people replace them with underscores.
For patchbot:
Apply only: trac_13184_sage_5.5.0.beta.patch
comment:11 Changed 8 years ago by
- Description modified (diff)
- Status changed from needs_work to needs_review
here is a rebased and slightly modified patch
for the bot:
apply trac_13184_sage_5.9.beta.patch
I've attached a small patch fixing the problem.