There is still some work to do :-) :
Warning
This list is currently very incomplete as most doctests do not use the .. todo:: markup.
Todo
Rewrite the hand-written TODOs by using the correct .. todo:: markup.
The combined to do list is only available in the html version of the reference manual.
Todo
Rewrite the hand-written TODOs by using the correct .. todo:: markup.
(The original entry is located in /usr/share/doc/sagemath/en/reference/todolist.rst, line 13.)
Todo
Deprecate this in favor of a method called once
subalgebras are properly implemented in Sage.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.CliffordAlgebra.center_basis, line 12.)
Todo
Deprecate this in favor of a method called once
subalgebras are properly implemented in Sage.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.CliffordAlgebra.supercenter_basis, line 12.)
Todo
Add a category for Hopf superalgebras (perhaps part of trac ticket #16513).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.ExteriorAlgebra, line 42.)
Todo
Define a similar method for general Clifford algebras once the morphism to exterior algebras is implemented.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.ExteriorAlgebra.Element.constant_coefficient, line 3.)
Todo
Define a similar method for general Clifford algebras once the morphism to exterior algebras is implemented.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.ExteriorAlgebra.Element.scalar, line 10.)
Todo
Implement a class for bilinear forms and rewrite this method to use that class.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.ExteriorAlgebra.lifted_bilinear_form, line 53.)
Todo
Another way to compute this bilinear form seems to be to
map and
to the appropriate Clifford algebra and
there compute
, then send the result back to the
exterior algebra and return its constant coefficient. Or
something like this. Once the maps to the Clifford and
back are implemented, check if this is faster.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/clifford_algebra.py:docstring of sage.algebras.clifford_algebra.ExteriorAlgebra.lifted_bilinear_form, line 108.)
Todo
An example illustrating unitary flag.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_morphism.py:docstring of sage.algebras.finite_dimensional_algebras.finite_dimensional_algebra_morphism.FiniteDimensionalAlgebraMorphism, line 35.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/free_algebra.py:docstring of sage.algebras.free_algebra.FreeAlgebra_generic.g_algebra, line 4.)
Todo
Implement multi-parameter Iwahori-Hecke algebras together with their Kazhdan-Lusztig bases. That is, Iwahori-Hecke algebras with (possibly) different parameters for each conjugacy class of simple reflections in the underlying Coxeter group.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/iwahori_hecke_algebra.py:docstring of sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra, line 305.)
Todo
When given “generic parameters” we should return the generic Iwahori-Hecke algebra with these parameters and allow the user to work inside this algebra rather than doing calculations behind the scenes in a copy of the generic Iwahori-Hecke algebra. The main problem is that it is not clear how to recognise when the parameters are “generic”.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/iwahori_hecke_algebra.py:docstring of sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra, line 312.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/gsl/dft.py:docstring of sage.gsl.dft, line 52.)
Todo
Read the parent of the elements of S; if or
leave as
is; if AbelianGroup, use abelian_group_dual; if some other
implemented Group (permutation, matrix), call .characters()
and test if the index list is the set of conjugacy classes.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/gsl/dft.py:docstring of sage.gsl.dft.IndexedSequence.dft, line 41.)
Todo
Add an example.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/additive_magmas.py:docstring of sage.categories.additive_magmas.AdditiveMagmas.ParentMethods.summation, line 34.)
Todo
Add an example.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/additive_magmas.py:docstring of sage.categories.additive_magmas.AdditiveMagmas.ParentMethods.summation_from_element_class_add, line 34.)
Todo
This could be deduced from AdditiveSemigroups.Homsets.extra_super_categories(). See comment in Objects.SubcategoryMethods.Homsets().
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/additive_monoids.py:docstring of sage.categories.additive_monoids.AdditiveMonoids.Homsets.extra_super_categories, line 12.)
Todo
add a description of this category
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/affine_weyl_groups.py:docstring of sage.categories.affine_weyl_groups.AffineWeylGroups, line 3.)
Todo
should return an enumerated set, with iterator, ...
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/affine_weyl_groups.py:docstring of sage.categories.affine_weyl_groups.AffineWeylGroups.ParentMethods.affine_grassmannian_elements_of_given_length, line 13.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/affine_weyl_groups.py:docstring of sage.categories.affine_weyl_groups.AffineWeylGroups.additional_structure, line 9.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/algebra_ideals.py:docstring of sage.categories.algebra_ideals.AlgebraIdeals, line 8.)
Todo
Should be a commutative ring?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/algebras.py:docstring of sage.categories.algebras.Algebras, line 14.)
Todo
This category should be a CategoryWithAxiom.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/bialgebras.py:docstring of sage.categories.bialgebras.Bialgebras.additional_structure, line 9.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/bimodules.py:docstring of sage.categories.bimodules.Bimodules.additional_structure, line 9.)
Todo
Improve this explanation.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category.py:docstring of sage.categories.category.Category._without_axioms, line 8.)
Todo
Add an optional argument to allow for:
sage: Realizations(A, category = Blahs()) # todo: not implemented
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category.py:docstring of sage.categories.category.Category.Realizations, line 39.)
Todo
The latter is a consequence of EuclideanDomains currently being a structure category. Is this what we want?
sage: EuclideanDomains().is_full_subcategory(Rings())
False
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category.py:docstring of sage.categories.category.Category.is_full_subcategory, line 47.)
Todo
Further remove the base ring (see also trac ticket #15801).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category.py:docstring of sage.categories.category.category_graph, line 15.)
Todo
Specify whether or not one should systematically use @cached_method in the definition of the axiom. And make sure all the definition of axioms in Sage are consistent in this respect!
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 376.)
Todo
We could possibly define an @axiom decorator? This could hide two little implementation details: whether or not to make the method a cached method, and the call to _with_axiom(...) under the hood. It could do possibly do some more magic. The gain is not obvious though.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 382.)
Todo
Explore ways to get rid of this global all_axioms tuple, and/or have automatic registration there, and/or having a register_axiom(...) method.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 421.)
Todo
Other categories that would be better implemented via an axiom depending on a join category include:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 488.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 505.)
Todo
The above example violates the specifications (a category should be modelled by at most one class), so it’s appropriate that it fails. Yet, the error message could be usefully complemented by some hint at what the source of the problem is (a category implemented in two distinct classes). Leaving a large enough piece of the backtrace would be useful though, so that one can explore where the issue comes from (e.g. with post mortem debugging).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 1095.)
Todo
The following specifications would be desirable but are not yet implemented:
A functorial construction category (Graded, CartesianProducts, ...) having a Category_singleton as base category should be a CategoryWithAxiom_singleton.
Nothing difficult to implement, but this will need to rework the current “no subclass of a concrete class” assertion test of Category_singleton.__classcall__().
Similarly, a covariant functorial construction category having a Category_over_base_ring as base category should be a Category_over_base_ring.
The following specification might be desirable, or not:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 1257.)
Todo
Detail this a bit. What could typically go wrong is a situation where, for some category C1, C1.A() specifies a category C2 as super category such that C2.A() specifies C3 as super category such that ...; this would clearly cause an infinite execution. Note that this situation violates the specifications since C1.A() is supposed to be a subcategory of C2.A(), ... so we would have an infinite increasing chain of constructible categories.
It’s reasonnable to assume that there is a finite number of axioms defined in the code. There remains to use this assumption to argue that any infinite execution of the algorithm would give rise to such an infinite sequence.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom, line 1412.)
Todo
Decide whether we care about this feature. In such a situation, we are not really defining a new axiom, but just defining an axiom as an alias for a couple others, which might not be that useful.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom.Blahs.Blue_extra_super_categories, line 15.)
Todo
Improve the infrastructure to detect and report this violation of the specifications, if this is easy. Otherwise, it’s not so bad: when defining an axiom A in a category Cs the first thing one is supposed to doctest is that Cs().A() works. So the problem should not go unnoticed.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/category_with_axiom.py:docstring of sage.categories.category_with_axiom.Blahs.Blue_extra_super_categories, line 22.)
Todo
add a demo of usual computations on Coxeter groups.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/coxeter_groups.py:docstring of sage.categories.coxeter_groups.CoxeterGroups, line 40.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/finite_coxeter_groups.py:docstring of sage.categories.finite_coxeter_groups.FiniteCoxeterGroups.ParentMethods.bruhat_poset, line 44.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/finite_coxeter_groups.py:docstring of sage.categories.finite_coxeter_groups.FiniteCoxeterGroups.ParentMethods.weak_lattice, line 70.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/finite_coxeter_groups.py:docstring of sage.categories.finite_coxeter_groups.FiniteCoxeterGroups.ParentMethods.weak_poset, line 70.)
Todo
sage.combinat.debruijn_sequence.DeBruijnSequences should not inherit from this class. If that is solved, then FiniteEnumeratedSets shall be turned into a subclass of Category_singleton.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/finite_enumerated_sets.py:docstring of sage.categories.finite_enumerated_sets.FiniteEnumeratedSets, line 25.)
Todo
make this optional
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/finite_semigroups.py:docstring of sage.categories.finite_semigroups.FiniteSemigroups, line 17.)
Todo
Get rid of this workaround once there is a more systematic approach for the alias Modules(QQ) -> VectorSpaces(QQ). Probably the later should be a category with axiom, and covariant constructions should play well with axioms.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/graded_modules.py:docstring of sage.categories.graded_modules.GradedModules.extra_super_categories, line 18.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/groups.py:docstring of sage.categories.groups.Groups.Algebras, line 24.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/highest_weight_crystals.py:docstring of sage.categories.highest_weight_crystals.HighestWeightCrystals.additional_structure, line 9.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/homset.py:docstring of sage.categories.homset.Hom, line 174.)
Todo
Refactor during the upcoming homset cleanup.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/homset.py:docstring of sage.categories.homset.Homset.element_class_set_morphism, line 8.)
Todo
This category should be a CategoryWithAxiom, the axiom specifying the compability between the magma and module structure.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/magmatic_algebras.py:docstring of sage.categories.magmatic_algebras.MagmaticAlgebras.additional_structure, line 9.)
Todo
Clarify the distinction, if any, with BiModules(R, R).
In particular, if is a commutative ring (e.g. a field),
some pieces of the code possibly assume that
is a
symmetric `R`-`R`-bimodule:
Make sure that non symmetric modules are properly supported by all the code, and advertise it.
Make sure that non commutative rings are properly supported by all the code, and advertise it.
Add support for base semirings.
Implement a FreeModules(R) category, when so prompted by a concrete use case: e.g. modeling a free module with several bases (using Sets.SubcategoryMethods.Realizations()) or with an atlas of local maps (see e.g. trac ticket #15916).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules.py:docstring of sage.categories.modules.Modules, line 57.)
Todo
Generalize this so that any homset category of a full subcategory of modules over a base ring is a category over this base ring.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules.py:docstring of sage.categories.modules.Modules.Homsets.base_ring, line 6.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules.py:docstring of sage.categories.modules.Modules.SubcategoryMethods.Graded, line 18.)
Todo
handle base being a category
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules.py:docstring of sage.categories.modules.Modules.SubcategoryMethods.base_ring, line 6.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules.py:docstring of sage.categories.modules.Modules.additional_structure, line 8.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules_with_basis.py:docstring of sage.categories.modules_with_basis.DiagonalModuleMorphism, line 23.)
Todo
End(X) is an algebra.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules_with_basis.py:docstring of sage.categories.modules_with_basis.ModulesWithBasis, line 85.)
Todo
Should codomain be self by default in the diagonal and triangular cases?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules_with_basis.py:docstring of sage.categories.modules_with_basis.ModulesWithBasis.ParentMethods.module_morphism, line 189.)
Todo
Extract a method to linearize a multilinear morphism, and delegate the work there.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules_with_basis.py:docstring of sage.categories.modules_with_basis.ModulesWithBasis.TensorProducts.ElementMethods.apply_multilinear_morphism, line 99.)
Todo
This has nothing to do here!!! Should there be a library for pointwise operations on functions somewhere in Sage?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/modules_with_basis.py:docstring of sage.categories.modules_with_basis.pointwise_inverse_function, line 21.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/objects.py:docstring of sage.categories.objects.Objects.SubcategoryMethods.Homsets, line 46.)
Todo
shall we accept only permutations with finite support or not?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/permutation_groups.py:docstring of sage.categories.permutation_groups.PermutationGroups, line 11.)
Todo
Give a concrete example, typically using ElementWrapper.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/primer.py:docstring of sage.categories.primer, line 278.)
Todo
Improve the printing of functorial constructions and joins to raise this potentially dangerous ambiguity.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/primer.py:docstring of sage.categories.primer, line 1458.)
Todo
Add an optional argument to allow for:
sage: Realizations(A, category = Blahs()) # todo: not implemented
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/realizations.py:docstring of sage.categories.realizations.Realizations, line 39.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/regular_crystals.py:docstring of sage.categories.regular_crystals.RegularCrystals.additional_structure, line 9.)
Todo
(see: http://trac.sagemath.org/sage_trac/wiki/CategoriesRoadMap)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/rings.py:docstring of sage.categories.rings.Rings, line 27.)
Todo
Make Schemes() a singleton category (and remove Schemes from the workaround in category_types.Category_over_base._test_category_over_bases()).
This is currently incompatible with the dispatching below.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/schemes.py:docstring of sage.categories.schemes.Schemes, line 17.)
Todo
What category structure is there on Homsets of schemes?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/schemes.py:docstring of sage.categories.schemes.Schemes.Homsets.extra_super_categories, line 8.)
Todo
check that the result above is correct now
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/schemes.py:docstring of sage.categories.schemes.Schemes.Homsets.extra_super_categories, line 12.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/semigroups.py:docstring of sage.categories.semigroups.Semigroups.ParentMethods.cayley_graph, line 110.)
Todo
Draw the typical commutative diagram.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/sets_cat.py:docstring of sage.categories.sets_cat.Sets.SubcategoryMethods.Subquotients, line 27.)
Todo
use a more interesting example, like .
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/sets_cat.py:docstring of sage.categories.sets_cat.Sets.SubcategoryMethods.Subquotients, line 121.)
Todo
Fix the failing test by making C a singleton category. This will require some fiddling with the assertion in Category_singleton.__classcall__()
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/sets_cat.py:docstring of sage.categories.sets_cat.Sets.WithRealizations.ParentMethods.Realizations, line 14.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/sets_with_grading.py:docstring of sage.categories.sets_with_grading.SetsWithGrading, line 72.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/vector_spaces.py:docstring of sage.categories.vector_spaces.VectorSpaces.additional_structure, line 9.)
Todo
Should this category be a CategoryWithAxiom?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/categories/weyl_groups.py:docstring of sage.categories.weyl_groups.WeylGroups.additional_structure, line 8.)
Todo
Implement multi-parameter Iwahori-Hecke algebras together with their Kazhdan-Lusztig bases. That is, Iwahori-Hecke algebras with (possibly) different parameters for each conjugacy class of simple reflections in the underlying Coxeter group.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/iwahori_hecke_algebra.py:docstring of sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra, line 305.)
Todo
When given “generic parameters” we should return the generic Iwahori-Hecke algebra with these parameters and allow the user to work inside this algebra rather than doing calculations behind the scenes in a copy of the generic Iwahori-Hecke algebra. The main problem is that it is not clear how to recognise when the parameters are “generic”.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/algebras/iwahori_hecke_algebra.py:docstring of sage.algebras.iwahori_hecke_algebra.IwahoriHeckeAlgebra, line 312.)
Todo
Do we want to implement the following syntactic sugar:
with t.clone() as tt:
tt.labels[1,2] = 3 ?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/abstract_tree.py:docstring of sage.combinat.abstract_tree.AbstractLabelledClonableTree.set_label, line 34.)
Todo
It is currently not possible to use LabelledBinaryTree() as a shorthand for LabelledBinaryTree(None) (in analogy to similar syntax in the BinaryTree class).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/binary_tree.py:docstring of sage.combinat.binary_tree.LabelledBinaryTree, line 50.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/combinat.py:docstring of sage.combinat.combinat, line 93.)
Todo
Incorporate this method into the _repr_ for finite Cartan type.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/crystals/alcove_path.py:docstring of sage.combinat.crystals.alcove_path.CrystalOfAlcovePathsElement.integer_sequence, line 4.)
Todo
Better doctest
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/crystals/alcove_path.py:docstring of sage.combinat.crystals.alcove_path.CrystalOfAlcovePathsElement.is_admissible, line 47.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/crystals/crystals.py:docstring of sage.combinat.crystals.crystals, line 97.)
Todo
FIXME:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/crystals/tensor_product.py:docstring of sage.combinat.crystals.tensor_product.CrystalOfTableaux, line 72.)
Todo
Implement finite non-Desarguesian plane as in [We07] and Wikipedia article Non-Desarguesian_plane.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/designs/block_design.py:docstring of sage.combinat.designs.block_design, line 28.)
Todo
Implement DerivedDesign and ComplementaryDesign.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/designs/design_catalog.py:docstring of sage.combinat.designs.design_catalog, line 58.)
Todo
Implement recursive constructions from Buratti “Recursive for difference matrices and relative difference families” (1998) and Jungnickel “Composition theorems for difference families and regular planes” (1978)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/designs/difference_family.py:docstring of sage.combinat.designs.difference_family.difference_family, line 170.)
Todo
The XML data from the designtheory.org database contains a wealth of information about things like automorphism groups, transitivity, cycle type representatives, etc, but none of this data is made available through the current implementation.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/designs/ext_rep.py:docstring of sage.combinat.designs.ext_rep, line 14.)
Todo
extend this to m-Dyck words
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/dyck_word.py:docstring of sage.combinat.dyck_word.CompleteDyckWords_size.random_element, line 11.)
Todo
At the moment, the letters of the alphabets need to be hashable.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/finite_state_machine.py:docstring of sage.combinat.finite_state_machine.FiniteStateMachine.determine_alphabets, line 17.)
Todo
Do the iteration in place to save on copying time
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/integer_list.py:docstring of sage.combinat.integer_list.IntegerListsLex.count, line 7.)
Todo
Placeholder. Implement a proper check.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/integer_list.py:docstring of sage.combinat.integer_list.IntegerListsLexElement.check, line 4.)
Todo
Move this into Cython.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/integer_list.py:docstring of sage.combinat.integer_list.first, line 8.)
Todo
should the order of the arguments n and weight be exchanged to simplify the logic ?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/integer_vector_weighted.py:docstring of sage.combinat.integer_vector_weighted.WeightedIntegerVectors, line 39.)
Todo
Integer vectors should accept max_part as a single argument, and the following should change:
sage: S = IntegerVectorsModPermutationGroup(PermutationGroup([[(1,2,3,4)]]), max_part=12); S.ambient()
Integer vectors
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/integer_vectors_mod_permgroup.py:docstring of sage.combinat.integer_vectors_mod_permgroup.IntegerVectorsModPermutationGroup_with_constraints.ambient, line 10.)
Todo
To study this, it would be more natural to define
interval-posets on arbitrary ordered sets rather than just
on .
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/interval_posets.py:docstring of sage.combinat.interval_posets.TamariIntervalPoset.insertion, line 25.)
Todo
Functionality to add:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/knutson_tao_puzzles.py:docstring of sage.combinat.knutson_tao_puzzles, line 12.)
Todo
This construction holds more generally for prime powers
congruent to
. We should implement these but we
first need to implement Quadratic character for
.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/matrices/hadamard_matrix.py:docstring of sage.combinat.matrices.hadamard_matrix.H1, line 5.)
Todo
This construction holds more generally for prime powers
congruent to
. We should implement these but we
first need to implement Quadratic character for
.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/matrices/hadamard_matrix.py:docstring of sage.combinat.matrices.hadamard_matrix.H2, line 6.)
Todo
Fix the failing test by making C a singleton category. This will require some fiddling with the assertion in Category_singleton.__classcall__()
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.BasesOfQSymOrNCSF, line 14.)
Todo
Generalize this to all graded vector spaces?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.BasesOfQSymOrNCSF.ElementMethods.degree_negation, line 33.)
Todo
Generalize this to all graded vector spaces?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.BasesOfQSymOrNCSF.ParentMethods.degree_negation, line 47.)
Todo
Despite the __repr__, this is NOT an endomorphism!
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.GradedModulesWithInternalProduct.ParentMethods.internal_product, line 34.)
Todo
Despite the __repr__, this is NOT an endomorphism!
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.GradedModulesWithInternalProduct.ParentMethods.itensor, line 34.)
Todo
Despite the __repr__, this is NOT an endomorphism!
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/generic_basis_code.py:docstring of sage.combinat.ncsf_qsym.generic_basis_code.GradedModulesWithInternalProduct.ParentMethods.kronecker_product, line 34.)
Todo
demonstrate how to customize the basis names
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/ncsf.py:docstring of sage.combinat.ncsf_qsym.ncsf.NonCommutativeSymmetricFunctions, line 162.)
Todo
explain the other changes of bases!
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/ncsf.py:docstring of sage.combinat.ncsf_qsym.ncsf.NonCommutativeSymmetricFunctions, line 213.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/ncsf.py:docstring of sage.combinat.ncsf_qsym.ncsf.NonCommutativeSymmetricFunctions, line 259.)
Todo
this could be generalized to any free algebra.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/ncsf.py:docstring of sage.combinat.ncsf_qsym.ncsf.NonCommutativeSymmetricFunctions.MultiplicativeBasesOnPrimitiveElements, line 14.)
Todo
Implement this directly on the monomial basis maybe?
The -matrices are a pain to generate from their
definition, but maybe there is a good algorithm.
If so, the above “further examples” should be moved
to the M-method.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/qsym.py:docstring of sage.combinat.ncsf_qsym.qsym.QuasiSymmetricFunctions.Bases.ElementMethods.internal_coproduct, line 184.)
Todo
Implement this directly on the monomial basis maybe?
The -matrices are a pain to generate from their
definition, but maybe there is a good algorithm.
If so, the above “further examples” should be moved
to the M-method.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/qsym.py:docstring of sage.combinat.ncsf_qsym.qsym.QuasiSymmetricFunctions.Bases.ElementMethods.kronecker_coproduct, line 184.)
Todo
The conversion from the M basis to the HWL basis is currently implemented in the naive way (inverting the base-change matrix in the other direction). This matrix is not triangular (not even after any permutations of the bases), and there could very well be a faster method (the one given by Hazewinkel?).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/qsym.py:docstring of sage.combinat.ncsf_qsym.qsym.QuasiSymmetricFunctions.HazewinkelLambda, line 39.)
Todo
accept an alphabet as input
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ncsf_qsym/qsym.py:docstring of sage.combinat.ncsf_qsym.qsym.QuasiSymmetricFunctions.Monomial.Element.expand, line 14.)
Todo
Reimplement like remove_horizontal_border_strip using IntegerListsLex
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/partition.py:docstring of sage.combinat.partition.Partition.add_horizontal_border_strip, line 15.)
Todo
Check in Knuth AOCP4.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/partition.py:docstring of sage.combinat.partition.Partitions_n.random_element_uniform, line 21.)
Todo
This docstring needs to be fixed. First, the definition does not match the implementation (or the examples). Second, this doesn’t seem to be defined in [GarStan1984] (the descent monomial in their (7.23) is different).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/permutation.py:docstring of sage.combinat.permutation.Permutation.descent_polynomial, line 25.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/posets/linear_extensions.py:docstring of sage.combinat.posets.linear_extensions.LinearExtensionsOfPoset.markov_chain_digraph, line 8.)
Todo
Should the vertices of the diagram have the poset as parent?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/posets/posets.py:docstring of sage.combinat.posets.posets.FinitePoset.hasse_diagram, line 5.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/posets/posets.py:docstring of sage.combinat.posets.posets.FinitePoset.linear_extension, line 49.)
Todo
add tests as in combinat::rankers
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/ranker.py:docstring of sage.combinat.ranker.on_fly, line 27.)
Todo
Implement a direct action of without moving to KR crystals.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/kr_tableaux.py:docstring of sage.combinat.rigged_configurations.kr_tableaux.KirillovReshetikhinTableauxElement.e, line 3.)
Todo
Implement a direct action of without moving to
KR crystals.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/kr_tableaux.py:docstring of sage.combinat.rigged_configurations.kr_tableaux.KirillovReshetikhinTableauxElement.epsilon, line 3.)
Todo
Implement a direct action of without moving to KR crystals.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/kr_tableaux.py:docstring of sage.combinat.rigged_configurations.kr_tableaux.KirillovReshetikhinTableauxElement.f, line 3.)
Todo
Compute without moving to KR crystals.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/kr_tableaux.py:docstring of sage.combinat.rigged_configurations.kr_tableaux.KirillovReshetikhinTableauxElement.phi, line 3.)
Todo
Implement without appealing to tensor product of
KR tableaux.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/rigged_configuration_element.py:docstring of sage.combinat.rigged_configurations.rigged_configuration_element.KRRiggedConfigurationElement.e, line 8.)
Todo
Implement without appealing to tensor product of
KR tableaux.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/rigged_configuration_element.py:docstring of sage.combinat.rigged_configurations.rigged_configuration_element.KRRiggedConfigurationElement.f, line 8.)
Todo
Convert this to using multiplicities (perhaps with a dictionary?)?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/rigged_configurations/rigged_partition.py:docstring of sage.combinat.rigged_configurations.rigged_partition, line 18.)
Todo
add a method set_mutable() as, say, for matrices
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/cartan_type.py:docstring of sage.combinat.root_system.cartan_type, line 205.)
Todo
add a method set_mutable() as, say, for matrices
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/cartan_type.py:docstring of sage.combinat.root_system.cartan_type.CartanType, line 207.)
Todo
add some reducible Cartan types (suggestions?)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/cartan_type.py:docstring of sage.combinat.root_system.cartan_type.CartanTypeFactory.samples, line 50.)
Todo
Add the picture here, once root system plots in the weight lattice will be implemented. In the mean time, the reader may look up the dual picture on Figure 2 of [HST09] which was produced by MuPAD-Combinat.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/cartan_type.py:docstring of sage.combinat.root_system.cartan_type.CartanType_affine.translation_factors, line 131.)
Todo
Add tests for the above assumptions, and also that the
classical operators from
and
coincide.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/hecke_algebra_representation.py:docstring of sage.combinat.root_system.hecke_algebra_representation.CherednikOperatorsEigenvectors, line 39.)
Todo
Add an example where
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/hecke_algebra_representation.py:docstring of sage.combinat.root_system.hecke_algebra_representation.HeckeAlgebraRepresentation.Tw_inverse, line 5.)
Todo
Add more tests
Add tests in type BC affine where the null coroot
can have non trivial coefficient in term of
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/hecke_algebra_representation.py:docstring of sage.combinat.root_system.hecke_algebra_representation.HeckeAlgebraRepresentation.Y_lambdacheck, line 66.)
Todo
At this point, this method is constant. It’s meant as a
starting point for implementing parameters depending on
the node of the Dynkin diagram.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/hecke_algebra_representation.py:docstring of sage.combinat.root_system.hecke_algebra_representation.HeckeAlgebraRepresentation.parameters, line 16.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py:docstring of sage.combinat.root_system.non_symmetric_macdonald_polynomials.NonSymmetricMacdonaldPolynomials, line 15.)
Todo
add his notes in latex
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py:docstring of sage.combinat.root_system.non_symmetric_macdonald_polynomials.NonSymmetricMacdonaldPolynomials, line 735.)
Todo
should this just return in the simply laced case?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py:docstring of sage.combinat.root_system.non_symmetric_macdonald_polynomials.NonSymmetricMacdonaldPolynomials.L_check, line 3.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/non_symmetric_macdonald_polynomials.py:docstring of sage.combinat.root_system.non_symmetric_macdonald_polynomials.NonSymmetricMacdonaldPolynomials.eigenvalue_experimental, line 87.)
Todo
Could we have nice
labels in this graph?(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/plot.py:docstring of sage.combinat.root_system.plot, line 477.)
Todo
Display the periodic orientation by adding a and
a
sign close to the label. Typically by using
the associated root to shift a bit from the vertex
upon which the hyperplane label is attached.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/plot.py:docstring of sage.combinat.root_system.plot.PlotOptions.reflection_hyperplane, line 38.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realization_algebras.py:docstring of sage.combinat.root_system.root_lattice_realization_algebras.Algebras.ParentMethods.demazure_lusztig_operator_on_classical_on_basis, line 12.)
Todo
type free definition (Viviane’s definition uses that we are in the ambient space)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realization_algebras.py:docstring of sage.combinat.root_system.root_lattice_realization_algebras.Algebras.ParentMethods.divided_difference_on_basis, line 8.)
Todo
make this work for Laurent polynomials too
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realization_algebras.py:docstring of sage.combinat.root_system.root_lattice_realization_algebras.Algebras.ParentMethods.from_polynomial, line 26.)
Todo
Choose a good set of Cartan Type to run on. Rank >4 is
too big. But and
are boring.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realization_algebras.py:docstring of sage.combinat.root_system.root_lattice_realization_algebras.Algebras.ParentMethods.twisted_demazure_lusztig_operators, line 75.)
Todo
Investigate why currently does not satisfy
the quadratic relation in type
. This should
hopefuly be fixed when
will have a more
uniform implementation:
sage: cartan_type = CartanType(["BC",1,2])
sage: KL = RootSystem(cartan_type).weight_lattice().algebra(K)
sage: T = KL.twisted_demazure_lusztig_operators(q1,q2, convention="dominant")
sage: T._test_relations()
... tester.assert_(Ti(Ti(x,i,-q2),i,-q1).is_zero()) ...
AssertionError: False is not true
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realization_algebras.py:docstring of sage.combinat.root_system.root_lattice_realization_algebras.Algebras.ParentMethods.twisted_demazure_lusztig_operators, line 92.)
Todo
This implementation is only valid in the root or weight lattice
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realizations.py:docstring of sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ElementMethods.is_parabolic_root, line 7.)
Todo
add a non simply laced example
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realizations.py:docstring of sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.alphacheck, line 17.)
Todo
Provide an option for transparency?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realizations.py:docstring of sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.plot_reflection_hyperplanes, line 65.)
Todo
The result should be an enumerated set, and handle infinite root systems.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_lattice_realizations.py:docstring of sage.combinat.root_system.root_lattice_realizations.RootLatticeRealizations.ParentMethods.roots, line 27.)
Todo
Rename to is_quantum_root
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/root_space.py:docstring of sage.combinat.root_system.root_space.RootSpaceElement.quantum_root, line 13.)
Todo
Lift to CombinatorialFreeModule.Element as canonical_inner_product
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/type_affine.py:docstring of sage.combinat.root_system.type_affine.AmbientSpace.Element.inner_product, line 23.)
Todo
Lift to CombinatorialFreeModule.Element as canonical_inner_product
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/type_affine.py:docstring of sage.combinat.root_system.type_affine.AmbientSpace.Element.scalar, line 23.)
Todo
Factor out this code with the classical ambient space.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/type_affine.py:docstring of sage.combinat.root_system.type_affine.AmbientSpace.coroot_lattice, line 6.)
Todo
Factor out this code with the classical ambient space.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/type_affine.py:docstring of sage.combinat.root_system.type_affine.AmbientSpace.simple_coroot, line 16.)
Todo
Currently subdivide is currently ignored.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/type_reducible.py:docstring of sage.combinat.root_system.type_reducible.CartanType.cartan_matrix, line 6.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/weight_space.py:docstring of sage.combinat.root_system.weight_space.WeightSpaceElement.scalar, line 4.)
Todo
Try to compute this directly without actually calculating the full symmetric and exterior squares.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/weyl_characters.py:docstring of sage.combinat.root_system.weyl_characters.WeylCharacterRing.Element.frobenius_schur_indicator, line 17.)
Todo
implement:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/root_system/weyl_group.py:docstring of sage.combinat.root_system.weyl_group.ClassicalWeylSubgroup, line 26.)
Todo
delete this class once all coercions will be handled by Sage’s coercion model
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/classical.py:docstring of sage.combinat.sf.classical.SymmetricFunctionAlgebra_classical, line 3.)
Todo
Is there a not too difficult way to get the power-sum computations
to work over any ring, not just one with coercion from ?
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/monomial.py:docstring of sage.combinat.sf.monomial.SymmetricFunctionAlgebra_monomial.antipode_by_coercion, line 25.)
Todo
Get rid of said technical “reasons”.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/new_kschur.py:docstring of sage.combinat.sf.new_kschur.kSchur, line 93.)
Todo
to be described
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sf.py:docstring of sage.combinat.sf.sf.SymmetricFunctions, line 644.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sf.py:docstring of sage.combinat.sf.sf.SymmetricFunctions, line 694.)
Todo
Most of the methods in this class are generic (manipulations of morphisms, ...) and should be generalized (or removed)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionAlgebra_generic, line 3.)
Todo
This method is fast on the monomial and the powersum bases, while all other bases get converted to the monomial basis. For most bases, this is probably the quickest way to do, but at least the Schur basis should have a better option. (Quoting from Stanley’s EC2 [STA]: “D. G. Duncan, J. London Math. Soc. 27 (1952), 235-236, or Y. M. Chen, A. M. Garsia, and J. B. Remmel, Contemp. Math. 34 (1984), 109-153”.)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionAlgebra_generic_Element.adams_operation, line 120.)
Todo
This method is fast on the monomial and the powersum bases, while all other bases get converted to the monomial basis. For most bases, this is probably the quickest way to do, but at least the Schur basis should have a better option. (Quoting from Stanley’s EC2 [STA]: “D. G. Duncan, J. London Math. Soc. 27 (1952), 235-236, or Y. M. Chen, A. M. Garsia, and J. B. Remmel, Contemp. Math. 34 (1984), 109-153”.)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionAlgebra_generic_Element.frobenius, line 120.)
Todo
This implementation of the reduced Kronecker product is painfully slow.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionAlgebra_generic_Element.reduced_kronecker_product, line 155.)
Todo
This function is an ugly hack using strings. It should be rewritten as soon as the bases of SymmetricFunctions are put on a more robust and systematic footing.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionsBases.ParentMethods.corresponding_basis_over, line 72.)
Todo
generalize to Modules.Graded.Connected.ParentMethods
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/sf/sfa.py:docstring of sage.combinat.sf.sfa.SymmetricFunctionsBases.ParentMethods.one_basis, line 17.)
Todo
As is, this set is essentially the composition of Compositions(n) (which give the row lengths) and SkewPartition(n, row_lengths=...), and one would want to “inherit” list and cardinality from this composition.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/skew_partition.py:docstring of sage.combinat.skew_partition.SkewPartitions_n, line 15.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/subword.py:docstring of sage.combinat.subword, line 27.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/symmetric_group_representations.py:docstring of sage.combinat.symmetric_group_representations, line 1.)
Todo
Implement semistandard tableau tuples as defined in [DJM].
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/tableau_tuple.py:docstring of sage.combinat.tableau_tuple, line 180.)
Todo
Add link to some thematic tutorial on graphs
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/tutorial.py:docstring of sage.combinat.tutorial, line 17.)
Todo
add link to some tutorial on quotient rings
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/tutorial.py:docstring of sage.combinat.tutorial, line 468.)
Todo
hide the results by default
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/combinat/tutorial.py:docstring of sage.combinat.tutorial, line 1158.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis, line 123.)
Todo
Ask OEIS for a keyword ensuring that a sequence is infinite.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.is_finite, line 12.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.natural_object, line 18.)
Todo
ask OEIS to add a “Sage program” field in the database ;)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.programs, line 12.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis, line 123.)
Todo
Ask OEIS for a keyword ensuring that a sequence is infinite.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.is_finite, line 12.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.natural_object, line 18.)
Todo
ask OEIS to add a “Sage program” field in the database ;)
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/databases/oeis.py:docstring of sage.databases.oeis.OEISSequence.programs, line 12.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/dynamics/interval_exchanges/template.py:docstring of sage.dynamics.interval_exchanges.template, line 9.)
Todo
This function could probably be made faster.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/rings/algebraic_closure_finite_field.py:docstring of sage.rings.algebraic_closure_finite_field.AlgebraicClosureFiniteFieldElement.nth_root, line 12.)
Todo
When trac ticket #10963 is merged we should remove that method and set the category to infinite fields (i.e. Fields().Infinite()).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/rings/algebraic_closure_finite_field.py:docstring of sage.rings.algebraic_closure_finite_field.AlgebraicClosureFiniteField_generic.cardinality, line 5.)
Todo
When trac ticket #10963 is merged we should remove that method and set the category to infinite fields (i.e. Fields().Infinite()).
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/rings/algebraic_closure_finite_field.py:docstring of sage.rings.algebraic_closure_finite_field.AlgebraicClosureFiniteField_generic.is_finite, line 3.)
Todo
Implement associated Legendre polynomials and Zernike polynomials. (Neither is in Maxima.) Wikipedia article Associated_Legendre_polynomials Wikipedia article Zernike_polynomials
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/functions/orthogonal_polys.py:docstring of sage.functions.orthogonal_polys, line 261.)
Todo
Eventually, category should be Sets by default.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/geometry/lattice_polytope.py:docstring of sage.geometry.lattice_polytope.SetOfAllLatticePolytopesClass, line 50.)
Todo
Make it possible to draw Schlegel diagram for 4-polytopes.
sage: P=Polyhedron(vertices=[[1,1,0,0],[1,2,0,0],[2,1,0,0],[0,0,1,0],[0,0,0,1]])
sage: P
A 4-dimensional polyhedron in ZZ^4 defined as the convex hull of 5 vertices
sage: P.projection().tikz()
Traceback (most recent call last):
...
NotImplementedError: The polytope has to live in 2 or 3 dimensions.
Make it possible to draw 3-polytopes living in higher dimension.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/geometry/polyhedron/plot.py:docstring of sage.geometry.polyhedron.plot.Projection.tikz, line 88.)
Todo
This method sequentially tests each of the forbidden subgraphs in order to know whether the graph is a line graph, which is a very slow method. It could eventually be replaced by root_graph() when this method will not require an exponential time to run on general graphs anymore (see its documentation for more information on this problem)... and if it can be improved to return negative certificates !
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/graphs/graph.py:docstring of sage.graphs.graph.Graph.is_line_graph, line 17.)
Todo
Find a beautiful layout for this beautiful graph.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/graphs/graph_generators.py:docstring of sage.graphs.graph_generators.GraphGenerators.SchlaefliGraph, line 14.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/graphs/graph_plot_js.py:docstring of sage.graphs.graph_plot_js, line 54.)
Todo
Technical things:
Long-term stuff:
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/graphs/isgci.py:docstring of sage.graphs.isgci, line 282.)
Todo
This method sequentially tests each of the forbidden subgraphs in order to know whether the graph is a line graph, which is a very slow method. It could eventually be replaced by root_graph() when this method will not require an exponential time to run on general graphs anymore (see its documentation for more information on this problem)... and if it can be improved to return negative certificates !
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/graphs/line_graph.py:docstring of sage.graphs.line_graph.is_line_graph, line 17.)
Todo
This code could probably be made more efficient by using FLINT polynomials and being written in Cython, using an array of fmpz_poly_t pointers or something... Right now just about the whole complement optimization is written in Python, and could be easily sped up.
(The original entry is located in docstring of sage.graphs.matchpoly.complete_poly, line 7.)
Todo
Make subdivision work correctly on multiple factors.
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/homology/chain_complex.py:docstring of sage.homology.chain_complex.ChainComplex_class.tensor, line 32.)
Todo
(The original entry is located in docstring of sage.misc.c3_controlled.CmpKey, line 45.)
Todo
Make the following work nicely:
sage: b.x? # todo: not implemented
sage: b.x?? # todo: not implemented
(The original entry is located in docstring of sage.misc.lazy_attribute.lazy_attribute, line 175.)
Todo
Improve the error message:
sage: B().unimplemented_A # todo: not implemented
Traceback (most recent call last):
...
AttributeError: 'super' object has no attribute 'unimplemented_A'
(The original entry is located in docstring of sage.misc.lazy_attribute.lazy_attribute, line 387.)
Todo
(The original entry is located in /usr/lib64/python2.7/site-packages/sage/misc/profiler.py:docstring of sage.misc.profiler.Profiler, line 40.)
Todo
Working with sparse matrices should usually give faster results, but with the current implementation it actually works slower. There should be a way to improve performance with regards to this.
(The original entry is located in docstring of sage.rings.polynomial.multi_polynomial_ring_generic.MPolynomialRing_generic.macaulay_resultant, line 39.)