]> gitweb.michael.orlitzky.com - sage.d.git/log
sage.d.git
3 years agoeja: remove more completed TODO items.
Michael Orlitzky [Thu, 11 Mar 2021 00:47:29 +0000 (19:47 -0500)]
eja: remove more completed TODO items.

3 years agoeja: fix tests for new random_eja() structure.
Michael Orlitzky [Thu, 11 Mar 2021 00:40:26 +0000 (19:40 -0500)]
eja: fix tests for new random_eja() structure.

3 years agoeja: rework the random_eja() bounds in terms of dimension.
Michael Orlitzky [Thu, 11 Mar 2021 00:06:46 +0000 (19:06 -0500)]
eja: rework the random_eja() bounds in terms of dimension.

3 years agoeja: more cached charpoly coefficients.
Michael Orlitzky [Wed, 10 Mar 2021 23:04:25 +0000 (18:04 -0500)]
eja: more cached charpoly coefficients.

3 years agoeja: fix missing test import.
Michael Orlitzky [Wed, 10 Mar 2021 19:30:40 +0000 (14:30 -0500)]
eja: fix missing test import.

3 years agoeja: more charpoly coefficient caching.
Michael Orlitzky [Wed, 10 Mar 2021 19:01:48 +0000 (14:01 -0500)]
eja: more charpoly coefficient caching.

3 years agoeja: cache the charpoly coefficients for the AlbertEJA.
Michael Orlitzky [Wed, 10 Mar 2021 18:31:53 +0000 (13:31 -0500)]
eja: cache the charpoly coefficients for the AlbertEJA.

3 years agoeja: remove the cached product_on_basis() TODO.
Michael Orlitzky [Wed, 10 Mar 2021 00:08:47 +0000 (19:08 -0500)]
eja: remove the cached product_on_basis() TODO.

Storing the multiplication table in a list is actually faster than the
@cached_method dict lookup. I tried it. In general, l[i][j] is about
twice as fast as d[(i,j)] for a nested list "l" and dict "d".

3 years agoeja: factor out MatrixEJA initialization.
Michael Orlitzky [Tue, 9 Mar 2021 23:51:29 +0000 (18:51 -0500)]
eja: factor out MatrixEJA initialization.

3 years agoeja: remove a completed TODO.
Michael Orlitzky [Tue, 9 Mar 2021 21:52:57 +0000 (16:52 -0500)]
eja: remove a completed TODO.

3 years agoeja: optionally pass matrix space into FDEJA instead of guessing it.
Michael Orlitzky [Tue, 9 Mar 2021 21:22:16 +0000 (16:22 -0500)]
eja: optionally pass matrix space into FDEJA instead of guessing it.

3 years agomatrix_algebra: use "[]" for trivial matrices and fix a test.
Michael Orlitzky [Tue, 9 Mar 2021 21:21:40 +0000 (16:21 -0500)]
matrix_algebra: use "[]" for trivial matrices and fix a test.

3 years agoeja: fix representation of "zero" in MatrixAlgebra.
Michael Orlitzky [Tue, 9 Mar 2021 19:59:20 +0000 (14:59 -0500)]
eja: fix representation of "zero" in MatrixAlgebra.

3 years agoeja: fix some tests, speed improvements.
Michael Orlitzky [Tue, 9 Mar 2021 17:04:37 +0000 (12:04 -0500)]
eja: fix some tests, speed improvements.

3 years agoeja: remove completed TODO.
Michael Orlitzky [Tue, 9 Mar 2021 16:02:23 +0000 (11:02 -0500)]
eja: remove completed TODO.

3 years agomatrix_algebra: fix element construction.
Michael Orlitzky [Tue, 9 Mar 2021 16:02:04 +0000 (11:02 -0500)]
matrix_algebra: fix element construction.

3 years agomatrix_algebra: add _entry_algebra_element_to_vector() method.
Michael Orlitzky [Tue, 9 Mar 2021 15:15:48 +0000 (10:15 -0500)]
matrix_algebra: add _entry_algebra_element_to_vector() method.

3 years agomatrix_algebra: put basis in the usual (row,column) order.
Michael Orlitzky [Tue, 9 Mar 2021 06:23:48 +0000 (01:23 -0500)]
matrix_algebra: put basis in the usual (row,column) order.

3 years agoeja: add a TODO for the morning.
Michael Orlitzky [Tue, 9 Mar 2021 05:37:13 +0000 (00:37 -0500)]
eja: add a TODO for the morning.

3 years agoeja: refactor all matrix classes upwards (note: everything broken).
Michael Orlitzky [Tue, 9 Mar 2021 04:58:39 +0000 (23:58 -0500)]
eja: refactor all matrix classes upwards (note: everything broken).

3 years agoeja: eliminate remaining real-embeddings.
Michael Orlitzky [Tue, 9 Mar 2021 03:31:07 +0000 (22:31 -0500)]
eja: eliminate remaining real-embeddings.

3 years agoeja: undo overzealous hack in _all2list; the bug was elsewhere.
Michael Orlitzky [Tue, 9 Mar 2021 03:04:15 +0000 (22:04 -0500)]
eja: undo overzealous hack in _all2list; the bug was elsewhere.

3 years agohurwitz: fix Hurwitz matrix algebra generators.
Michael Orlitzky [Tue, 9 Mar 2021 03:02:25 +0000 (22:02 -0500)]
hurwitz: fix Hurwitz matrix algebra generators.

3 years agohurwitz: make entry algebras "configurable."
Michael Orlitzky [Tue, 9 Mar 2021 02:43:34 +0000 (21:43 -0500)]
hurwitz: make entry algebras "configurable."

3 years agohurwitz: add ComplexMatrixAlgebra.
Michael Orlitzky [Tue, 9 Mar 2021 02:21:28 +0000 (21:21 -0500)]
hurwitz: add ComplexMatrixAlgebra.

3 years agoeja: fix a quaternion test.
Michael Orlitzky [Mon, 8 Mar 2021 21:34:30 +0000 (16:34 -0500)]
eja: fix a quaternion test.

3 years agoeja: don't real-embed quaternion matrices.
Michael Orlitzky [Mon, 8 Mar 2021 21:00:31 +0000 (16:00 -0500)]
eja: don't real-embed quaternion matrices.

3 years agoReorganize the Hurwitz (matrix) algebra stuff.
Michael Orlitzky [Mon, 8 Mar 2021 19:51:45 +0000 (14:51 -0500)]
Reorganize the Hurwitz (matrix) algebra stuff.

3 years agooctonions: add QuaternionMatrixAlgebra; prepare for rename...
Michael Orlitzky [Mon, 8 Mar 2021 16:30:08 +0000 (11:30 -0500)]
octonions: add QuaternionMatrixAlgebra; prepare for rename...

3 years agoeja: minor update to HadamardEJA docs.
Michael Orlitzky [Mon, 8 Mar 2021 16:29:54 +0000 (11:29 -0500)]
eja: minor update to HadamardEJA docs.

3 years agoeja: make OctonionHermitianEJAs RationalBasisEJAs.
Michael Orlitzky [Sun, 7 Mar 2021 06:28:45 +0000 (01:28 -0500)]
eja: make OctonionHermitianEJAs RationalBasisEJAs.

3 years agoeja: update an existing TODO.
Michael Orlitzky [Sun, 7 Mar 2021 05:53:02 +0000 (00:53 -0500)]
eja: update an existing TODO.

3 years agoeja: add the AlbertEJA class.
Michael Orlitzky [Sun, 7 Mar 2021 05:10:07 +0000 (00:10 -0500)]
eja: add the AlbertEJA class.

3 years agoeja: remove the Octonions from the TODO.
Michael Orlitzky [Sat, 6 Mar 2021 22:41:43 +0000 (17:41 -0500)]
eja: remove the Octonions from the TODO.

3 years agoeja: enable (dimension one) Octonion algebras in random_eja().
Michael Orlitzky [Sat, 6 Mar 2021 22:40:53 +0000 (17:40 -0500)]
eja: enable (dimension one) Octonion algebras in random_eja().

3 years agoeja: add OctonionHermitianEJA to the docs.
Michael Orlitzky [Sat, 6 Mar 2021 18:40:10 +0000 (13:40 -0500)]
eja: add OctonionHermitianEJA to the docs.

3 years agoeja: add the AlbertAlgebra to the TODO.
Michael Orlitzky [Sat, 6 Mar 2021 18:39:45 +0000 (13:39 -0500)]
eja: add the AlbertAlgebra to the TODO.

3 years agoeja: remove the (completed) Cartesian product TODO.
Michael Orlitzky [Sat, 6 Mar 2021 18:35:33 +0000 (13:35 -0500)]
eja: remove the (completed) Cartesian product TODO.

3 years agoeja: remove a completed TODO.
Michael Orlitzky [Sat, 6 Mar 2021 18:34:55 +0000 (13:34 -0500)]
eja: remove a completed TODO.

3 years agoeja: add a randomly-failing test to the TODO.
Michael Orlitzky [Sat, 6 Mar 2021 18:33:58 +0000 (13:33 -0500)]
eja: add a randomly-failing test to the TODO.

3 years agoeja: fix matrix_space() with underlying MatrixAlgebras.
Michael Orlitzky [Sat, 6 Mar 2021 17:09:11 +0000 (12:09 -0500)]
eja: fix matrix_space() with underlying MatrixAlgebras.

3 years agoeja: fix gram_schmidt doctests.
Michael Orlitzky [Sat, 6 Mar 2021 16:11:38 +0000 (11:11 -0500)]
eja: fix gram_schmidt doctests.

3 years agooctonions: add a test for Cartesian products.
Michael Orlitzky [Sat, 6 Mar 2021 14:30:24 +0000 (09:30 -0500)]
octonions: add a test for Cartesian products.

3 years agoeja: disentangle RationalBasisEJA from ConcreteEJA.
Michael Orlitzky [Thu, 4 Mar 2021 23:39:36 +0000 (18:39 -0500)]
eja: disentangle RationalBasisEJA from ConcreteEJA.

3 years agoeja: improve a gram_schmidt() error message.
Michael Orlitzky [Thu, 4 Mar 2021 22:43:59 +0000 (17:43 -0500)]
eja: improve a gram_schmidt() error message.

3 years agoeja: unbreak the trace_inner_product() for MatrixEJAs.
Michael Orlitzky [Thu, 4 Mar 2021 15:20:46 +0000 (10:20 -0500)]
eja: unbreak the trace_inner_product() for MatrixEJAs.

3 years agoeja: add some more octonion tests.
Michael Orlitzky [Thu, 4 Mar 2021 02:22:02 +0000 (21:22 -0500)]
eja: add some more octonion tests.

3 years agoeja: fix an octonion EJA test.
Michael Orlitzky [Wed, 3 Mar 2021 21:42:34 +0000 (16:42 -0500)]
eja: fix an octonion EJA test.

3 years agoeja: fix the matrix EJA trace inner-product.
Michael Orlitzky [Wed, 3 Mar 2021 20:03:18 +0000 (15:03 -0500)]
eja: fix the matrix EJA trace inner-product.

3 years agoeja: fix the basis for the octonion matrix algebra.
Michael Orlitzky [Wed, 3 Mar 2021 16:27:28 +0000 (11:27 -0500)]
eja: fix the basis for the octonion matrix algebra.

3 years agomatrix_algebra: rename __repr__ to _repr_ and fix a multiplication bug.
Michael Orlitzky [Wed, 3 Mar 2021 16:22:30 +0000 (11:22 -0500)]
matrix_algebra: rename __repr__ to _repr_ and fix a multiplication bug.

3 years agoeja: change OctonionMatrixAlgebra paramater field -> scalars.
Michael Orlitzky [Wed, 3 Mar 2021 16:21:15 +0000 (11:21 -0500)]
eja: change OctonionMatrixAlgebra paramater field -> scalars.

3 years agooctonions: use Hurwitz subclass for the matrix algebra.
Michael Orlitzky [Wed, 3 Mar 2021 15:31:25 +0000 (10:31 -0500)]
octonions: use Hurwitz subclass for the matrix algebra.

3 years agomatrix_algebra: implement one() dynamically.
Michael Orlitzky [Wed, 3 Mar 2021 15:16:42 +0000 (10:16 -0500)]
matrix_algebra: implement one() dynamically.

3 years agomatrix_algebra: factor out Hurwitz subclass.
Michael Orlitzky [Wed, 3 Mar 2021 15:11:22 +0000 (10:11 -0500)]
matrix_algebra: factor out Hurwitz subclass.

3 years agoeja: begin adding OctonionHermitianEJA.
Michael Orlitzky [Wed, 3 Mar 2021 13:40:16 +0000 (08:40 -0500)]
eja: begin adding OctonionHermitianEJA.

3 years agoeja: factor out a class for real-embedded matrices.
Michael Orlitzky [Wed, 3 Mar 2021 13:38:41 +0000 (08:38 -0500)]
eja: factor out a class for real-embedded matrices.

3 years agooctonions: alias abs() to norm().
Michael Orlitzky [Wed, 3 Mar 2021 13:37:21 +0000 (08:37 -0500)]
octonions: alias abs() to norm().

3 years agomatrix_algebra: use simpler indices.
Michael Orlitzky [Wed, 3 Mar 2021 12:41:24 +0000 (07:41 -0500)]
matrix_algebra: use simpler indices.

Using cartesian_product() and FiniteEnumeratedSet for my indices was
obscuring the foo.basis() output.

3 years agomatrix_algebra: fix conditional categories.
Michael Orlitzky [Wed, 3 Mar 2021 12:41:07 +0000 (07:41 -0500)]
matrix_algebra: fix conditional categories.

3 years agoeja: add another _all2list doctest.
Michael Orlitzky [Wed, 3 Mar 2021 12:40:46 +0000 (07:40 -0500)]
eja: add another _all2list doctest.

3 years agoeja: fix _all2list() bug introduced in previous commit.
Michael Orlitzky [Wed, 3 Mar 2021 04:55:54 +0000 (23:55 -0500)]
eja: fix _all2list() bug introduced in previous commit.

3 years agoeja: refactor _all2list to support forthcoming matrix algebras.
Michael Orlitzky [Wed, 3 Mar 2021 04:45:48 +0000 (23:45 -0500)]
eja: refactor _all2list to support forthcoming matrix algebras.

3 years agomatrix_algebra: factor out a generic matrix algebra class.
Michael Orlitzky [Tue, 2 Mar 2021 22:25:03 +0000 (17:25 -0500)]
matrix_algebra: factor out a generic matrix algebra class.

3 years agoeja: make the TODO list longer once more.
Michael Orlitzky [Tue, 2 Mar 2021 22:24:46 +0000 (17:24 -0500)]
eja: make the TODO list longer once more.

3 years agooctonions: use more generic variable names in a few places.
Michael Orlitzky [Tue, 2 Mar 2021 20:53:30 +0000 (15:53 -0500)]
octonions: use more generic variable names in a few places.

3 years agooctonions: rename octonions() accessor to entry_algebra().
Michael Orlitzky [Tue, 2 Mar 2021 20:44:11 +0000 (15:44 -0500)]
octonions: rename octonions() accessor to entry_algebra().

This entire class can be made more generic. Here's phase one.

3 years agoeja: don't mess with the user's basis.
Michael Orlitzky [Tue, 2 Mar 2021 20:35:08 +0000 (15:35 -0500)]
eja: don't mess with the user's basis.

This is a pre-pre-prerequisite for implementing the octonion algebras.
In a generic matrix algebra, the scalar ring may not be the same ring
that the entries of the matrix comes from.

3 years agoeja: update the design document.
Michael Orlitzky [Tue, 2 Mar 2021 19:15:27 +0000 (14:15 -0500)]
eja: update the design document.

3 years agooctonions: add list() method for octonion matrices.
Michael Orlitzky [Tue, 2 Mar 2021 16:45:56 +0000 (11:45 -0500)]
octonions: add list() method for octonion matrices.

3 years agooctonions: rename to_list() -> to_nested_list().
Michael Orlitzky [Tue, 2 Mar 2021 16:20:53 +0000 (11:20 -0500)]
octonions: rename to_list() -> to_nested_list().

3 years agoeja: update the TODO.
Michael Orlitzky [Tue, 2 Mar 2021 16:16:36 +0000 (11:16 -0500)]
eja: update the TODO.

3 years agooctonions: add is_hermitian() for octonion matrices.
Michael Orlitzky [Tue, 2 Mar 2021 16:14:30 +0000 (11:14 -0500)]
octonions: add is_hermitian() for octonion matrices.

3 years agooctonions: add matrix_space() method for elements and _repr_ for parents.
Michael Orlitzky [Tue, 2 Mar 2021 15:20:02 +0000 (10:20 -0500)]
octonions: add matrix_space() method for elements and _repr_ for parents.

3 years agooctonions: replace yesterday's hacky octonion matrices with the real thing.
Michael Orlitzky [Tue, 2 Mar 2021 15:12:56 +0000 (10:12 -0500)]
octonions: replace yesterday's hacky octonion matrices with the real thing.

3 years agooctonions: begin adding OctonionMatrix pseudo-matrix class.
Michael Orlitzky [Tue, 2 Mar 2021 04:50:31 +0000 (23:50 -0500)]
octonions: begin adding OctonionMatrix pseudo-matrix class.

3 years agoeja: add another TODO, technically for the octonions...
Michael Orlitzky [Tue, 2 Mar 2021 04:33:14 +0000 (23:33 -0500)]
eja: add another TODO, technically for the octonions...

3 years agooctonions: add Cayley-Dickson representation.
Michael Orlitzky [Tue, 2 Mar 2021 03:32:21 +0000 (22:32 -0500)]
octonions: add Cayley-Dickson representation.

3 years agoNew module mjo.octonions implementing the algebra of Octonions().
Michael Orlitzky [Mon, 1 Mar 2021 20:06:34 +0000 (15:06 -0500)]
New module mjo.octonions implementing the algebra of Octonions().

3 years agoeja: use "b" as the default prefix.
Michael Orlitzky [Mon, 1 Mar 2021 15:39:50 +0000 (10:39 -0500)]
eja: use "b" as the default prefix.

3 years agoeja: remove an unused import.
Michael Orlitzky [Mon, 1 Mar 2021 15:38:17 +0000 (10:38 -0500)]
eja: remove an unused import.

3 years agoeja: speed up minimal_polynomial(), in theory.
Michael Orlitzky [Mon, 1 Mar 2021 04:28:55 +0000 (23:28 -0500)]
eja: speed up minimal_polynomial(), in theory.

3 years agoeja: update the TODO.
Michael Orlitzky [Mon, 1 Mar 2021 03:20:13 +0000 (22:20 -0500)]
eja: update the TODO.

3 years agoeja: massively speed up the trace inner-product in matrix algebras.
Michael Orlitzky [Sun, 28 Feb 2021 21:43:02 +0000 (16:43 -0500)]
eja: massively speed up the trace inner-product in matrix algebras.

3 years agoeja: allow Cartesian products to be returned from random_eja().
Michael Orlitzky [Sun, 28 Feb 2021 14:50:37 +0000 (09:50 -0500)]
eja: allow Cartesian products to be returned from random_eja().

3 years agoeja: use the new deep change_ring() to clean things up.
Michael Orlitzky [Sat, 27 Feb 2021 23:29:29 +0000 (18:29 -0500)]
eja: use the new deep change_ring() to clean things up.

3 years agoeja: speed up the double-subalgebra test by using QQ.
Michael Orlitzky [Sat, 27 Feb 2021 23:27:41 +0000 (18:27 -0500)]
eja: speed up the double-subalgebra test by using QQ.

3 years agoeja: add a deep change_ring() utility function.
Michael Orlitzky [Sat, 27 Feb 2021 23:27:26 +0000 (18:27 -0500)]
eja: add a deep change_ring() utility function.

3 years agoeja: complete the CFM_CartesianProduct purge.
Michael Orlitzky [Sat, 27 Feb 2021 16:23:50 +0000 (11:23 -0500)]
eja: complete the CFM_CartesianProduct purge.

3 years agoeja: begin dropping CFM_CartesianProduct, tests all broken.
Michael Orlitzky [Sat, 27 Feb 2021 05:02:19 +0000 (00:02 -0500)]
eja: begin dropping CFM_CartesianProduct, tests all broken.

3 years agoeja: more tests/examples.
Michael Orlitzky [Fri, 26 Feb 2021 18:30:28 +0000 (13:30 -0500)]
eja: more tests/examples.

3 years agoeja: fix two more test typos.
Michael Orlitzky [Fri, 26 Feb 2021 17:34:17 +0000 (12:34 -0500)]
eja: fix two more test typos.

3 years agoeja: typo fix.
Michael Orlitzky [Fri, 26 Feb 2021 16:36:59 +0000 (11:36 -0500)]
eja: typo fix.

3 years agoeja: add future commented-out random_eja() code.
Michael Orlitzky [Fri, 26 Feb 2021 16:29:33 +0000 (11:29 -0500)]
eja: add future commented-out random_eja() code.

3 years agoeja: start fixing Cartesian products of Cartesian products.
Michael Orlitzky [Fri, 26 Feb 2021 16:29:15 +0000 (11:29 -0500)]
eja: start fixing Cartesian products of Cartesian products.

3 years agoeja: partially fix the product_on_basis() in Cartesian products.
Michael Orlitzky [Fri, 26 Feb 2021 15:40:20 +0000 (10:40 -0500)]
eja: partially fix the product_on_basis() in Cartesian products.

3 years agoeja: override product_on_basis() for Cartesian products.
Michael Orlitzky [Fri, 26 Feb 2021 14:08:35 +0000 (09:08 -0500)]
eja: override product_on_basis() for Cartesian products.

3 years agoeja: don't use product_on_basis() implementation details.
Michael Orlitzky [Fri, 26 Feb 2021 14:07:49 +0000 (09:07 -0500)]
eja: don't use product_on_basis() implementation details.

3 years agoeja: simplify some calls to super(...).
Michael Orlitzky [Fri, 26 Feb 2021 02:20:58 +0000 (21:20 -0500)]
eja: simplify some calls to super(...).

3 years agoeja: pass associative=True in some tests.
Michael Orlitzky [Fri, 26 Feb 2021 02:13:24 +0000 (21:13 -0500)]
eja: pass associative=True in some tests.