Skip to main content

Sums Of Product

SoPy

[ pypi.org ] PyPI Downloads

Sums of Products for data and science

Conceptual

Let multidimensional distributions be handled in the new-old fashion way... Methods as old as the census and modernized by Beylkin and Mohlenkamp 2005 for physics. Wherein is a suite of code to hold and decompose SoP vectors. We engage with the word decomposition not as a dimensional reduction, but as a canonical-rank reducer. See, data already is in SoP form, why write it in dense hyper dimensions?

Since 2018, we have been aware that Coulomb and other functions can be written in SoP ways, but thats the published secret sauce. We simply are publishing our best understanding of how the SoP vector should be decomposed. Including some tricks which have not seen the light of day before that fundamentally improve the process, see Fibonacci.

Recent additions to this package allow you to treat your data, gaussians, as operators; or compute the multiplication of exp_i-k^X by your dataset while maintaining separated dimensions!

Expect a paper to be published when time can be found to do so.

How to install

pip install sopy-quantum

import sopy as sp

New features

pySCF

Take an arbitrary electronic structure system defined in pySCF, you can put it into SoP 3D space. A stage towards various applications. Go to examples/pySCF_wavefunction.ipynb to follow my logic.

Fourier Transform

The work here, should not fall into the trap of native-Fast Fourier Transform. Multiply an arbritary vector by exp(i k X^). Using really sophisicated operator logic embedded in recent work.

Gaussian Blurr Transform

Multiply an arbritary vector by exp(-0.5 alpha (X^-position)**2 ). Using really sophisicated operator logic embedded in recent work.

Tensorly interface

Unclear when its appropriate, but you can use examples/ext to expand SoP into space and use Tensorly to reduce it again.

Functions

First set a lattice,

lattices = 2*[np.linspace(-10,10,100)]

2D gaussian at (2,6) with sigmas (1,1), and polynominal 0,0

u = sp.Vector().gaussian(a = 1,positions = [2,6],sigmas = [1,1],ls = [0,0], lattices = lattices)

2D gaussian at (0.1,-0.6) with sigmas (1,1), and polynominal 0,0

k = sp.Vector().gaussian(a = 1,positions = [0.1,-0.6],sigmas = [1,1],ls = [0,0], lattices = lattices)

2D gaussian at (-1,-2) with sigmas (1,1), and polynominal 1,1

k = k.gaussian(a = 2,positions = [-1,-2],sigmas = [1,1],ls = [1,1], lattices = lattices)

2D gaussian at (-2,-5) with sigmas (1,1), and polynominal 1,0

v = k.copy().gaussian(a = 2,positions = [-2,-5],sigmas = [1,1],ls = [1,0], lattices = lattices)

Multiply operand by exp_i(k ^X ) for k = (1,0)

cv = sp.Operand( u, sp.Vector() )

cv.exp_i([1,0]).trace()

linear dependence factor...

alpha = 0

take v and remove k from it, and decompose into vector u ; outputing to vector q

q = u.learn(v-k,  alpha = alpha, iterate = 1)

Get the Euclidean distance from vector v-k and q

q.dist(v-k)

Reduce v with Fibonacci procedure

v.Fibonacci(ambiguity_rate=0).dist(v)

The ambiguity rate will keep things real under recursive iterations driven by external programs.

How to Contribute

  • Develop amplitude/component to various non-local resources
  • Engage with Quantum Galaxies deploying matrices in separated dimensions

Paper in preprint

[ Cardinal Fourier Transform: A Dimensionally Separated Alternative to the FFT ] (https://zenodo.org/records/18896541)

Contact Info

SoPy Website

Quantum Galaxies Articles

Quantum Galaxies Corporation

Metadata

Release files for sopy-quantum 2.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sopy-quantum 2.0.5
File Size Uploaded
sopy_quantum-2.0.5.tar.gz 24.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sopy-quantum 2.0.5
File Interpreter ABI Platform
sopy_quantum-2.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 48.6 kB

Release files / sopy_quantum-2.0.5.tar.gz

Download URL sopy_quantum-2.0.5.tar.gz
Size 24.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d8aca25f5e290d1ec4360980f36ddc929265c41075585dee00d203f0e4cc4ae0
BLAKE2b-256 checksum
How to use checksums
4d0dd0bb46776611c548bbfe15a5201c5a3e51f4afa64507ff108b95a2aea8e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / sopy_quantum-2.0.5-py3-none-any.whl

Download URL sopy_quantum-2.0.5-py3-none-any.whl
Size 24.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e7a083210f0bcf19a54c54e20a26087be7f0a659b6110ceefbc0141593a5fb9c
BLAKE2b-256 checksum
How to use checksums
46c019bb67472c5b52204fc3f3d0a7a88e4e9791268a44668c9b378ad7406470
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

2.0.5 This release

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.0

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.7.1

2 release files

1.6.0

2 release files

1.4.0

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

1 release file

1.2.3

1 release file

1.2.1

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page