Structured key family as the main configuration

Unconstrained key training converged to disjoint sparse supports: 99
percent of each users key energy sat on three or four of the sixteen
entries, with pairwise disjoint supports and one numerically dead
codebook column. That is an orthogonal slot allocation, so the
superposition collapsed into OMA and the key space was far smaller than
the dense direction the brute-force study assumes.

The main configuration is now the structured Walsh-Hadamard family,
which is dense, exactly orthogonal, unit modulus, and already the best
family in the key-family table. base_keys generalizes to any key length
by truncating the next power-of-two Sylvester order, and the key-length
sweep keeps only lengths where the truncated rows stay exactly
orthogonal, verified numerically.

Also fixes the M-PAM energy normalization in oma_ser_keylen, which used
sqrt(6g/(M^2-1)) where unit average symbol energy gives A^2=3/(M^2-1);
the closed form was 3 dB optimistic and now reproduces a direct Monte
Carlo to 1e-5.

Results move accordingly: the proposal now stays below OMA at every SNR
and reaches 1.52x at key length 64, while the jamming margin falls to
5.5-6.3 dB and the brute-force curve to 0.59 at a million guesses.
This commit is contained in:
KiHoLee
2026-08-17 20:02:27 +09:00
parent b120364e38
commit 3d5a7fc6f3
27 changed files with 561 additions and 418 deletions
+42 -42
View File
@@ -1,43 +1,43 @@
snr_db,n_frames,kappa,eve_ser
0,1,0.2374871574,0.99874975
0,2,0.6126027606,0.96312825
0,3,0.7285515711,0.921628875
0,4,0.8244251639,0.85221925
0,5,0.868628718,0.797125
0,6,0.8920436099,0.745713875
0,8,0.9208301157,0.67688775
0,10,0.9429872826,0.592138625
0,12,0.9557282105,0.534421875
0,16,0.9700051412,0.44833975
0,24,0.9802580416,0.38197025
0,32,0.9852379695,0.351050875
0,48,0.9904022858,0.32166525
0,64,0.993118532,0.307348
10,1,0.3489475794,0.989224875
10,2,0.8794977516,0.704872
10,3,0.9473693997,0.547376875
10,4,0.9682661489,0.455776875
10,5,0.9782963678,0.3962285
10,6,0.9843041778,0.359232
10,8,0.9900029436,0.326613375
10,10,0.9934537426,0.306601375
10,12,0.9949941516,0.2992645
10,16,0.9965374678,0.291205125
10,24,0.9978871465,0.285018125
10,32,0.9984912023,0.28255425
10,48,0.9990138412,0.280105125
10,64,0.9992718786,0.279036875
20,1,0.596763967,0.861350125
20,2,0.984469898,0.34732075
20,3,0.9948319912,0.300176375
20,4,0.9975389287,0.286598125
20,5,0.9984581739,0.282405125
20,6,0.9988854468,0.2803655
20,8,0.9992000297,0.279362875
20,10,0.9994319767,0.278179625
20,12,0.9995499209,0.277694875
20,16,0.9996712342,0.277181875
20,24,0.9997934118,0.276410875
20,32,0.999845539,0.2763615
20,48,0.9999018267,0.276363875
20,64,0.9999270439,0.276194125
0,1,0.2506237943,0.998554125
0,2,0.591645799,0.9303495
0,3,0.7079962283,0.8537115
0,4,0.7998725504,0.767802875
0,5,0.850597313,0.684796
0,6,0.8767687038,0.6361745
0,8,0.9171553269,0.520736875
0,10,0.936547631,0.455442125
0,12,0.9516445503,0.400028875
0,16,0.9666089579,0.344806875
0,24,0.9785378739,0.3075
0,32,0.9843035683,0.29181625
0,48,0.989774394,0.27860675
0,64,0.9924546674,0.272548625
10,1,0.3695881277,0.986553125
10,2,0.880338943,0.55928725
10,3,0.9474378824,0.4139
10,4,0.9692240357,0.339236625
10,5,0.9786081538,0.3095635
10,6,0.9846392065,0.292632375
10,8,0.9900667578,0.278431375
10,10,0.9934557095,0.270305
10,12,0.9948186457,0.267862125
10,16,0.9963249952,0.264728875
10,24,0.9976470947,0.26182575
10,32,0.998370938,0.260598625
10,48,0.9989489555,0.259409125
10,64,0.9992221802,0.258898125
20,1,0.6164694946,0.807168125
20,2,0.9846389949,0.29904075
20,3,0.9948147267,0.268233
20,4,0.9972566783,0.262752625
20,5,0.9983854383,0.260594375
20,6,0.9988236457,0.259794
20,8,0.9991258562,0.259128625
20,10,0.9993467629,0.258526
20,12,0.9994955555,0.25809525
20,16,0.9996308014,0.258118625
20,24,0.9997742459,0.25761825
20,32,0.9998249143,0.25777975
20,48,0.9998879731,0.257699625
20,64,0.9999218643,0.257602125
1 snr_db n_frames kappa eve_ser
2 0 1 0.2374871574 0.2506237943 0.99874975 0.998554125
3 0 2 0.6126027606 0.591645799 0.96312825 0.9303495
4 0 3 0.7285515711 0.7079962283 0.921628875 0.8537115
5 0 4 0.8244251639 0.7998725504 0.85221925 0.767802875
6 0 5 0.868628718 0.850597313 0.797125 0.684796
7 0 6 0.8920436099 0.8767687038 0.745713875 0.6361745
8 0 8 0.9208301157 0.9171553269 0.67688775 0.520736875
9 0 10 0.9429872826 0.936547631 0.592138625 0.455442125
10 0 12 0.9557282105 0.9516445503 0.534421875 0.400028875
11 0 16 0.9700051412 0.9666089579 0.44833975 0.344806875
12 0 24 0.9802580416 0.9785378739 0.38197025 0.3075
13 0 32 0.9852379695 0.9843035683 0.351050875 0.29181625
14 0 48 0.9904022858 0.989774394 0.32166525 0.27860675
15 0 64 0.993118532 0.9924546674 0.307348 0.272548625
16 10 1 0.3489475794 0.3695881277 0.989224875 0.986553125
17 10 2 0.8794977516 0.880338943 0.704872 0.55928725
18 10 3 0.9473693997 0.9474378824 0.547376875 0.4139
19 10 4 0.9682661489 0.9692240357 0.455776875 0.339236625
20 10 5 0.9782963678 0.9786081538 0.3962285 0.3095635
21 10 6 0.9843041778 0.9846392065 0.359232 0.292632375
22 10 8 0.9900029436 0.9900667578 0.326613375 0.278431375
23 10 10 0.9934537426 0.9934557095 0.306601375 0.270305
24 10 12 0.9949941516 0.9948186457 0.2992645 0.267862125
25 10 16 0.9965374678 0.9963249952 0.291205125 0.264728875
26 10 24 0.9978871465 0.9976470947 0.285018125 0.26182575
27 10 32 0.9984912023 0.998370938 0.28255425 0.260598625
28 10 48 0.9990138412 0.9989489555 0.280105125 0.259409125
29 10 64 0.9992718786 0.9992221802 0.279036875 0.258898125
30 20 1 0.596763967 0.6164694946 0.861350125 0.807168125
31 20 2 0.984469898 0.9846389949 0.34732075 0.29904075
32 20 3 0.9948319912 0.9948147267 0.300176375 0.268233
33 20 4 0.9975389287 0.9972566783 0.286598125 0.262752625
34 20 5 0.9984581739 0.9983854383 0.282405125 0.260594375
35 20 6 0.9988854468 0.9988236457 0.2803655 0.259794
36 20 8 0.9992000297 0.9991258562 0.279362875 0.259128625
37 20 10 0.9994319767 0.9993467629 0.278179625 0.258526
38 20 12 0.9995499209 0.9994955555 0.277694875 0.25809525
39 20 16 0.9996712342 0.9996308014 0.277181875 0.258118625
40 20 24 0.9997934118 0.9997742459 0.276410875 0.25761825
41 20 32 0.999845539 0.9998249143 0.2763615 0.25777975
42 20 48 0.9999018267 0.9998879731 0.276363875 0.257699625
43 20 64 0.9999270439 0.9999218643 0.276194125 0.257602125