Complete Theorems 1.3.20(ii)-(iii): L¹ approximation by step and continuous functions#469
Merged
teorth merged 3 commits intoteorth:mainfrom Mar 11, 2026
Merged
Complete Theorems 1.3.20(ii)-(iii): L¹ approximation by step and continuous functions#469teorth merged 3 commits intoteorth:mainfrom
teorth merged 3 commits intoteorth:mainfrom
Conversation
… and complex) Section_1_3_5.lean: Replace all sorries in step-function approximation. Real case: fill RealSimpleFunction.approx_by_step_aux (elementary box approximation, symmDiff bounds), PreL1.norm_smul_indicator_symmDiff_le, PreL1.norm_sub_le_add. Complex case: fill ComplexAbsolutelyIntegrable.approx_by_step via real/imag decomposition. Add RealStepFunction.toComplexStep, ComplexStepFunction.add/smul, RealAbsolutelyIntegrable.zero_fun, PreL1.norm_zero_le, RealAbsolutelyIntegrable.smul_indicator. Replace simple_abs_integrable_finite_measure with smul_indicator.
…y supported (real) Section_1_3_5.lean: Replace sorry in RealAbsolutelyIntegrable.approx_by_continuous_compact. Add Box.scaled_indicator_approx_continuous (Urysohn-based: compact K ⊆ box, open U ⊇ box, φ=1 on K, φ=0 outside U). Add RealStepFunction.approx_by_continuous_compact_aux (approximate step function by sum of continuous compactly supported per box). Proof chain: approx_by_step → step, then per-box Urysohn approximation. Import Mathlib.Topology.UrysohnsLemma. Complex case still sorry.
…y supported (complex) Section_1_3_5.lean: Replace sorry in ComplexAbsolutelyIntegrable.approx_by_continuous_compact. Proof via real/imag decomposition: approx_by_step for Re/Im, then RealStepFunction.approx_by_continuous_compact_aux for each. Construct g = ↑g_re + I • ↑g_im. Norm bound via PreL1.norm_sub_le_add and triangle inequality.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Theorem 1.3.20(ii) — L¹ approximation by step functions (real and complex): Fill RealSimpleFunction.approx_by_step_aux (elementary box, symmDiff bounds), PreL1.norm_smul_indicator_symmDiff_le, PreL1.norm_sub_le_add. Complex case via real/imag decomposition. Add RealStepFunction.toComplexStep, ComplexStepFunction.add/smul, RealAbsolutelyIntegrable.zero_fun, PreL1.norm_zero_le, smul_indicator.
Theorem 1.3.20(iii) — L¹ approximation by continuous compactly supported (real): Add Box.scaled_indicator_approx_continuous (Urysohn), RealStepFunction.approx_by_continuous_compact_aux. Proof: approx_by_step → step → per-box Urysohn. Import Mathlib.Topology.UrysohnsLemma.
Theorem 1.3.20(iii) — L¹ approximation by continuous compactly supported (complex): Replace sorry in ComplexAbsolutelyIntegrable.approx_by_continuous_compact. Proof via real/imag decomposition: approx_by_step for Re/Im, then RealStepFunction.approx_by_continuous_compact_aux for each. Construct g = ↑g_re + I • ↑g_im. Norm bound via PreL1.norm_sub_le_add and triangle inequality.