90 lines
4.9 KiB
Markdown
90 lines
4.9 KiB
Markdown
|
|
# Shadow maps / symmetric states — numerical scripts
|
||
|
|
|
||
|
|
Ausführungsreihenfolge (jedes Skript liest die .npy/.npz-Dateien des vorigen):
|
||
|
|
|
||
|
|
## 1. `1_recoupling_check.py`
|
||
|
|
Baut die zwei Basiszustände (6 Qubits, Singulett-Netzwerke mit den
|
||
|
|
Paarungen (A,D)(B,E)(C,F) bzw. (A,E)(B,F)(C,D)) und deren volle
|
||
|
|
Korrelationstensoren T1, T2 sowie den Kohärenz-Kreuzterm C12.
|
||
|
|
Verifiziert per Brute-Force-Quantensimulation (unabhängig, für mehrere
|
||
|
|
Werte von alpha), dass für JEDE kohärente Überlagerung
|
||
|
|
|Xi(alpha)> = (cos(alpha) psi1 + sin(alpha) psi2)/norm
|
||
|
|
der volle Korrelationstensor exakt
|
||
|
|
T(Xi) = [cos^2(a) T1 + sin^2(a) T2 + cos(a)sin(a) C12] / N2
|
||
|
|
ist -- UND dass diese drei festen Tensoren (unabhängig von alpha UND
|
||
|
|
unabhängig vom gewählten Schnitt!) per einfachem .reshape() sowohl den
|
||
|
|
Schnitt ABC|DEF (27x27) als auch AB|CDEF (9x81) liefern, exakt
|
||
|
|
übereinstimmend mit unabhängiger Brute-Force-Simulation für jeden Schnitt.
|
||
|
|
Output: T1.npy, T2.npy, C12.npy
|
||
|
|
|
||
|
|
## 2. `2_exact_casimir_projectors.py`
|
||
|
|
Baut die exakten SO(3)-Spin-1-Generatoren J_x,J_y,J_z symbolisch mit
|
||
|
|
sympy (Levi-Civita-Definition), verifiziert die so(3)-Kommutatorrelation
|
||
|
|
und J^2=2*I_3 symbolisch exakt. Konstruiert dann den totalen
|
||
|
|
Casimir-Operator J^2_total auf (R^3)^{⊗k} für k=2,3,4 und diagonalisiert
|
||
|
|
ihn (numpy, Hermitesch, maschinengenau). Die Eigenräume zu Eigenwert
|
||
|
|
j(j+1) SIND per Definition die Isotypen-Projektoren -- exakt, ohne
|
||
|
|
Monte-Carlo-Integration über SO(3) wie in einer früheren Version.
|
||
|
|
Output: projectors_exact.npz
|
||
|
|
|
||
|
|
## 3. `3_apply_exact_projectors.py`
|
||
|
|
Wendet die exakten Projektoren auf T1, T2, C12 an (für beliebiges alpha,
|
||
|
|
beliebigen Schnitt) und berechnet ||A_j||_* pro Drehimpulssektor j,
|
||
|
|
für zwei Beispielzustände und beide Schnitte (ABC|DEF und AB|CDEF).
|
||
|
|
Bestätigt exakte Additivität sum_j (2j+1)||A_j||_* = ||M||_*.
|
||
|
|
|
||
|
|
## Kontext
|
||
|
|
Diese Skripte gehören zur Diskussion der Frage, wie die bigraduierte
|
||
|
|
Shadow Map M_S(rho) sich unter globaler kollektiver SO(3)-Symmetrie in
|
||
|
|
Drehimpuls-Isotypen zerlegt (Erweiterung von symmetric_shadow_maps_formal.tex
|
||
|
|
/ shadow_maps_symmetric_states.tex um die Rotationssymmetrie-Seite neben
|
||
|
|
der bereits behandelten S_m-Permutationssymmetrie), und wie sich diese
|
||
|
|
Zerlegung zwischen verschiedenen Schnitten desselben global-invarianten
|
||
|
|
Zustands umrechnen lässt (siehe Skript 1: EIN Tripel (T1,T2,C12) liefert
|
||
|
|
JEDEN Schnitt per reshape, ohne erneute Kontraktion über den vollen
|
||
|
|
Hilbertraum).
|
||
|
|
|
||
|
|
## 4. `4_spherical_basis.py`
|
||
|
|
Baut eine Condon-Shortley-konsistente sphärische Basis {|1,-1>,|1,0>,|1,+1>}
|
||
|
|
für ein einzelnes Spin-1-Bein über Leiteroperatoren (nicht aus einer
|
||
|
|
memorierten Formel zitiert), ausgehend von den exakten Cartesischen
|
||
|
|
Generatoren. Validiert Kommutatoren, Normierung, Jz-Eigenwerte.
|
||
|
|
|
||
|
|
## 5. `5_six_j_recoupling.py`
|
||
|
|
Baut die gekoppelten Basen |p,j,m>_ABC (Baum (AB)C), |y,j,m>_DEF (Baum
|
||
|
|
(DE)F) und |y,j,p,m>_CDEF (Baum (C,(DE)F)) via sympy-Clebsch-Gordan-
|
||
|
|
Koeffizienten. Extrahiert die reduzierten Matrixelemente A_j^(1)[p,y]
|
||
|
|
(Schnitt ABC|DEF) und A_p^(2)[y,j] (Schnitt AB|CDEF) für zwei Zustände
|
||
|
|
und findet empirisch (numerisch bis auf 1e-6, an 15 unabhaengigen
|
||
|
|
Datenpunkten):
|
||
|
|
A_p^(2)[y,j] = -sqrt((2j+1)/(2p+1)) * A_j^(1)[p,y] (unabhaengig von y!)
|
||
|
|
Das ist die 6j-Rekopplungsformel zwischen den A_j-Bloecken zweier
|
||
|
|
verschiedener Schnitte desselben invarianten Tensors -- numerisch
|
||
|
|
bewiesen, aber NICHT sauber gegen eine Standard-Lehrbuch-6j-Formel
|
||
|
|
identifiziert (siehe verify_6j.py / search_6j.py Versuche, beide mit
|
||
|
|
Konventions-Mismatch). Das ist die offene Baustelle.
|
||
|
|
|
||
|
|
## 6. `6_six_j_recoupling_proof.py` (SUPERSEDES the earlier `5_six_j_recoupling.py`)
|
||
|
|
Vollstaendiger, verifizierter Beweis der Rekopplungsformel zwischen den
|
||
|
|
reduzierten Bloecken A_j^(1) (Schnitt ABC|DEF) und A_p^(2) (Schnitt
|
||
|
|
AB|CDEF) desselben invarianten Tensors:
|
||
|
|
A_p^(2)[y,j] = -sqrt((2j+1)/(2p+1)) * A_j^(1)[p,y] (y-unabhaengig!)
|
||
|
|
Kernschritte (jeder einzeln verifiziert):
|
||
|
|
(1) Schur-Lemma KORREKT auf die bilineare (nicht sesquilineare) Paarung
|
||
|
|
angewandt -- die Transponierte einer Wigner-D-Matrix haengt ueber die
|
||
|
|
Metrik C_j (nicht D selbst) mit der Inversen zusammen; das war der
|
||
|
|
Fehler im ersten Versuch.
|
||
|
|
(2) Exakte Konjugationsphase fuer CG-gekoppelte Multipletts:
|
||
|
|
conj(v_{J,m}) = (-1)^(J+n_leg) * (-1)^m * v_{J,-m}
|
||
|
|
(n_leg = Anzahl der elementaren Spin-1-Beine im Baum), verifiziert
|
||
|
|
fuer n_leg=3 und n_leg=4.
|
||
|
|
(3) Eine endliche CG-Summe Xi(p,j,m'), exakt symbolisch (sympy) zu
|
||
|
|
sqrt((2j+1)/(2p+1)) ausgewertet, m'-unabhaengig, fuer alle p,j<=3.
|
||
|
|
(4) End-to-End-Kreuzcheck gegen Brute-Force-Quantensimulation: Fehler
|
||
|
|
2.2e-16 (Maschinengenauigkeit).
|
||
|
|
Offen (siehe Kommentare im Skript und rem:six-j-scope im .tex): die
|
||
|
|
allgemeine (nicht nur p,j<=3) geschlossene Form von Xi als zitierfaehiges
|
||
|
|
Standard-6j-Symbol wurde nicht identifiziert (zwei Versuche dazu blieben
|
||
|
|
erfolglos, siehe search_6j.py-Fragmente); ebenso ist Gl. (2) nur verifiziert,
|
||
|
|
nicht fuer allgemeines n_leg induktiv hergeleitet.
|