OAI/Computability/FourierTransform/BinaryFrames.lean
55 declarations, 0 contain sorry, 0 declared as axioms
Fourier frames on one binary column. We use tensor Hadamard for matrix identities only. All executed scalar constants are in Q(i).
- def
OAI.PowerSaving.Binary.signline 11 - def
OAI.PowerSaving.Binary.tintline 12 - lemma
OAI.PowerSaving.Binary.sign_addline 14 - lemma
OAI.PowerSaving.Binary.sign_sqline 18 - lemma
OAI.PowerSaving.Binary.tint_addline 21 - lemma
OAI.PowerSaving.Binary.tint_sqline 25 - lemma
OAI.PowerSaving.Binary.sign_sumline 28 - def
OAI.PowerSaving.Binary.lumline 37 - lemma
OAI.PowerSaving.Binary.lum_zeroline 39 - lemma
OAI.PowerSaving.Binary.lum_addline 42 - lemma
OAI.PowerSaving.Binary.lum_sqline 46 - lemma
OAI.PowerSaving.Binary.lum_nonzeroline 52 - lemma
OAI.PowerSaving.Binary.lum_of_unitline 58 - def
OAI.PowerSaving.Binary.littleHline 63 - def
OAI.PowerSaving.Binary.littleH'line 65 - def
OAI.PowerSaving.Binary.caline 67 - def
OAI.PowerSaving.Binary.cbline 68 - def
OAI.PowerSaving.Binary.littleCline 69 - lemma
OAI.PowerSaving.Binary.sum_bitsline 71 - lemma
OAI.PowerSaving.Binary.littleH_H'line 77 - lemma
OAI.PowerSaving.Binary.little_phaseline 83 - abbrev
OAI.PowerSaving.Binary.CMatline 90 - def
OAI.PowerSaving.Binary.kernelline 92 - def
OAI.PowerSaving.Binary.walline 94 - def
OAI.PowerSaving.Binary.walIline 95 - lemma
OAI.PowerSaving.Binary.wal_applyline 97 - lemma
OAI.PowerSaving.Binary.wal_rightline 102 - lemma
OAI.PowerSaving.Binary.wal_leftline 105 - def
OAI.PowerSaving.Binary.wrapline 108 - lemma
OAI.PowerSaving.Binary.wrap_ofline 110 - lemma
OAI.PowerSaving.Binary.wrap_oneline 114 - lemma
OAI.PowerSaving.Binary.wrap_mulline 117 - lemma
OAI.PowerSaving.Binary.wrap_commline 126 - lemma
OAI.PowerSaving.Binary.wrap_lumline 129 - def
OAI.PowerSaving.Binary.shiftline 137 - lemma
OAI.PowerSaving.Binary.shift_phaseline 140 - lemma
OAI.PowerSaving.Binary.shift_sqline 147 - def
OAI.PowerSaving.Binary.dirline 152Source documentation
Forward directional factor.
def dir (z : Space α) : CMat α := ca • 1 + cb • shift z
Mentions: OAI.PowerSaving.Binary.Space, OAI.PowerSaving.Binary.CMat, OAI.PowerSaving.Binary.ca, OAI.PowerSaving.Binary.cb, OAI.PowerSaving.Binary.shift
- lemma
OAI.PowerSaving.Binary.dir_phaseline 154 - lemma
OAI.PowerSaving.Binary.dir_sqline 165 - def
OAI.PowerSaving.Binary.frameline 169Source documentation
Basis independent frame from projection.
def frame (A : OBase α) (s : Finset α) := wrap fun x => lum (A.proj s x)
Mentions: OAI.PowerSaving.Binary.OBase, OAI.PowerSaving.Binary.wrap, OAI.PowerSaving.Binary.lum
- lemma
OAI.PowerSaving.Binary.frame_univline 171 - lemma
OAI.PowerSaving.Binary.frame_zeroline 174 - lemma
OAI.PowerSaving.Binary.frame_congrline 177 - def
OAI.PowerSaving.Binary.unframeline 182Source documentation
Frames are invertible (so cancellation along a path suffices).
def unframe (A : OBase α) (s : Finset α) := wrap fun x => (lum (A.proj s x))⁻¹
Mentions: OAI.PowerSaving.Binary.OBase, OAI.PowerSaving.Binary.wrap, OAI.PowerSaving.Binary.lum
- lemma
OAI.PowerSaving.Binary.unframe_rightline 184 - lemma
OAI.PowerSaving.Binary.unframe_leftline 188 - def
OAI.PowerSaving.Binary.deltaline 192Source documentation
Change when adding one orthogonal line in a fixed mask.
def delta (z : Space α) := wrap fun x => lum (dot z x • z)
Mentions: OAI.PowerSaving.Binary.Space, OAI.PowerSaving.Binary.wrap, OAI.PowerSaving.Binary.lum, OAI.PowerSaving.Binary.dot
- lemma
OAI.PowerSaving.Binary.frame_insline 194 - lemma
OAI.PowerSaving.Binary.delta_posline 204 - lemma
OAI.PowerSaving.Binary.delta_negline 211 - lemma
OAI.PowerSaving.Binary.delta_sqline 218 - lemma
OAI.PowerSaving.Binary.delta_commline 226 - lemma
OAI.PowerSaving.Binary.delta_shift_commline 230 - lemma
OAI.PowerSaving.Binary.frame_shift_commline 233