Skip to main content

A library for doing noncommutative operator algebra

Project description

Commutation Station for Operator Elimination

A proof assistant tool for the busy physicist, to be used in evaluating large commutator expressions. This package does symbolic algebra on noncommutative objects.

The relevant objects for most purposes are CommutatorAlgebra, Expression and Term. An Expression is a list of Terms, together with standard vector space operations.

TODO

  • Export functionality for easier copying into Mathematica or similar
  • Input validation / standardisation of symbol types
  • change fundamental type from strings to objects: restrict purpose of Term to single terms
  • Implement use of anticommutator algebra
  • Scalar subclass of Term (in general, import sympy to simplify scalar coefficients?

Future

Term class functionality

Term.as_latex() Term.as_mathematica() Term.__str__() Constant(Term) does NOT have any built-in multiplier: this nastiness is handled by the new Expression class Expression.as_latex() Expression.as_mathematica() internal structure: `[([1],[t1, t2]),([3/4 ka k2], [t3, t4])] -> t1 t2 + t3 t4

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

commutation-0.0.7.tar.gz (103.1 kB view hashes)

Uploaded Source

Built Distribution

commutation-0.0.7-py3-none-any.whl (20.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page