convergent sequence of simple functions for a measurable function

[[concept]]

[!themes] Topics

Evaluation Error: SyntaxError: Unexpected token '>'

at DataviewInlineApi.eval (plugin:dataview:19027:21)
at evalInContext (plugin:dataview:19028:7)
at asyncEvalInContext (plugin:dataview:19038:32)
at DataviewJSRenderer.render (plugin:dataview:19064:19)
at DataviewJSRenderer.onload (plugin:dataview:18606:14)
at DataviewJSRenderer.load (app://obsidian.md/app.js:1:1182416)
at DataviewApi.executeJs (plugin:dataview:19607:18)
at DataviewCompiler.eval (plugin:digitalgarden:10763:23)
at Generator.next (<anonymous>)
at eval (plugin:digitalgarden:90:61)

Nonnegative Real Functions

Theorem

If f:E→[0,∞] is a nonnegative measurable function, then there exists a sequence of simple functions {ϕn} such that

  1. (pointwise increasing sequence dominated by f) For all x∈E we have 0≤ϕ0(x)≤ϕ1(x)≤⋯≤f(x)
  2. (pointwise convergence) for all x∈E we have limn→∞ϕn(x)=f(x)
  3. (uniform convergence when f is bounded) for all B≥0, ϕn→f uniformly on the set {x∈E:f(x)≤B} where the bound holds

We start with the reals, but the proof will extend easily to the extended reals and complex-valued functions.

Proof

We will build our functions ϕn to have better resolution and larger range as a function of n.

For each n≥0, define the sets

Ek(n)={x∈E:k2−n≤f(x)<(k+1)2−n}=f−1((k2−n,(k+1)2−n])

For each 0≤k≤22n−1. This yields an "interval of length 2−n" in the range. These are measurable (inverse image of measurable functions of all borel sets are measurable), so we can define the sets

F(n)=f−1((2n,∞])

So we have that E=F(n)∪(⋃k=022n−1Ek(n)) for all n. Then, we can write

ϕn=2n1F(n)+∑k=022n−1k2n1Ek(n)=2n1F(n)+∑k=122n−1k2n1Ek(n)
Example

ϕ1=12⋅1f−1(12,1]+1⋅1f−1(1,32]+321f−1(32,2]+2⋅1f−1(2,∞]

Claim: this sequence of approximations satisfies the three conditions we want.

Pointwise Increasing

To show that the {ϕn} are pointwise increasing, we note that if x∈Ek(n), we have

k2n<f(x)≤k+12n⟹2k2n+1<f(x)≤2(k+1)2n+1⟹x∈E2k(n+1)∪E2k+1(n+1)⟹ϕn(x)={k2n=2k2n+1=ϕn+1(x),x∈E2k(n+1)k2n=2k2(n+1)<2(k+1)2n+1=ϕn+1(x),x∈E2k+1(n+1)

ie, we have ϕn(x)≤ϕn+1(x) if x∈Ek(n). If x∈F(n), then we get a similar result with the same argument.

Pointwise convergence + Uniform convergence on sets where f is bounded by B

Claim: For all x∈{y∈E:f(y)≤2n}, we have

0≤f(x)−ϕn(x)≤2−n

Recall that each ϕn partitions the range into intervals of length 12n and note that

{y∈E:f(x)≤2n}=⋃k=022n−1Ek(n)

Thus, we can just verify the claim for each Ek(n). So suppose x∈Ek(n). Then

ϕn(x)=k2n≤f(x)<k+12n⟹f(x)−ϕn(x)≤k+12n−k2n=12n
Pointwise convergence

Let x∈E. If f(x)=∞, then we are done. Otherwise, f−1(x)∈{y∈E:f(y)≤2n} for all n≥N for some N large enough. But then for all n≥N, we have

|f(x)−ϕn(x)|≤12n

ie ϕn(x)→f(x) for all x.

Uniform convergence for a fixed bound

Now, for any fixed B, pick some N such that {x∈E:f(x)≤B}⊂{x∈E:f(x)≤2N}. Then in the bound, we have uniform convergence.

◼

Extensions

Theorem

If E⊂R is measurable and f:E→C is a measurable function, then there exists a sequence of simple functions {ϕn} such that

  1. (pointwise increasing sequence dominated by f) For all x∈E we have 0≤|ϕ0|≤|ϕ1|≤⋯≤|f(x)|
  2. (pointwise convergence) for all x∈E we have limn→∞ϕn(x)=f(x)
  3. (uniform convergence when f is bounded) for all B≥0, ϕn→f uniformly on the set {x∈E:|f(x)|≤B} where the bound holds

Extended Reals (proof)

Split the function f into its positive part and negative part, both of which are nonnegative measurable functions. We can then apply the nonnegative statement above to each part of the function and get the sequences {ϕn+} and {ϕn−}. The final sequence is then given by

ϕn=ϕn+−ϕn−

Complex Functions (proof)

We split the function f into its Real and Imaginary part and can apply the result for the extended reals to each part to get {ϕnRe} and {ϕnIm}. The final sequence is then given by

ϕn=ϕnRe+ϕnImi

References

References

See Also

Mentions

Mentions

const modules = await cJS()

const COLUMNS = [  
	{ id: "Name", value: page => page.$link },  
	{ id: "Last Modified", value: page => modules.dateTime.getLastMod(page) },
];  
  
return function View() {  
	const current = dc.useCurrentFile();
// Selecting `#game` pages, for example. 
	let queryString = `@page and linksto(${current.$link})`;
	let pages = dc.useQuery(queryString);
	
	// check types
	pages = pages.filter( (p) => !modules.typeCheck.checkAll(p, current) ).sort()
	
	
	return <dc.Table columns={COLUMNS} rows={pages} paging={20}/>;  
}  

const { dateTime } = await cJS()

return function View() {
	const file = dc.useCurrentFile();
	return <p class="dv-modified">Created {dateTime.getCreated(file)}     ֍     Last Modified {dateTime.getLastMod(file)}</p>
}