Compare commits
23 Commits
c9f7af5f3d
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
c75bcf061f
|
|||
|
e2ede1cdb6
|
|||
|
56e14d045f
|
|||
|
3b632697b0
|
|||
|
378f162534
|
|||
|
122ad489e2
|
|||
|
027159b0e3
|
|||
|
ec7e1e656e
|
|||
|
7e16136864
|
|||
|
54be44d4f3
|
|||
| cf770b3a38 | |||
|
82691d2cca
|
|||
|
9b886fcb91
|
|||
|
1da329e334
|
|||
|
512ab165dc
|
|||
|
0d739ac726
|
|||
|
0afb975bea
|
|||
|
8165213ad8
|
|||
| d29a8413aa | |||
| 92c666491e | |||
| a0a23c66f9 | |||
| 64fc1c228d | |||
| 23aeb29ad8 |
5
.gitignore
vendored
@@ -17,10 +17,11 @@ package-lock.json
|
|||||||
|
|
||||||
# IDE configurations
|
# IDE configurations
|
||||||
.idea
|
.idea
|
||||||
.vscode
|
.vscode/*
|
||||||
!.vscode/settings.json
|
!.vscode/settings.json
|
||||||
!.vscode/extensions.json
|
!.vscode/extensions.json
|
||||||
|
!.vscode/tasks.json
|
||||||
|
|
||||||
# Misc
|
# Misc
|
||||||
_sass/dist
|
_sass/vendors
|
||||||
assets/js/dist
|
assets/js/dist
|
||||||
|
|||||||
11
Gemfile
@@ -2,8 +2,13 @@
|
|||||||
|
|
||||||
source "https://rubygems.org"
|
source "https://rubygems.org"
|
||||||
|
|
||||||
gem "jekyll-theme-chirpy", "~> 7.0", ">= 7.0.1"
|
gem "jekyll-theme-chirpy", "~> 7.3", ">= 7.3.1"
|
||||||
|
|
||||||
group :test do
|
gem "html-proofer", "~> 5.0", group: :test
|
||||||
gem "html-proofer", "~> 5.0"
|
|
||||||
|
platforms :mingw, :x64_mingw, :mswin, :jruby do
|
||||||
|
gem "tzinfo", ">= 1", "< 3"
|
||||||
|
gem "tzinfo-data"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
gem "wdm", "~> 0.2.0", :platforms => [:mingw, :x64_mingw, :mswin]
|
||||||
|
|||||||
@@ -62,7 +62,7 @@
|
|||||||
|
|
||||||
{% capture script %}/assets/js/dist/{{ js }}.min.js{% endcapture %}
|
{% capture script %}/assets/js/dist/{{ js }}.min.js{% endcapture %}
|
||||||
|
|
||||||
<script src="{{ script | relative_url }}"></script>
|
<script defer src="{{ script | relative_url }}"></script>
|
||||||
|
|
||||||
{% if page.math %}
|
{% if page.math %}
|
||||||
<!-- MathJax -->
|
<!-- MathJax -->
|
||||||
@@ -143,7 +143,7 @@
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6"></script>
|
<script async src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=es6"></script>
|
||||||
<script id="MathJax-script" async src="{{ site.data.origin[type].mathjax.js | relative_url }}"></script>
|
<script id="MathJax-script" async src="{{ site.data.origin[type].mathjax.js | relative_url }}"></script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
|||||||
39
_includes/post-summary.html
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
{%- comment -%}
|
||||||
|
Get the post's description or body content.
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
full_text: If true, return the full content. Default is false.
|
||||||
|
max_length: The maximum length of the returned content. Default is 200.
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- if post.description and include.full_text != true -%}
|
||||||
|
{{- post.description -}}
|
||||||
|
{%- else -%}
|
||||||
|
{%- comment -%} Remove the line numbers from the code snippet. {%- endcomment -%}
|
||||||
|
|
||||||
|
{%- assign content = post.content -%}
|
||||||
|
|
||||||
|
{%- if content contains '<td class="rouge-gutter gl"><pre class="lineno">' -%}
|
||||||
|
{%- assign content = content
|
||||||
|
| replace: '<td class="rouge-gutter gl"><pre class="lineno">',
|
||||||
|
'<!-- <td class="rouge-gutter gl"><pre class="lineno">'
|
||||||
|
-%}
|
||||||
|
{%- assign content = content | replace: '</td><td class="rouge-code">', '</td> --><td class="rouge-code">' -%}
|
||||||
|
{%- endif -%}
|
||||||
|
|
||||||
|
{%- assign content = content
|
||||||
|
| markdownify
|
||||||
|
| strip_html
|
||||||
|
| newline_to_br
|
||||||
|
| replace: '<br />', ' '
|
||||||
|
| strip_newlines
|
||||||
|
| strip
|
||||||
|
-%}
|
||||||
|
|
||||||
|
{%- unless include.full_text -%}
|
||||||
|
{%- assign max_length = include.max_length | default: 200 -%}
|
||||||
|
{%- assign content = content | truncate: max_length -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
|
||||||
|
{{- content -}}
|
||||||
|
{%- endif -%}
|
||||||
97
_includes/sidebar.html
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
<!-- The Side Bar -->
|
||||||
|
|
||||||
|
<aside aria-label="Sidebar" id="sidebar" class="d-flex flex-column align-items-end">
|
||||||
|
<header class="profile-wrapper">
|
||||||
|
<a href="{{ '/' | relative_url }}" id="avatar" class="rounded-circle">
|
||||||
|
{%- if site.avatar != empty and site.avatar -%}
|
||||||
|
{%- capture avatar_url -%}
|
||||||
|
{% include media-url.html src=site.avatar %}
|
||||||
|
{%- endcapture -%}
|
||||||
|
<img src="{{- avatar_url -}}" width="112" height="112" alt="avatar" onerror="this.style.display='none'">
|
||||||
|
{%- endif -%}
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<a class="site-title d-block" href="{{ '/' | relative_url }}">{{ site.title }}</a>
|
||||||
|
<p class="site-subtitle fst-italic mb-0">{{ site.tagline }}</p>
|
||||||
|
</header>
|
||||||
|
<!-- .profile-wrapper -->
|
||||||
|
|
||||||
|
<nav class="flex-column flex-grow-1 w-100 ps-0">
|
||||||
|
<ul class="nav">
|
||||||
|
{% for tab in site.tabs %}
|
||||||
|
<li class="nav-item{% if tab.url == page.url %}{{ " active" }}{% endif %}">
|
||||||
|
<a href="{{ tab.url | relative_url }}" class="nav-link">
|
||||||
|
<i class="fa-fw {{ tab.icon }}"></i>
|
||||||
|
{% capture tab_name %}{{ tab.url | split: '/' }}{% endcapture %}
|
||||||
|
|
||||||
|
<span>{{ site.data.locales[include.lang].tabs.[tab_name] | default: tab.title | upcase }}</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<!-- .nav-item -->
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
<div class="sidebar-bottom d-flex flex-wrap align-items-center w-100">
|
||||||
|
{% unless site.theme_mode %}
|
||||||
|
<button type="button" class="btn btn-link nav-link" aria-label="Switch Mode" id="mode-toggle">
|
||||||
|
<i class="fas fa-adjust"></i>
|
||||||
|
</button>
|
||||||
|
|
||||||
|
{% if site.data.contact.size > 0 %}
|
||||||
|
<span class="icon-border"></span>
|
||||||
|
{% endif %}
|
||||||
|
{% endunless %}
|
||||||
|
|
||||||
|
{% for entry in site.data.contact %}
|
||||||
|
{%- assign url = null -%}
|
||||||
|
|
||||||
|
{% case entry.type %}
|
||||||
|
{% when 'github', 'twitter' %}
|
||||||
|
{%- unless site[entry.type].username -%}
|
||||||
|
{%- continue -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
{%- capture url -%}
|
||||||
|
https://{{ entry.type }}.com/{{ site[entry.type].username }}
|
||||||
|
{%- endcapture -%}
|
||||||
|
{% when 'email' %}
|
||||||
|
{%- unless site.social.email -%}
|
||||||
|
{%- continue -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
{%- assign email = site.social.email | split: '@' -%}
|
||||||
|
{%- capture url -%}
|
||||||
|
javascript:location.href = 'mailto:' + ['{{ email[0] }}','{{ email[1] }}'].join('@')
|
||||||
|
{%- endcapture -%}
|
||||||
|
{% when 'rss' %}
|
||||||
|
{% assign url = '/feed.xml' | relative_url %}
|
||||||
|
{% else %}
|
||||||
|
{% assign url = entry.url %}
|
||||||
|
{% endcase %}
|
||||||
|
|
||||||
|
{% if url %}
|
||||||
|
<a
|
||||||
|
href="{{ url }}"
|
||||||
|
aria-label="{{ entry.type }}"
|
||||||
|
{% assign link_types = '' %}
|
||||||
|
|
||||||
|
{% unless entry.noblank %}
|
||||||
|
target="_blank"
|
||||||
|
{% assign link_types = 'noopener noreferrer' %}
|
||||||
|
{% endunless %}
|
||||||
|
|
||||||
|
{% if entry.type == 'mastodon' %}
|
||||||
|
{% assign link_types = link_types | append: ' me' | strip %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% unless link_types == empty %}
|
||||||
|
rel="{{ link_types }}"
|
||||||
|
{% endunless %}
|
||||||
|
>
|
||||||
|
<i class="{{ entry.icon }}"></i>
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
<!-- .sidebar-bottom -->
|
||||||
|
</aside>
|
||||||
|
<!-- #sidebar -->
|
||||||
150
_layouts/home.html
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
|
||||||
|
{% include lang.html %}
|
||||||
|
|
||||||
|
{% assign all_pinned = site.posts | where: 'pin', 'true' %}
|
||||||
|
{% assign all_normal = site.posts | where_exp: 'item', 'item.pin != true and item.hidden != true' %}
|
||||||
|
|
||||||
|
{% assign posts = '' | split: '' %}
|
||||||
|
|
||||||
|
<!-- Pagination fallbacks -->
|
||||||
|
{% assign per_page = paginator.per_page | default: site.paginate | default: 10 %}
|
||||||
|
{% assign page_num = paginator.page | default: 1 %}
|
||||||
|
|
||||||
|
<!-- Get pinned posts on current page -->
|
||||||
|
|
||||||
|
{% assign visible_start = page_num | minus: 1 | times: per_page %}
|
||||||
|
{% assign visible_end = visible_start | plus: per_page %}
|
||||||
|
|
||||||
|
{% if all_pinned.size > visible_start %}
|
||||||
|
{% if all_pinned.size > visible_end %}
|
||||||
|
{% assign pinned_size = paginator.per_page %}
|
||||||
|
{% else %}
|
||||||
|
{% assign pinned_size = all_pinned.size | minus: visible_start %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% for i in (visible_start..all_pinned.size) limit: pinned_size %}
|
||||||
|
{% assign posts = posts | push: all_pinned[i] %}
|
||||||
|
{% endfor %}
|
||||||
|
{% else %}
|
||||||
|
{% assign pinned_size = 0 %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<!-- Get normal posts on current page -->
|
||||||
|
|
||||||
|
{% assign paginator_posts = paginator.posts | default: site.posts %}
|
||||||
|
{% assign normal_size = paginator_posts | size | minus: pinned_size %}
|
||||||
|
|
||||||
|
{% if normal_size > 0 %}
|
||||||
|
{% if pinned_size > 0 %}
|
||||||
|
{% assign normal_start = 0 %}
|
||||||
|
{% else %}
|
||||||
|
{% assign normal_start = visible_start | minus: all_pinned.size %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% assign normal_end = normal_start | plus: normal_size | minus: 1 %}
|
||||||
|
|
||||||
|
{% assign normal_end = 10 %}
|
||||||
|
|
||||||
|
{% for i in (normal_start..normal_end) %}
|
||||||
|
{% assign posts = posts | push: all_normal[i] %}
|
||||||
|
{% endfor %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div id="post-list" class="flex-grow-1 px-xl-1">
|
||||||
|
{% for post in posts %}
|
||||||
|
<article class="card-wrapper card">
|
||||||
|
<a href="{{ post.url | relative_url }}" class="post-preview row g-0 flex-md-row-reverse">
|
||||||
|
{% assign card_body_col = '12' %}
|
||||||
|
|
||||||
|
{% if post.image %}
|
||||||
|
{% assign src = post.image.path | default: post.image %}
|
||||||
|
|
||||||
|
{% if post.media_subpath %}
|
||||||
|
{% unless src contains '://' %}
|
||||||
|
{% assign src = post.media_subpath
|
||||||
|
| append: '/'
|
||||||
|
| append: src
|
||||||
|
| replace: '///', '/'
|
||||||
|
| replace: '//', '/'
|
||||||
|
%}
|
||||||
|
{% endunless %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if post.image.lqip %}
|
||||||
|
{% assign lqip = post.image.lqip %}
|
||||||
|
|
||||||
|
{% if post.media_subpath %}
|
||||||
|
{% unless lqip contains 'data:' %}
|
||||||
|
{% assign lqip = post.media_subpath
|
||||||
|
| append: '/'
|
||||||
|
| append: lqip
|
||||||
|
| replace: '///', '/'
|
||||||
|
| replace: '//', '/'
|
||||||
|
%}
|
||||||
|
{% endunless %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% assign lqip_attr = 'lqip="' | append: lqip | append: '"' %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% assign alt = post.image.alt | xml_escape | default: 'Preview Image' %}
|
||||||
|
|
||||||
|
<div class="col-md-5">
|
||||||
|
<img src="{{ src }}" alt="{{ alt }}" {{ lqip_attr }}>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% assign card_body_col = '7' %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div class="col-md-{{ card_body_col }}">
|
||||||
|
<div class="card-body d-flex flex-column">
|
||||||
|
<h1 class="card-title my-2 mt-md-0">{{ post.title }}</h1>
|
||||||
|
|
||||||
|
<div class="card-text content mt-0 mb-3">
|
||||||
|
<p>{% include post-summary.html %}</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="post-meta flex-grow-1 d-flex align-items-end">
|
||||||
|
<div class="me-auto">
|
||||||
|
<!-- posted date -->
|
||||||
|
<i class="far fa-calendar fa-fw me-1"></i>
|
||||||
|
{% include datetime.html date=post.date lang=lang %}
|
||||||
|
|
||||||
|
<!-- categories -->
|
||||||
|
{% if post.categories.size > 0 %}
|
||||||
|
<i class="far fa-folder-open fa-fw me-1"></i>
|
||||||
|
<span class="categories">
|
||||||
|
{% for category in post.categories %}
|
||||||
|
{{ category }}
|
||||||
|
{%- unless forloop.last -%},{%- endunless -%}
|
||||||
|
{% endfor %}
|
||||||
|
</span>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if post.pin %}
|
||||||
|
<div class="pin ms-1">
|
||||||
|
<i class="fas fa-thumbtack fa-fw"></i>
|
||||||
|
<span>{{ site.data.locales[lang].post.pin_prompt }}</span>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
<!-- .post-meta -->
|
||||||
|
</div>
|
||||||
|
<!-- .card-body -->
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</article>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
<!-- #post-list -->
|
||||||
|
|
||||||
|
{% assign total_pages = paginator.total_pages | default: 2 %}
|
||||||
|
{% if total_pages > 1 and paginator %}
|
||||||
|
{% include post-paginator.html %}
|
||||||
|
{% endif %}
|
||||||
@@ -6,11 +6,14 @@ panel_includes:
|
|||||||
tail_includes:
|
tail_includes:
|
||||||
- related-posts
|
- related-posts
|
||||||
- post-nav
|
- post-nav
|
||||||
- comments
|
script_includes:
|
||||||
|
- comment
|
||||||
---
|
---
|
||||||
|
|
||||||
{% include lang.html %}
|
{% include lang.html %}
|
||||||
|
|
||||||
|
{% include toc-status.html %}
|
||||||
|
|
||||||
<article class="px-1" data-toc="{{ enable_toc }}">
|
<article class="px-1" data-toc="{{ enable_toc }}">
|
||||||
<header>
|
<header>
|
||||||
<h1 data-toc-skip>{{ page.title }}</h1>
|
<h1 data-toc-skip>{{ page.title }}</h1>
|
||||||
@@ -21,36 +24,40 @@ tail_includes:
|
|||||||
<div class="post-meta text-muted">
|
<div class="post-meta text-muted">
|
||||||
<!-- published date -->
|
<!-- published date -->
|
||||||
<span>
|
<span>
|
||||||
{{ site.data.locales[lang].post.posted }} {% include datetime.html
|
{{ site.data.locales[lang].post.posted }}
|
||||||
date=page.date tooltip=true lang=lang %}
|
{% include datetime.html date=page.date tooltip=true lang=lang %}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
<!-- lastmod date -->
|
<!-- lastmod date -->
|
||||||
{% if page.last_modified_at and page.last_modified_at != page.date %}
|
{% if page.last_modified_at and page.last_modified_at != page.date %}
|
||||||
<span>
|
<span>
|
||||||
{{ site.data.locales[lang].post.updated }} {% include datetime.html
|
{{ site.data.locales[lang].post.updated }}
|
||||||
date=page.last_modified_at tooltip=true lang=lang %}
|
{% include datetime.html date=page.last_modified_at tooltip=true lang=lang %}
|
||||||
</span>
|
</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div class="d-flex justify-content-between">
|
<div class="d-flex justify-content-between">
|
||||||
<!-- author(s) -->
|
<!-- author(s) -->
|
||||||
<span>
|
<span>
|
||||||
{% if page.author %} {% assign authors = page.author %} {% elsif
|
{% if page.author %}
|
||||||
page.authors %} {% assign authors = page.authors %} {% endif %} {{
|
{% assign authors = page.author %}
|
||||||
site.data.locales[lang].post.written_by }}
|
{% elsif page.authors %}
|
||||||
|
{% assign authors = page.authors %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{{ site.data.locales[lang].post.written_by }}
|
||||||
|
|
||||||
<em>
|
<em>
|
||||||
{% if authors %} {% for author in authors %} {% if
|
{% if authors %}
|
||||||
site.data.authors[author].url -%}
|
{% for author in authors %}
|
||||||
<a href="{{ site.data.authors[author].url }}"
|
{% if site.data.authors[author].url -%}
|
||||||
>{{ site.data.authors[author].name }}</a
|
<a href="{{ site.data.authors[author].url }}">{{ site.data.authors[author].name }}</a>
|
||||||
>
|
{%- else -%}
|
||||||
{%- else -%} {{ site.data.authors[author].name }} {%- endif %} {%
|
{{ site.data.authors[author].name }}
|
||||||
unless forloop.last %}{{ '</em
|
{%- endif %}
|
||||||
>,
|
{% unless forloop.last %}{{ '</em>, <em>' }}{% endunless %}
|
||||||
<em
|
{% endfor %}
|
||||||
>' }}{% endunless %} {% endfor %} {% else %}
|
{% else %}
|
||||||
<a href="{{ site.social.links[0] }}">{{ site.social.name }}</a>
|
<a href="{{ site.social.links[0] }}">{{ site.social.name }}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</em>
|
</em>
|
||||||
@@ -58,8 +65,7 @@ tail_includes:
|
|||||||
|
|
||||||
<div>
|
<div>
|
||||||
<!-- pageviews -->
|
<!-- pageviews -->
|
||||||
{% if site.pageviews.provider and
|
{% if site.pageviews.provider and site.analytics[site.pageviews.provider].id %}
|
||||||
site.analytics[site.pageviews.provider].id %}
|
|
||||||
<span>
|
<span>
|
||||||
<em id="pageviews">
|
<em id="pageviews">
|
||||||
<i class="fas fa-spinner fa-spin small"></i>
|
<i class="fas fa-spinner fa-spin small"></i>
|
||||||
@@ -76,37 +82,22 @@ tail_includes:
|
|||||||
</header>
|
</header>
|
||||||
|
|
||||||
{% if enable_toc %}
|
{% if enable_toc %}
|
||||||
<div
|
<div id="toc-bar" class="d-flex align-items-center justify-content-between invisible">
|
||||||
id="toc-bar"
|
|
||||||
class="d-flex align-items-center justify-content-between invisible"
|
|
||||||
>
|
|
||||||
<span class="label text-truncate">{{ page.title }}</span>
|
<span class="label text-truncate">{{ page.title }}</span>
|
||||||
<button type="button" class="toc-trigger btn me-1">
|
<button type="button" class="toc-trigger btn me-1">
|
||||||
<i class="fa-solid fa-list-ul fa-fw"></i>
|
<i class="fa-solid fa-list-ul fa-fw"></i>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button
|
<button id="toc-solo-trigger" type="button" class="toc-trigger btn btn-outline-secondary btn-sm">
|
||||||
id="toc-solo-trigger"
|
<span class="label ps-2 pe-1">{{- site.data.locales[lang].panel.toc -}}</span>
|
||||||
type="button"
|
|
||||||
class="toc-trigger btn btn-outline-secondary btn-sm"
|
|
||||||
>
|
|
||||||
<span class="label ps-2 pe-1"
|
|
||||||
>{{- site.data.locales[lang].panel.toc -}}</span
|
|
||||||
>
|
|
||||||
<i class="fa-solid fa-angle-right fa-fw"></i>
|
<i class="fa-solid fa-angle-right fa-fw"></i>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<dialog id="toc-popup" class="p-0">
|
<dialog id="toc-popup" class="p-0">
|
||||||
<div
|
<div class="header d-flex flex-row align-items-center justify-content-between">
|
||||||
class="header d-flex flex-row align-items-center justify-content-between"
|
|
||||||
>
|
|
||||||
<div class="label text-truncate py-2 ms-4">{{- page.title -}}</div>
|
<div class="label text-truncate py-2 ms-4">{{- page.title -}}</div>
|
||||||
<button
|
<button id="toc-popup-close" type="button" class="btn mx-1 my-1 opacity-75">
|
||||||
id="toc-popup-close"
|
|
||||||
type="button"
|
|
||||||
class="btn mx-1 my-1 opacity-75"
|
|
||||||
>
|
|
||||||
<i class="fas fa-close"></i>
|
<i class="fas fa-close"></i>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@@ -114,7 +105,9 @@ tail_includes:
|
|||||||
</dialog>
|
</dialog>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div class="content">{{ content }}</div>
|
<div class="content">
|
||||||
|
{{ content }}
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="post-tail-wrapper text-muted">
|
<div class="post-tail-wrapper text-muted">
|
||||||
<!-- categories -->
|
<!-- categories -->
|
||||||
@@ -122,11 +115,9 @@ tail_includes:
|
|||||||
<div class="post-meta mb-3">
|
<div class="post-meta mb-3">
|
||||||
<i class="far fa-folder-open fa-fw me-1"></i>
|
<i class="far fa-folder-open fa-fw me-1"></i>
|
||||||
{% for category in page.categories %}
|
{% for category in page.categories %}
|
||||||
<a
|
<a href="{{ site.baseurl }}/categories/{{ category | slugify | url_encode }}/">{{ category }}</a>
|
||||||
href="{{ site.baseurl }}/categories/{{ category | slugify | url_encode }}/"
|
{%- unless forloop.last -%},{%- endunless -%}
|
||||||
>{{ category }}</a
|
{% endfor %}
|
||||||
>
|
|
||||||
{%- unless forloop.last -%},{%- endunless -%} {% endfor %}
|
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
@@ -146,16 +137,21 @@ tail_includes:
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="post-tail-bottom d-flex justify-content-between align-items-center mt-5 pb-2"
|
class="
|
||||||
|
post-tail-bottom
|
||||||
|
d-flex justify-content-between align-items-center mt-5 pb-2
|
||||||
|
"
|
||||||
>
|
>
|
||||||
<div class="license-wrapper">
|
<div class="license-wrapper">
|
||||||
{% if site.data.locales[lang].copyright.license.template %} {% capture
|
{% if site.data.locales[lang].copyright.license.template %}
|
||||||
_replacement %}
|
{% capture _replacement %}
|
||||||
<a href="{{ site.data.locales[lang].copyright.license.link }}">
|
<a href="{{ site.data.locales[lang].copyright.license.link }}">
|
||||||
{{ site.data.locales[lang].copyright.license.name }}
|
{{ site.data.locales[lang].copyright.license.name }}
|
||||||
</a>
|
</a>
|
||||||
{% endcapture %} {{ site.data.locales[lang].copyright.license.template |
|
{% endcapture %}
|
||||||
replace: ':LICENSE_NAME', _replacement }} {% endif %}
|
|
||||||
|
{{ site.data.locales[lang].copyright.license.template | replace: ':LICENSE_NAME', _replacement }}
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% include post-sharing.html lang=lang %}
|
{% include post-sharing.html lang=lang %}
|
||||||
|
|||||||
@@ -3,18 +3,19 @@ share: true
|
|||||||
pin: true
|
pin: true
|
||||||
categories:
|
categories:
|
||||||
- Development
|
- Development
|
||||||
|
path: _posts/development
|
||||||
tags:
|
tags:
|
||||||
- AWS
|
- AWS
|
||||||
- dev
|
- dev
|
||||||
title: Secure IAM on AWS with Multi-Account Strategy
|
title: Secure IAM on AWS with Multi-Account Strategy
|
||||||
date: 2024-02-26
|
date: 2024-02-26
|
||||||
github_title: 2024-02-26-secure-iam
|
github_title: 2024-02-26-secure-iam
|
||||||
image: /assets/img/posts/Development/separation-by-product.png
|
image: /assets/img/posts/development/separation-by-product.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development
|
folder: assets/img/posts/development
|
||||||
---
|
---
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
2024\. 2. B.S. Graduation Paper, Received Best Paper Award!
|
2024\. 2. B.S. Graduation Paper, Received Best Paper Award!
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops, docker]
|
tags: [kubernetes, sre, devops, docker]
|
||||||
title: "01. Introducing Kubernetes"
|
title: "01. Introducing Kubernetes"
|
||||||
date: "2021-02-28"
|
date: "2021-02-28"
|
||||||
github_title: "2021-02-28-01-introducing-k8s"
|
github_title: "2021-02-28-01-introducing-k8s"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-01.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-01.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Overview of Kubernetes Architecture (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-1)_
|
 _Overview of Kubernetes Architecture (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-1)_
|
||||||
|
|
||||||
기존에는 소프트웨어가 커다란 덩어리였지만 최근에는 독립적으로 작동하는 작은 **마이크로서비스**(microservice)로 나뉘고 있다. 이들은 독립적으로 동작하기 때문에, 개발하고 배포하거나 스케일링을 따로 해줄 수 있다는 장점이 있으며, 이 장점은 빠르게 변화하는 소프트웨어의 요구사항을 반영하기에 적합하다.
|
기존에는 소프트웨어가 커다란 덩어리였지만 최근에는 독립적으로 작동하는 작은 **마이크로서비스**(microservice)로 나뉘고 있다. 이들은 독립적으로 동작하기 때문에, 개발하고 배포하거나 스케일링을 따로 해줄 수 있다는 장점이 있으며, 이 장점은 빠르게 변화하는 소프트웨어의 요구사항을 반영하기에 적합하다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops, docker]
|
tags: [kubernetes, sre, devops, docker]
|
||||||
title: "02. First Steps with Docker and Kubernetes"
|
title: "02. First Steps with Docker and Kubernetes"
|
||||||
date: "2021-03-07"
|
date: "2021-03-07"
|
||||||
github_title: "2021-03-07-02-first-steps"
|
github_title: "2021-03-07-02-first-steps"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-02.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-02.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Running a container image in Kubernetes (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-2)_
|
 _Running a container image in Kubernetes (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-2)_
|
||||||
|
|
||||||
도커와 쿠버네티스를 사용하여 간단한 애플리케이션을 배포해 보자!
|
도커와 쿠버네티스를 사용하여 간단한 애플리케이션을 배포해 보자!
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "03. Pods: Running Containers in Kubernetes"
|
title: "03. Pods: Running Containers in Kubernetes"
|
||||||
date: "2021-03-17"
|
date: "2021-03-17"
|
||||||
github_title: "2021-03-17-03-pods"
|
github_title: "2021-03-17-03-pods"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-03.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-03.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _A container shouldn’t run multiple processes. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-3)_
|
 _A container shouldn’t run multiple processes. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-3)_
|
||||||
|
|
||||||
다양한 쿠버네티스 오브젝트 (resources) 를 살펴보는 단원이다. 가장 기본이 되는 Pod 부터 시작한다. 이외의 모든 것들은 pod 를 관리하거나, pod 를 노출하거나, pod 에 의해 사용된다.
|
다양한 쿠버네티스 오브젝트 (resources) 를 살펴보는 단원이다. 가장 기본이 되는 Pod 부터 시작한다. 이외의 모든 것들은 pod 를 관리하거나, pod 를 노출하거나, pod 에 의해 사용된다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "04. Replication and Other Controllers: Deploying Managed Pods"
|
title: "04. Replication and Other Controllers: Deploying Managed Pods"
|
||||||
date: "2021-03-21"
|
date: "2021-03-21"
|
||||||
github_title: "2021-03-21-04-replication-and-controllers"
|
github_title: "2021-03-21-04-replication-and-controllers"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-04.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-04.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _ReplicationController recreating pods. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-4)_
|
 _ReplicationController recreating pods. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-4)_
|
||||||
|
|
||||||
3장에서는 pod 를 직접 관리하는 방법에 대해 살펴봤다. 하지만 실무에서는 pod 의 관리가 자동으로 되길 원한다. 이를 위해 ReplicationController 나 Deployment 를 사용한다.
|
3장에서는 pod 를 직접 관리하는 방법에 대해 살펴봤다. 하지만 실무에서는 pod 의 관리가 자동으로 되길 원한다. 이를 위해 ReplicationController 나 Deployment 를 사용한다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "05. Services: Enabling Clients to Discover and Talk to Pods"
|
title: "05. Services: Enabling Clients to Discover and Talk to Pods"
|
||||||
date: "2021-04-07"
|
date: "2021-04-07"
|
||||||
github_title: "2021-04-07-05-services"
|
github_title: "2021-04-07-05-services"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-05.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-05.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Using `kubectl exec` to test out a connection to the service by running curl in one of the pods. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-5)_
|
 _Using `kubectl exec` to test out a connection to the service by running curl in one of the pods. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-5)_
|
||||||
|
|
||||||
많은 앱들이 request (요청) 을 받아 서비스를 제공하는 형태인데, 이런 요청을 보내려면 IP 주소를 알아야 한다. 한편 Kubernetes 를 사용하게 되면 pod 의 IP 주소를 알아야 하는데, Kubernetes 의 pod 들은 굉장히 동적이므로 이들의 IP 주소를 알아낼 방법이 필요하다.
|
많은 앱들이 request (요청) 을 받아 서비스를 제공하는 형태인데, 이런 요청을 보내려면 IP 주소를 알아야 한다. 한편 Kubernetes 를 사용하게 되면 pod 의 IP 주소를 알아야 하는데, Kubernetes 의 pod 들은 굉장히 동적이므로 이들의 IP 주소를 알아낼 방법이 필요하다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "06. Volumes: Attaching Disk Storage to Containers"
|
title: "06. Volumes: Attaching Disk Storage to Containers"
|
||||||
date: "2021-04-07"
|
date: "2021-04-07"
|
||||||
github_title: "2021-04-07-06-volumes"
|
github_title: "2021-04-07-06-volumes"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-06.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-06.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _The complete picture of dynamic provisioning of PersistentVolumes. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-6)_
|
 _The complete picture of dynamic provisioning of PersistentVolumes. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-6)_
|
||||||
|
|
||||||
컨테이너가 재시작되면 기존 작업 내역이 모두 사라지게 될 수 있으므로, 컨테이너의 작업 내역을 저장하고 같은 pod 내의 다른 컨테이너가 함께 사용하는 저장 공간이다.
|
컨테이너가 재시작되면 기존 작업 내역이 모두 사라지게 될 수 있으므로, 컨테이너의 작업 내역을 저장하고 같은 pod 내의 다른 컨테이너가 함께 사용하는 저장 공간이다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "07. ConfigMaps and Secrets: Configuring Applications"
|
title: "07. ConfigMaps and Secrets: Configuring Applications"
|
||||||
date: "2021-04-18"
|
date: "2021-04-18"
|
||||||
github_title: "2021-04-18-07-configmaps-and-secrets"
|
github_title: "2021-04-18-07-configmaps-and-secrets"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-07.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-07.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Combining a ConfigMap and a Secret to run your fortune-https pod (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-7)_
|
 _Combining a ConfigMap and a Secret to run your fortune-https pod (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-7)_
|
||||||
|
|
||||||
거의 대부분의 앱은 설정(configuration)이 필요하다. 개발 서버, 배포 서버의 설정 사항 (접속하려는 DB 서버 주소 등)이 다를 수도 있고, 클라우드 등에 접속하기 위한 access key 가 필요하거나, 데이터를 암호화하는 encryption key 도 설정해야하는 경우가 있다. 이러한 경우에 해당 값들을 도커 이미지 자체에 넣어버리면 보안 상 취약하고, 또 설정 사항을 변경하는 경우 이미지를 다시 빌드해야하는 등 불편함이 따른다.
|
거의 대부분의 앱은 설정(configuration)이 필요하다. 개발 서버, 배포 서버의 설정 사항 (접속하려는 DB 서버 주소 등)이 다를 수도 있고, 클라우드 등에 접속하기 위한 access key 가 필요하거나, 데이터를 암호화하는 encryption key 도 설정해야하는 경우가 있다. 이러한 경우에 해당 값들을 도커 이미지 자체에 넣어버리면 보안 상 취약하고, 또 설정 사항을 변경하는 경우 이미지를 다시 빌드해야하는 등 불편함이 따른다.
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "08. Accessing Pod Metadata and Other Resources from Applications"
|
title: "08. Accessing Pod Metadata and Other Resources from Applications"
|
||||||
date: "2021-04-18"
|
date: "2021-04-18"
|
||||||
github_title: "2021-04-18-08-accessing-pod-metadata"
|
github_title: "2021-04-18-08-accessing-pod-metadata"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-08.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-08.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Using the files from the default-token Secret to talk to the API server (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-8)_
|
 _Using the files from the default-token Secret to talk to the API server (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-8)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "09. Deployments: Updating Applications Declaratively"
|
title: "09. Deployments: Updating Applications Declaratively"
|
||||||
date: "2021-04-30"
|
date: "2021-04-30"
|
||||||
github_title: "2021-04-30-09-deployments"
|
github_title: "2021-04-30-09-deployments"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-09.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-09.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Rolling update of Deployments (출처: livebook.manning.com/book/kubernetes-in-action/chapter-9)_
|
 _Rolling update of Deployments (출처: livebook.manning.com/book/kubernetes-in-action/chapter-9)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "10. StatefulSets: Deploying Replicated Stateful Applications"
|
title: "10. StatefulSets: Deploying Replicated Stateful Applications"
|
||||||
date: "2021-05-17"
|
date: "2021-05-17"
|
||||||
github_title: "2021-05-17-10-statefulsets"
|
github_title: "2021-05-17-10-statefulsets"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-10.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-10.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _A stateful pod may be rescheduled to a different node, but it retains the name, hostname, and storage. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-10)_
|
 _A stateful pod may be rescheduled to a different node, but it retains the name, hostname, and storage. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-10)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "11. Understanding Kubernetes Internals"
|
title: "11. Understanding Kubernetes Internals"
|
||||||
date: "2021-05-30"
|
date: "2021-05-30"
|
||||||
github_title: "2021-05-30-11-k8s-internals"
|
github_title: "2021-05-30-11-k8s-internals"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-11.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-11.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _The chain of events that unfolds when a Deployment resource is posted to the API server (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-11)_
|
 _The chain of events that unfolds when a Deployment resource is posted to the API server (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-11)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "12. Securing the Kubernetes API Server"
|
title: "12. Securing the Kubernetes API Server"
|
||||||
date: "2021-06-06"
|
date: "2021-06-06"
|
||||||
github_title: "2021-06-06-12-securing-k8s-api-server"
|
github_title: "2021-06-06-12-securing-k8s-api-server"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-12.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-12.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Roles grant permissions, whereas RoleBindings bind Roles to subjects (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-12)_
|
 _Roles grant permissions, whereas RoleBindings bind Roles to subjects (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-12)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "13. Securing Cluster Nodes and the Network"
|
title: "13. Securing Cluster Nodes and the Network"
|
||||||
date: "2021-06-29"
|
date: "2021-06-29"
|
||||||
github_title: "2021-06-29-13-securing-nodes-and-network"
|
github_title: "2021-06-29-13-securing-nodes-and-network"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-13.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-13.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _A pod with hostNetwork: true uses the node's network interfaces instead of its own. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-13)_
|
 _A pod with hostNetwork: true uses the node's network interfaces instead of its own. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-13)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "14. Managing Pods' Computational Resources"
|
title: "14. Managing Pods' Computational Resources"
|
||||||
date: "2021-07-11"
|
date: "2021-07-11"
|
||||||
github_title: "2021-07-11-14-managing-computation-resources"
|
github_title: "2021-07-11-14-managing-computation-resources"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-14.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-14.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _The Scheduler only cares about requests, not actual usage. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-14)_
|
 _The Scheduler only cares about requests, not actual usage. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-14)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "15. Automatic Scaling of Pods and Cluster Nodes"
|
title: "15. Automatic Scaling of Pods and Cluster Nodes"
|
||||||
date: "2021-07-18"
|
date: "2021-07-18"
|
||||||
github_title: "2021-07-18-15-autoscaling"
|
github_title: "2021-07-18-15-autoscaling"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-15.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-15.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _How the autoscaler obtains metrics and rescales the target deployment (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-15)_
|
 _How the autoscaler obtains metrics and rescales the target deployment (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-15)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "16. Advanced Scheduling"
|
title: "16. Advanced Scheduling"
|
||||||
date: "2021-08-15"
|
date: "2021-08-15"
|
||||||
github_title: "2021-08-15-16-advanced-scheduling"
|
github_title: "2021-08-15-16-advanced-scheduling"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-16.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-16.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _A pod is only scheduled to a node if it tolerates the node’s taints. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-16)_
|
 _A pod is only scheduled to a node if it tolerates the node’s taints. (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-16)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "17. Best Practices for Developing Apps"
|
title: "17. Best Practices for Developing Apps"
|
||||||
date: "2021-08-15"
|
date: "2021-08-15"
|
||||||
github_title: "2021-08-15-17-best-practices"
|
github_title: "2021-08-15-17-best-practices"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-17.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-17.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _Resources in a typical application (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-17)_
|
 _Resources in a typical application (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-17)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,18 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Kubernetes]
|
categories: [Development, Kubernetes]
|
||||||
|
path: "_posts/development/kubernetes"
|
||||||
tags: [kubernetes, sre, devops]
|
tags: [kubernetes, sre, devops]
|
||||||
title: "18. Extending Kubernetes"
|
title: "18. Extending Kubernetes"
|
||||||
date: "2021-09-04"
|
date: "2021-09-04"
|
||||||
github_title: "2021-09-04-18-extending-k8s"
|
github_title: "2021-09-04-18-extending-k8s"
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Development/Kubernetes/k8s-18.jpeg
|
path: /assets/img/posts/development/kubernetes/k8s-18.jpeg
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Development/Kubernetes
|
folder: assets/img/posts/development/kubernetes
|
||||||
---
|
---
|
||||||
|
|
||||||
 _API Server Aggregation (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-18)_
|
 _API Server Aggregation (출처: https://livebook.manning.com/book/kubernetes-in-action/chapter-18)_
|
||||||
|
|
||||||
### 주요 내용
|
### 주요 내용
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,21 @@
|
|||||||
---
|
---
|
||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
categories: [Development, Web]
|
categories:
|
||||||
tags: [development, web]
|
- Development
|
||||||
title: "블로그 이주 이야기"
|
- Web
|
||||||
date: "2023-06-25"
|
path: _posts/development/web
|
||||||
github_title: "2023-06-25-blog-moving"
|
tags:
|
||||||
|
- development
|
||||||
|
- web
|
||||||
|
title: 블로그 이주 이야기
|
||||||
|
date: 2023-06-25
|
||||||
|
github_title: 2023-06-25-blog-moving
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/blog-logo.png
|
path: /assets/img/posts/blog-logo.png
|
||||||
---
|
---
|
||||||
|
|
||||||
 _New blog logo_
|
 _New blog logo_
|
||||||
|
|
||||||
오래 전, Github Pages가 불편하다는 이유로 티스토리로 옮겼었다.
|
오래 전, Github Pages가 불편하다는 이유로 티스토리로 옮겼었다.
|
||||||
근데 어쩌다 보니 결국 다시 돌아오게 되었다.
|
근데 어쩌다 보니 결국 다시 돌아오게 되었다.
|
||||||
@@ -65,7 +70,7 @@ image:
|
|||||||
|
|
||||||
Obsidian을 Github과 연동하기 위해 [Obsidian Github Publisher](https://github.com/ObsidianPublisher/obsidian-github-publisher) 플러그인을 사용할 수 있다.
|
Obsidian을 Github과 연동하기 위해 [Obsidian Github Publisher](https://github.com/ObsidianPublisher/obsidian-github-publisher) 플러그인을 사용할 수 있다.
|
||||||
|
|
||||||
{: .shadow } _플러그인 설정 화면: 어느 폴더에 어떤 이름으로 파일을 업로드할지 설정할 수 있다._
|
{: .shadow } _플러그인 설정 화면: 어느 폴더에 어떤 이름으로 파일을 업로드할지 설정할 수 있다._
|
||||||
|
|
||||||
이 플러그인을 사용하면 Obsidian의 문서 중에서 `share: true` 로 마킹된 문서들을 레포에 저장할 수 있게 된다. 그렇다면 블로그 글을 Obsidian에서 작성하고, 플러그인을 이용해 레포에 push하게 되면, 자동으로 빌드/배포가 이뤄져서 블로그에 반영되는 것을 확인할 수 있을 것이다.
|
이 플러그인을 사용하면 Obsidian의 문서 중에서 `share: true` 로 마킹된 문서들을 레포에 저장할 수 있게 된다. 그렇다면 블로그 글을 Obsidian에서 작성하고, 플러그인을 이용해 레포에 push하게 되면, 자동으로 빌드/배포가 이뤄져서 블로그에 반영되는 것을 확인할 수 있을 것이다.
|
||||||
|
|
||||||
@@ -2,11 +2,15 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
math: true
|
math: true
|
||||||
categories: [Mathematics]
|
categories:
|
||||||
tags: [math, study]
|
- Mathematics
|
||||||
title: "수학 공부에 대한 고찰"
|
path: _posts/mathematics
|
||||||
date: "2022-02-03"
|
tags:
|
||||||
github_title: "2022-04-08-thoughts-on-studying-math"
|
- math
|
||||||
|
- study
|
||||||
|
title: 수학 공부에 대한 고찰
|
||||||
|
date: 2022-02-03
|
||||||
|
github_title: 2022-04-08-thoughts-on-studying-math
|
||||||
---
|
---
|
||||||
|
|
||||||
과외돌이 수업을 위해 새로운 교재를 골라야 했다. 교재를 고민하던 도중 내가 생각하는 수학 공부 방법을 설명하기에 매우 좋은 예시가 생겨서 이렇게 글로 남기게 되었다.
|
과외돌이 수업을 위해 새로운 교재를 골라야 했다. 교재를 고민하던 도중 내가 생각하는 수학 공부 방법을 설명하기에 매우 좋은 예시가 생겨서 이렇게 글로 남기게 되었다.
|
||||||
|
|||||||
@@ -1,266 +0,0 @@
|
|||||||
---
|
|
||||||
share: true
|
|
||||||
toc: true
|
|
||||||
math: true
|
|
||||||
categories:
|
|
||||||
- Mathematics
|
|
||||||
- Measure Theory
|
|
||||||
tags:
|
|
||||||
- math
|
|
||||||
- analysis
|
|
||||||
- measure-theory
|
|
||||||
title: 02. Construction of Measure
|
|
||||||
date: 2023-01-23
|
|
||||||
github_title: 2023-01-23-construction-of-measure
|
|
||||||
image:
|
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-02.png
|
|
||||||
attachment:
|
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
|
||||||
---
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
이제 본격적으로 집합을 재보도록 하겠습니다. 우리가 잴 수 있는 집합들부터 시작합니다. $\mathbb{R}^p$에서 논의할 건데, 이제 여기서부터는 $\mathbb{R}$의 구간의 열림/닫힘을 모두 포괄하여 정의합니다. 즉, $\mathbb{R}$의 구간이라고 하면 $[a, b], (a, b), [a, b), (a, b]$ 네 가지 경우를 모두 포함합니다.
|
|
||||||
|
|
||||||
## Elementary Sets
|
|
||||||
|
|
||||||
**정의.** ($\mathbb{R}^p$의 구간) $a_i, b_i \in \mathbb{R}$, $a_i \leq b_i$ 라 하자. $I_i$가 $\mathbb{R}$의 구간이라고 할 때, $\mathbb{R}^p$의 구간은
|
|
||||||
|
|
||||||
$$\prod_ {i=1}^p I_i = I_1 \times \cdots \times I_p$$
|
|
||||||
|
|
||||||
와 같이 정의한다.
|
|
||||||
|
|
||||||
예를 들어 $\mathbb{R}^2$의 구간이라 하면 직사각형 영역, $\mathbb{R}^3$의 구간이라 하면 직육면체 영역을 떠올릴 수 있습니다. 단, 경계는 포함되지 않을 수도 있습니다.
|
|
||||||
|
|
||||||
이러한 구간들을 유한개 모아 합집합하여 얻은 집합을 모아 elementary set이라 합니다.
|
|
||||||
|
|
||||||
**정의.** (Elementary Set) 어떤 집합이 유한개 구간의 합집합으로 표현되면 그 집합을 **elementary set**이라고 한다. 그리고 $\mathbb{R}^p$의 elementary set의 모임을 $\Sigma$로 표기한다.
|
|
||||||
|
|
||||||
임의의 구간은 유계입니다. 따라서 구간의 유한한 합집합도 유계일 것입니다.
|
|
||||||
|
|
||||||
**참고.** 임의의 elementary set은 유계이다.
|
|
||||||
|
|
||||||
Elementary set의 모임에서 집합의 연산을 정의할 수 있을 것입니다. 이 때, $\Sigma$가 ring이 된다는 것을 간단하게 확인할 수 있습니다.
|
|
||||||
|
|
||||||
**명제.** $\Sigma$는 ring이다. 하지만 전체 공간인 $\mathbb{R}^p$를 포함하고 있지 않기 때문에 $\sigma$-ring은 아니다.
|
|
||||||
|
|
||||||
구간의 길이를 재는 방법은 아주 잘 알고 있습니다. 유한개 구간의 합집합인 elementary set에서도 쉽게 잴 수 있습니다. 이제 길이 함수 $m: \Sigma \rightarrow[0, \infty)$ 을 정의하겠습니다. 아직 measure는 아닙니다.
|
|
||||||
|
|
||||||
**정의.** $a_i, b_i \in \mathbb{R}$ 가 구간 $I_i$의 양 끝점이라 하자. $\mathbb{R}^p$의 구간 $I = \displaystyle\prod_ {i=1}^p I_i$ 에 대하여,
|
|
||||||
|
|
||||||
$$m(I) = \prod_ {i=1}^p (b_i - a_i)$$
|
|
||||||
|
|
||||||
로 정의한다.
|
|
||||||
|
|
||||||
**정의.** $I_i$가 쌍마다 서로소인 $\mathbb{R}^p$의 구간이라 하자. $A = \displaystyle\bigcup_ {i=1}^n I_i$ 에 대하여
|
|
||||||
|
|
||||||
$$m(A) = \sum_ {i=1}^n m(I_i)$$
|
|
||||||
|
|
||||||
로 정의한다.
|
|
||||||
|
|
||||||
$\mathbb{R}, \mathbb{R}^2, \mathbb{R}^3$에서 생각해보면 $m$은 곧 길이, 넓이, 부피와 대응되는 함수임을 알 수 있습니다. 또한 쌍마다 서로소인 구간의 합집합에 대해서는 각 구간의 함숫값을 더한 것으로 정의합니다. 어떤 집합을 겹치지 않게 구간으로 나눌 수 있다면, 집합의 ‘길이’가 각 구간의 ‘길이’ 합이 되는 것은 자연스럽습니다.
|
|
||||||
|
|
||||||
그리고 이 정의는 well-defined 입니다. $A \in \Sigma$ 에 대해서 서로소인 유한개 구간의 합집합으로 나타내는 방법이 유일하지 않아도, $m$ 값은 같습니다.
|
|
||||||
|
|
||||||
**참고.** $m$은 $\Sigma$ 위에서 additive이다. 따라서 $m : \Sigma \rightarrow[0, \infty)$ 은 additive set function이다.
|
|
||||||
|
|
||||||
여기서 추가로 regularity 조건을 만족했으면 좋겠습니다.
|
|
||||||
|
|
||||||
**정의.** (Regularity) Set function $\mu: \Sigma \rightarrow[0, \infty]$ 가 additive라 하자. 모든 $A \in \Sigma$ 와 $\epsilon > 0$ 에 대하여
|
|
||||||
|
|
||||||
> 닫힌집합 $F \in \Sigma$, 열린집합 $G \in \Sigma$ 가 존재하여 $F \subseteq A \subseteq G$ 이고 $\mu(G) - \epsilon \leq \mu(A) \leq \mu(F) + \epsilon$
|
|
||||||
|
|
||||||
이면 $\mu$가 $\Sigma$ 위에서 **regular**하다고 정의한다.
|
|
||||||
|
|
||||||
위에서 정의한 $m$이 regular한 것은 쉽게 확인할 수 있습니다.
|
|
||||||
|
|
||||||
이제 set function $\mu: \Sigma \rightarrow[0, \infty)$ 가 finite, regular, additive 하다고 가정합니다.
|
|
||||||
|
|
||||||
**정의.** (Outer Measure) $E \in \mathcal{P}(\mathbb{R}^p)$ 의 **outer measure** $\mu^\ast: \mathcal{P}(\mathbb{R}^p) \rightarrow[0, \infty]$ 는
|
|
||||||
|
|
||||||
$$\mu^\ast(E) = \inf \left\lbrace \sum_ {n=1}^\infty \mu(A_n) : \text{열린집합 } A_n \in \Sigma \text{ 에 대하여 } E \subseteq\bigcup_ {n=1}^\infty A_n\right\rbrace.$$
|
|
||||||
|
|
||||||
로 정의한다.
|
|
||||||
|
|
||||||
Outer measure라 부르는 이유는 $E$의 바깥에서 길이를 재서 근사하기 때문입니다. Outer measure는 모든 power set에 대해서 정의할 수 있으니, 이를 이용해서 모든 집합을 잴 수 있으면 좋겠습니다. 하지만 measure가 되려면 countably additive 해야하는데, 이 조건이 가장 만족하기 까다로운 조건입니다. 실제로 countably additive 조건이 성립하지 않습니다.
|
|
||||||
|
|
||||||
**참고.**
|
|
||||||
|
|
||||||
- $\mu^\ast \geq 0$ 이다.
|
|
||||||
|
|
||||||
- $E_1 \subseteq E_2$ 이면 $\mu^\ast(E_1) \leq \mu^\ast(E_2)$ 이다. (단조성)
|
|
||||||
|
|
||||||
**정리.**
|
|
||||||
|
|
||||||
1. $A \in \Sigma$ 이면 $\mu^\ast(A) = \mu(A)$.[^1]
|
|
||||||
|
|
||||||
2. Countable subadditivity가 성립한다.
|
|
||||||
|
|
||||||
$$\mu^\ast\left( \bigcup_ {n=1}^\infty E_n \right) \leq \sum_ {n=1}^\infty \mu^\ast(E_n), \quad (\forall E_n \in \mathcal{P}(\mathbb{R}^p))$$
|
|
||||||
|
|
||||||
**증명.**
|
|
||||||
|
|
||||||
(1) $A \in \Sigma$, $\epsilon > 0$ 라 두자. $\mu$의 regularity를 이용하면, 열린집합 $G \in \Sigma$ 가 존재하여 $A \subseteq G$ 이고
|
|
||||||
|
|
||||||
$$\mu^\ast(A) \leq \mu(G) \leq \mu(A) + \epsilon$$
|
|
||||||
|
|
||||||
이다. $\mu^\ast$의 정의에 의해 열린집합 $A_n \in \Sigma$ 가 존재하여 $A \subseteq\displaystyle\bigcup_ {n=1}^\infty A_n$ 이고
|
|
||||||
|
|
||||||
$$\sum_ {n=1}^\infty \mu(A_n) \leq \mu^\ast(A) + \epsilon$$
|
|
||||||
|
|
||||||
이다. 마찬가지로 regularity에 의해 닫힌집합 $F \in \Sigma$ 가 존재하여 $F\subseteq A$ 이고 $\mu(A) \leq \mu(F) + \epsilon$ 이다. $F \subseteq\mathbb{R}^p$ 는 유계이고 닫힌집합이므로 compact set이고, finite open cover를 택할 수 있다. 즉, 적당한 $N \in \mathbb{N}$ 에 대하여 $F \subseteq\displaystyle\bigcup_ {i=1}^N A_ {i}$ 가 성립한다.
|
|
||||||
|
|
||||||
따라서
|
|
||||||
|
|
||||||
$$\mu(A) \leq \mu(F) + \epsilon \leq \sum_ {i=1}^N \mu(A_i) \leq \sum_ {i=1}^n \mu(A_i) + \epsilon \leq \mu^\ast(A) + 2\epsilon$$
|
|
||||||
|
|
||||||
이제 $\epsilon \rightarrow 0$ 로 두면 $\mu(A) = \mu^\ast(A)$ 를 얻는다.
|
|
||||||
|
|
||||||
\(2\) 부등식의 양변이 모두 $\infty$ 이면 증명할 것이 없으므로, 양변이 모두 유한하다고 가정하여 모든 $n\in \mathbb{N}$ 에 대해 $\mu^\ast(E_n) < \infty$ 라 하자. $\epsilon > 0$ 로 두고, 각 $n \in \mathbb{N}$ 에 대하여 열린집합 $A_ {n, k} \in \Sigma$ 가 존재하여 $E_n \subseteq\displaystyle\bigcup_ {k=1}^\infty A_ {n, k}$ 이고 $\displaystyle\sum_ {k=1}^\infty \mu(A_ {n,k}) \leq \mu^\ast(E_n) + 2^{-n}\epsilon$ 이다.
|
|
||||||
|
|
||||||
$\mu^\ast$는 하한(infimum)으로 정의되었기 때문에,
|
|
||||||
|
|
||||||
$$\mu^\ast\left( \bigcup_ {n=1}^\infty E_n \right) \leq \sum_ {n=1}^\infty \sum_ {k=1}^\infty \mu(A_ {n,k}) \leq \sum_ {n=1}^\infty \mu^\ast(E_n) + \epsilon$$
|
|
||||||
|
|
||||||
가 성립하고, $\epsilon \rightarrow 0$ 로 두면 부등식이 성립함을 알 수 있다.
|
|
||||||
|
|
||||||
## $\mu$-measurable Sets
|
|
||||||
|
|
||||||
Countably additive 조건이 성립하는 집합들만 모아서 measure를 construct 하려고 합니다. 아래 내용은 이를 위한 사전 준비 작업입니다.
|
|
||||||
|
|
||||||
**표기법.** (대칭차집합) $A \mathop{\mathrm{\triangle}}B = (A\setminus B) \cup (B \setminus A)$.
|
|
||||||
|
|
||||||
**정의.**
|
|
||||||
|
|
||||||
- $d(A, B) = \mu^\ast(A \mathop{\mathrm{\triangle}}B)$ 로 정의한다.
|
|
||||||
|
|
||||||
- 집합열 $A_n$에 대하여 $d(A_n, A) \rightarrow 0$ 이면 $A_n \rightarrow A$ 로 정의한다.
|
|
||||||
|
|
||||||
**참고.**
|
|
||||||
|
|
||||||
- $A, B, C \in \mathbb{R}^p$ 에 대하여 $d(A, B) \leq d(A, C) + d(C, B)$ 이다.
|
|
||||||
|
|
||||||
- $A_1, B_2, B_1, B_2 \in \mathbb{R}^p$ 일 때, 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\left.\begin{array}{c}d(A_1 \cup A_2, B_1 \cup B_2) \\d(A_1 \cap A_2, B_1 \cap B_2) \\d(A_1 \setminus A_2, B_1 \setminus B_2)\end{array}\right\rbrace\leq d(A_1, B_1) + d(A_2, B_2).$$
|
|
||||||
|
|
||||||
**정의.** (Finitely $\mu$-measurable) 집합 $A_n \in \Sigma$ 이 존재하여 $A_n \rightarrow A$ 이면 $A$가 **finitely $\mu$-measurable**이라 한다. 그리고 finitely $\mu$-measurable한 집합의 모임을 $\mathfrak{M}_F(\mu)$로 표기한다.
|
|
||||||
|
|
||||||
위 정의는 $\mu$라는 set function에 의해 $\mu^\ast (A_n \mathop{\mathrm{\triangle}}A) \rightarrow 0$ 이 되는 elementary set $A_n$이 존재한다는 의미입니다.
|
|
||||||
|
|
||||||
**정의.** ($\mu$-measurable) $A_n \in \mathfrak{M}_F(\mu)$ 에 대하여 $A = \displaystyle\bigcup_ {n=1}^\infty A_n$ 이면 $A$가 **$\mu$-measurable**이라 한다. 그리고 $\mu$-measurable한 집합의 모임을 $\mathfrak{M}(\mu)$로 표기한다.
|
|
||||||
|
|
||||||
**참고.** $\mu^\ast(A) = d(A, \varnothing) \leq d(A, B) + \mu^\ast(B)$.
|
|
||||||
|
|
||||||
**명제.** $\mu^\ast(A)$ 또는 $\mu^\ast(B)$가 유한하면, 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\lvert \mu^\ast(A) - \mu^\ast(B) \rvert \leq d(A, B).$$
|
|
||||||
|
|
||||||
**따름정리.** $A \in \mathfrak{M}_F(\mu)$ 이면 $\mu^\ast(A) < \infty$ 이다.
|
|
||||||
|
|
||||||
**증명.** $A_n \in \Sigma$ 가 존재하여 $A_n \rightarrow A$ 이고, $N \in \mathbb{N}$ 이 존재하여
|
|
||||||
|
|
||||||
$$\mu^\ast(A) \leq d(A_N, A) + \mu^\ast(A_N) \leq 1 + \mu^\ast(A_N) < \infty$$
|
|
||||||
|
|
||||||
이다.
|
|
||||||
|
|
||||||
**따름정리.** $A_n \rightarrow A$ 이고 $A_n, A \in \mathfrak{M}_F(\mu)$ 이면 $\mu^\ast(A_n)\rightarrow\mu^\ast(A) < \infty$ 이다.
|
|
||||||
|
|
||||||
**증명.** $\mu^\ast(A)$, $\mu^\ast(A_n)$가 유한하므로, $n \rightarrow\infty$ 일 때 $\lvert \mu^\ast(A_n) - \mu^\ast(A) \rvert \leq d(A_n, A) \rightarrow 0$ 이다.
|
|
||||||
|
|
||||||
## Construction of Measure
|
|
||||||
|
|
||||||
준비가 끝났으니 measure를 construct 해보겠습니다! $\mathcal{P}(\mathbb{R}^p)$에서는 할 수 없지만 정의역을 $\mathfrak{M}(\mu)$로 조금 좁히면 measure가 된다는 뜻입니다.
|
|
||||||
|
|
||||||
**정리.** $\mathfrak{M}(\mu)$는 $\sigma$-algebra 이고 $\mu^\ast$는 $\mathfrak{M}(\mu)$의 measure가 된다.
|
|
||||||
|
|
||||||
**증명.** $\mathfrak{M}(\mu)$가 $\sigma$-algebra이고 $\mu^\ast$가 $\mathfrak{M}(\mu)$에서 countably additive임을 보이면 충분하다.
|
|
||||||
|
|
||||||
**(Step 0)** *$\mathfrak{M}_F(\mu)$는 ring이다.*
|
|
||||||
|
|
||||||
$A, B \in \mathfrak{M}_F(\mu)$ 라 하자. 그러면 $A_n, B_n \in \Sigma$ 이 존재하여 $A_n \rightarrow A$, $B_n \rightarrow B$ 이 된다. 그러면
|
|
||||||
|
|
||||||
$$\left.\begin{array}{c}d(A_n \cup B_n, A \cup B) \\ d(A_n \cap B_n, A \cap B) \\ d(A_n \setminus B_n, A \setminus B)\end{array}\right\rbrace\leq d(A_n, A) + d(B_n, B) \rightarrow 0$$
|
|
||||||
|
|
||||||
이므로 $A_n \cup B_n \rightarrow A \cup B, A_n \setminus B_n \rightarrow A\setminus B$ 이기 때문에 $\mathfrak{M}_F(\mu)$는 ring이다.
|
|
||||||
|
|
||||||
**(Step 1)** *$\mu^\ast$는 $\mathfrak{M}_F(\mu)$ 위에서 additive이다*.
|
|
||||||
|
|
||||||
$\Sigma$ 위에서는 $\mu = \mu^\ast$ 이므로, 위 따름정리에 의해
|
|
||||||
|
|
||||||
$$\begin{matrix} \mu(A_n) \rightarrow\mu^\ast(A), & \mu(A_n\cup B_n) \rightarrow\mu^\ast(A\cup B), \\ \mu(B_n) \rightarrow\mu^\ast(B), & \mu(A_n\cap B_n) \rightarrow\mu^\ast(A\cap B) \end{matrix}$$
|
|
||||||
|
|
||||||
가 성립함을 알 수 있다. 일반적으로 $\mu(A_n) + \mu(B_n) = \mu(A_n \cup B_n) + \mu(A_n \cap B_n)$ 이므로 여기서 $n \rightarrow\infty$ 로 두면
|
|
||||||
|
|
||||||
$$\mu^\ast(A) + \mu^\ast(B) = \mu^\ast(A\cup B) + \mu^\ast(A \cap B)$$
|
|
||||||
|
|
||||||
를 얻는다. $A \cap B = \varnothing$ 라는 조건이 추가되면 $\mu^\ast$가 additive임을 알 수 있다.
|
|
||||||
|
|
||||||
**(Step 2)** *$\mathfrak{M}_F(\mu) = \lbrace A \in \mathfrak{M}(\mu) : \mu^\ast(A) < \infty\rbrace$.*[^2]
|
|
||||||
|
|
||||||
**Claim**. 쌍마다 서로소인 $\mathfrak{M}_F(\mu)$의 원소들을 잡아 이들의 합집합으로 $A \in \mathfrak{M}(\mu)$ 를 표현할 수 있다.
|
|
||||||
|
|
||||||
**증명.** $A_n' \in \mathfrak{M}_F(\mu)$ 에 대하여 $A = \bigcup A_n'$ 로 두자.
|
|
||||||
|
|
||||||
> $A_1 = A_1'$, $n \geq 2$ 이면 $A_n = A_n' \setminus(A_1'\cup \cdots \cup A_ {n-1}')$
|
|
||||||
|
|
||||||
와 같이 정의하면 $A_n$이 쌍마다 서로소이고 $A_n \in \mathfrak{M}_F(\mu)$ 임을 알 수 있다.
|
|
||||||
|
|
||||||
위 사실을 이용하여 $A_n \in \mathfrak{M}_F(\mu)$ 에 대하여 $A = \displaystyle\bigcup_ {n=1}^\infty A_n$ 으로 두자.
|
|
||||||
|
|
||||||
1. Countable subadditivity에 의해 $\displaystyle\mu^\ast(A) \leq \sum_ {n=1}^{\infty} \mu^\ast (A_n)$ 가 성립한다.
|
|
||||||
|
|
||||||
2. Step 1에 의해 $\displaystyle\bigcup_ {n=1}^k A_n \subseteq A$, $\displaystyle\sum_ {n=1}^{k} \mu^\ast(A_n) \leq \mu^\ast(A)$ 이다. $k \rightarrow\infty$ 로 두면 $\displaystyle\mu^\ast(A) \geq \sum_ {n=1}^\infty \mu^\ast(A_n)$ 임을 알 수 있다.
|
|
||||||
|
|
||||||
따라서 $\displaystyle\mu^\ast(A) = \sum_ {n=1}^\infty \mu^\ast(A_n)$ 이다.[^3] [^4]
|
|
||||||
|
|
||||||
이제 $B_n =\displaystyle\bigcup_ {k=1}^n A_k$ 로 두자. $\mu^\ast(A) < \infty$ 를 가정하면 $\displaystyle\sum_ {n=1}^\infty \mu^\ast(A_n)$의 수렴성에 의해
|
|
||||||
|
|
||||||
$$\displaystyle d(A, B_n) = \mu^\ast\left( \bigcup_ {k=n+1}^\infty A_k \right) = \sum_ {k=n+1}^{\infty} \mu^\ast(A_i) \rightarrow 0 \text{ as } n \rightarrow\infty$$
|
|
||||||
|
|
||||||
임을 알 수 있다.
|
|
||||||
|
|
||||||
$B_n \in \mathfrak{M}_F(\mu)$ 이므로 $C_n \in \Sigma$ 를 잡아 각 $n \in \mathbb{N}$ 에 대하여 $d(B_n, C_n)$를 임의로 작게 만들 수 있다. 그러면 $d(A, C_n) \leq d(A, B_n) + d(B_n, C_n)$ 이므로 충분히 큰 $n$에 대하여 $d(A, C_n)$도 임의로 작게 만들 수 있다. 따라서 $C_n \rightarrow A$ 임을 알 수 있고 $A \in \mathfrak{M}_F(\mu)$ 라는 결론을 내릴 수 있다.
|
|
||||||
|
|
||||||
**(Step 3)** *$\mu^\ast$는 $\mathfrak{M}(\mu)$ 위에서 countably additive이다.*
|
|
||||||
|
|
||||||
$A_n \in \mathfrak{M}(\mu)$ 가 $A \in \mathfrak{M}(\mu)$ 의 분할이라 하자. 적당한 $m \in \mathbb{N}$ 에 대하여 $\mu^\ast(A_m) = \infty$ 이면
|
|
||||||
|
|
||||||
$$\mu^\ast\left( \bigcup_ {n=1}^\infty A_n \right) \geq \mu^\ast(A_m) = \infty = \sum_ {n=1}^\infty \mu^\ast(A_n)$$
|
|
||||||
|
|
||||||
이므로 countable additivity가 성립한다.
|
|
||||||
|
|
||||||
이제 모든 $n\in \mathbb{N}$ 에 대하여 $\mu^\ast(A_n) < \infty$ 이면, Step 2에 의해 $A_n \in \mathfrak{M}_F(\mu)$ 이고
|
|
||||||
|
|
||||||
$$\mu^\ast(A) = \mu^\ast\left( \bigcup_ {n=1}^\infty A_n \right) = \sum_ {n=1}^\infty \mu^\ast(A_n)$$
|
|
||||||
|
|
||||||
가 성립한다.
|
|
||||||
|
|
||||||
**(Step 4)** *$\mathfrak{M}(\mu)$는 $\sigma$-ring이다.*
|
|
||||||
|
|
||||||
$A_n \in \mathfrak{M}(\mu)$ 이면 $B_ {n, k} \in \mathfrak{M}_F(\mu)$ 가 존재하여 $\displaystyle A_n = \bigcup_k B_ {n,k}$ 이다. 그러면
|
|
||||||
|
|
||||||
$$\bigcup_n A_n = \bigcup_ {n, k} B_ {n, k} \in \mathfrak{M}(\mu)$$
|
|
||||||
|
|
||||||
이다.
|
|
||||||
|
|
||||||
$A, B \in \mathfrak{M}(\mu)$ 라 하면 $A_n, B_n \in \mathfrak{M}_F(\mu)$ 에 대해 $\displaystyle A = \bigcup A_n$, $\displaystyle B = \bigcup B_n$ 이므로,
|
|
||||||
|
|
||||||
$$A \setminus B = \bigcup_ {n=1}^\infty \left( A_n \setminus B \right) = \bigcup_ {n=1}^\infty (A_n\setminus(A_n\cap B))$$
|
|
||||||
|
|
||||||
임을 알 수 있다. 그러므로 $A_n \cap B \in \mathfrak{M}_F(\mu)$ 인 것만 보이면 충분하다. 정의에 의해
|
|
||||||
|
|
||||||
$$A_n \cap B = \bigcup_ {k=1}^\infty (A_n \cap B_k) \in \mathfrak{M}(\mu)$$
|
|
||||||
|
|
||||||
이고 $\mu^\ast(A_n \cap B) \leq \mu^\ast(A_n) < \infty$ 이므로 $A_n\cap B \in \mathfrak{M}_F(\mu)$ 이다. 따라서 $A \setminus B$ 가 $\mathfrak{M}_F(\mu)$의 원소들의 countable 합집합으로 표현되므로 $A\setminus B \in \mathfrak{M}(\mu)$ 이다.
|
|
||||||
|
|
||||||
따라서 $\mathfrak{M}(\mu)$는 $\sigma$-ring이고 $\sigma$-algebra이다.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
이제 $\Sigma$ 위의 $\mu$ 정의를 $\mathfrak{M}(\mu)$ ($\sigma$-algebra)로 확장하여 $\mathfrak{M}(\mu)$ 위에서는 $\mu = \mu^\ast$ 로 정의합니다. $\Sigma$ 위에서 $\mu = m$ 일 때, 이와 같이 확장한 $\mathfrak{M}(m)$ 위의 $m$을 **Lebesgue measure** on $\mathbb{R}^p$라 합니다. 그리고 $A \in \mathfrak{M}(m)$ 를 Lebesgue measurable set이라 합니다.
|
|
||||||
|
|
||||||
[^1]: $A$가 open이 아니면 자명하지 않은 명제입니다.
|
|
||||||
[^2]: $A$가 $\mu$-measurable인데 $\mu^\ast(A) < \infty$이면 $A$는 finitely $\mu$-measurable이다.
|
|
||||||
[^3]: $A$가 countable union of sets in $\mathfrak{M}_F(\mu)$이므로 $\mu^\ast$도 각 set의 $\mu^\ast$의 합이 된다.
|
|
||||||
[^4]: 아직 증명이 끝나지 않았습니다. $A_n$은 $\mathfrak{M}(\mu)$의 원소가 아니라 $\mathfrak{M}_F(\mu)$의 원소입니다.
|
|
||||||
@@ -1,200 +0,0 @@
|
|||||||
---
|
|
||||||
share: true
|
|
||||||
toc: true
|
|
||||||
math: true
|
|
||||||
categories: [Mathematics, Measure Theory]
|
|
||||||
tags: [math, analysis, measure-theory]
|
|
||||||
title: "06. Convergence Theorems"
|
|
||||||
date: "2023-03-25"
|
|
||||||
github_title: "2023-03-25-convergence-theorems"
|
|
||||||
image:
|
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-06.png
|
|
||||||
attachment:
|
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
|
||||||
---
|
|
||||||
|
|
||||||
르벡 적분 이론에서 굉장히 자주 사용되는 수렴 정리에 대해 다루겠습니다. 이 정리들을 사용하면 굉장히 유용한 결과를 쉽게 얻을 수 있습니다.
|
|
||||||
|
|
||||||
## Monotone Convergence Theorem
|
|
||||||
|
|
||||||
먼저 단조 수렴 정리(monotone convergence theorem, MCT)입니다. 이 정리에서는 $f_n \geq 0$ 인 것이 매우 중요합니다.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
**정리.** (단조 수렴 정리) $f_n: X \rightarrow[0, \infty]$ 가 measurable이고 모든 $x \in X$ 에 대하여 $f_n(x) \leq f_ {n+1}(x)$ 라 하자.
|
|
||||||
|
|
||||||
$$\lim_ {n\rightarrow\infty} f_n(x) = \sup_ {n} f_n(x) = f(x)$$
|
|
||||||
|
|
||||||
로 두면,
|
|
||||||
|
|
||||||
$$\int f \,d{\mu} = \lim_ {n\rightarrow\infty} \int f_n \,d{\mu} = \sup_ {n \in \mathbb{N}} \int f_n \,d{\mu}$$
|
|
||||||
|
|
||||||
이다.
|
|
||||||
|
|
||||||
**증명.**
|
|
||||||
|
|
||||||
($\geq$) $f_n(x) \leq f(x)$ 이므로 단조성을 이용하면 모든 $n \in \mathbb{N}$ 에 대하여 $\displaystyle\int f_n \,d{\mu} \leq \displaystyle\int f \,d{\mu}$ 이다. 따라서 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\sup_n \int f_n \,d{\mu} \leq \int f \,d{\mu}.$$
|
|
||||||
|
|
||||||
($\leq$) 실수 $c \in (0, 1)$ 를 잡자. 마지막에 $c \nearrow 1$ 로 둘 것이다. 이제 measurable simple function $s$가 $0 \leq s \leq f$ 라 하자. 그러면 모든 $x \in X$ 에 대하여 $c \cdot s(x) < f(x)$ 일 것이다.
|
|
||||||
|
|
||||||
이제
|
|
||||||
|
|
||||||
$$E_n = \lbrace x \in X : f_n(x) \geq cs(x)\rbrace$$
|
|
||||||
|
|
||||||
으로 두면, $f_n(x) - cs(x)$ 가 measurable function이므로 $E_n$ 또한 measurable이다. 여기서 $f_n$이 증가하므로 $E_n\subseteq E_ {n+1} \subseteq\cdots$ 임을 알 수 있고 $f_n \rightarrow f$ 이므로 $\bigcup_ {n=1}^\infty E_n = X$ 이다.
|
|
||||||
|
|
||||||
충분히 큰 $N \in \mathbb{N}$ 에 대하여 $n \geq N$ 일 때, 모든 $x$에 대하여 $f(x) \geq f_n(x) > cs(x)$ 가 되게 할 수 있다. 그리고 $f_n \geq f_n \chi_ {E_n} \geq cs \chi_ {E_n}$ 이므로
|
|
||||||
|
|
||||||
$$\tag{\(\star\)} \int f_n \,d{\mu} \geq \int f_n \chi_ {E_n} \,d{\mu} \geq c\int s \chi_ {E_n} \,d{\mu},$$
|
|
||||||
|
|
||||||
이고 여기서 $s, \chi_ {E_n}$는 simple function이다. 그러므로 $s = \sum_ {k=0}^m y_k \chi_ {A_k}$ 라고 적으면
|
|
||||||
|
|
||||||
$$s\chi_ {E_n} = \sum_ {k=0}^m y_k \chi_ {A_k\cap E_n} \implies \int s \chi_ {E_n} \,d{\mu} = \sum_ {k=0}^m y_k \mu(A_k\cap E_n)$$
|
|
||||||
|
|
||||||
이다. $n\rightarrow\infty$ 일 때 $A_k\cap E_n \nearrow A_k$ 이므로, continuity of measure를 사용해 $\mu(A_k \cap E_n) \nearrow \mu(A_k)$ 를 얻고
|
|
||||||
|
|
||||||
$$\lim_ {n\rightarrow\infty} \int s \chi_ {E_n}\,d{\mu} = \int s \,d{\mu}$$
|
|
||||||
|
|
||||||
임도 알 수 있다. 이제 ($\star$)를 이용하면
|
|
||||||
|
|
||||||
$$\lim_ {n\rightarrow\infty} \int f_n \,d{\mu} \geq c\int s \,d{\mu}$$
|
|
||||||
|
|
||||||
이므로, $c \nearrow 1$ 로 두고 $0\leq s\leq f$ 에 대하여 $\sup$을 취하면
|
|
||||||
|
|
||||||
$$\lim_ {n\rightarrow\infty} \int f_n \,d{\mu} \geq \sup_ {0\leq s\leq f} \int s \,d{\mu} = \int f \,d{\mu}$$
|
|
||||||
|
|
||||||
가 되어 원하는 결과를 얻는다.
|
|
||||||
|
|
||||||
**참고.** 만약 부등식 $0 \leq f_n \leq f_ {n+1}$ 이 정의역 전체가 아닌 정의역의 부분집합 $E$에서만 성립한다고 하면, 다음과 같이 생각할 수 있다.
|
|
||||||
|
|
||||||
$$0 \leq f_n \chi_E \leq f_ {n+1} \chi_E \nearrow f \chi_E.$$
|
|
||||||
|
|
||||||
그러므로 단조 수렴 정리가 $E$에서도 성립함을 알 수 있다.
|
|
||||||
|
|
||||||
> $E$에서 $0\leq f_n \leq f_ {n+1} \nearrow f$ 이면 $\displaystyle\lim_ {n\rightarrow\infty} \int_E f_n \,d{\mu} = \int_E f \,d{\mu}$.
|
|
||||||
|
|
||||||
**참고.** 함수열 $f_n$이 증가하는 경우에만 정리가 성립합니다. 감소하는 경우에는 반례로 함수 $f_n = \chi_ {[n, \infty)}$ 를 생각할 수 있습니다. 그러면 $n \rightarrow\infty$ 일 때 $\chi_ {[n, \infty)} \searrow 0$ 입니다.
|
|
||||||
|
|
||||||
그러면 Lebesgue measure $m$에 대하여
|
|
||||||
|
|
||||||
$$\infty = \int \chi_ {[n, \infty)} \,d{m} \neq \int 0 \,d{m} = 0$$
|
|
||||||
|
|
||||||
이 되어 단조 수렴 정리가 성립하지 않음을 확인할 수 있습니다.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
지난 번에 $f \geq 0$ 가 measurable이면 증가하는 measurable simple 함수열 $s_n$이 존재함을 보였고, 이 $s_n$에 대하여 적분값을 계산하여
|
|
||||||
|
|
||||||
$$\int_E s_n \,d{\mu} = \sum_ {i=1}^{n2^n} \frac{i - 1}{2^n}\mu\left( \left\lbrace x \in E : \frac{i-1}{2^n} \leq f(x) \leq \frac{i}{2^n}\right\rbrace \right) + n\mu(\lbrace x \in E : f(x)\geq n\rbrace)$$
|
|
||||||
|
|
||||||
라는 결과까지 얻었습니다. 그런데 여기서
|
|
||||||
|
|
||||||
$$f(x) = \displaystyle\lim_ {n\rightarrow\infty} s_n(x)$$
|
|
||||||
|
|
||||||
이기 때문에, 단조 수렴 정리에 의해
|
|
||||||
|
|
||||||
$$\int_E f \,d{\mu} = \lim_ {n\rightarrow\infty} \int_E s_n \,d{\mu}$$
|
|
||||||
|
|
||||||
가 성립하여 기대했던 결과를 얻었습니다. 지난 번 설명한 것처럼, 이는 곧 르벡 적분은 치역을 잘게 잘라 넓이를 계산한 것으로 이해할 수 있다는 의미가 됩니다.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
다음은 단조 수렴 정리를 활용하여 유용한 결과를 쉽게 얻을 수 있는 예제입니다.
|
|
||||||
|
|
||||||
**참고.** Measurable function $f, g \geq 0$ 과 $\alpha, \beta \in [0, \infty)$ 에 대하여 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\int_E \left( \alpha f + \beta g \right) \,d{\mu} = \alpha \int_E f \,d{\mu} + \beta \int_E g\,d{\mu}.$$
|
|
||||||
|
|
||||||
**증명.** Measurable function은 measurable simple function으로 근사할 수 있고, $f, g \geq 0$ 이므로 단조증가하도록 잡을 수 있다. 그러므로 measurable simple function $f_n$, $g_n$에 대하여 $0 \leq f_n \leq f_ {n+1} \nearrow f$, $0 \leq g_n \leq g_ {n+1} \nearrow g$ 으로 잡는다.
|
|
||||||
|
|
||||||
그러면 $\alpha f_n + \beta g_n \nearrow \alpha f + \beta g$ 이고 $\alpha f_n + \beta g_n$ 은 단조증가하는 measurable simple 함수열이다. 따라서 단조 수렴 정리에 의해
|
|
||||||
|
|
||||||
$$\int_E \left( \alpha f_n + \beta g_n \right) \,d{\mu} = \alpha \int_E f_n \,d{\mu} + \beta \int_E g_n \,d{\mu} \rightarrow\alpha \int_E f \,d{\mu} + \beta \int_E g\,d{\mu}$$
|
|
||||||
|
|
||||||
이다.
|
|
||||||
|
|
||||||
이와 비슷한 방법을 급수에도 적용할 수 있습니다.
|
|
||||||
|
|
||||||
**정리.** Measurable function $f_n: X \rightarrow[0, \infty]$ 에 대하여 $\sum_ {n=1}^\infty f_n$는 measurable이고, 단조 수렴 정리에 의해 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\int_E \sum_ {n=1}^\infty f_n \,d{\mu} = \sum_ {n=1}^\infty \int_E f_n \,d{\mu}.$$
|
|
||||||
|
|
||||||
**증명.** $\sum_ {n=1}^\infty f_n$는 measurable function의 극한이므로 measurable이다. 무한급수를 부분합의 극한으로 생각하면 $f_n \geq 0$ 이므로 부분합이 증가함을 알 수 있다. 따라서 단조 수렴 정리를 적용하여 결론을 얻는다.
|
|
||||||
|
|
||||||
## Fatou's Lemma
|
|
||||||
|
|
||||||
단조 수렴 정리와 동치인 수렴 정리를 하나 더 소개합니다. Fatou's lemma로 알려져 있습니다.
|
|
||||||
|
|
||||||
**정리.** (Fatou) $f_n \geq 0$ 가 measurable이고 $E$가 measurable이라 하자. 다음이 성립한다.
|
|
||||||
|
|
||||||
$$\int_E \liminf_ {n\rightarrow\infty} f_n \,d{\mu} \leq \liminf_ {n\rightarrow\infty} \int_E f_n \,d{\mu}.$$
|
|
||||||
|
|
||||||
**증명.** $g_n = \displaystyle\inf_ {k \geq n} f_k$ 으로 두면 $\displaystyle\lim_ {n \rightarrow\infty} g_n = \liminf_ {n\rightarrow\infty} f_n$ 이다. $g_n$이 증가함은 쉽게 확인할 수 있으며 $g_n \geq 0$ 이다. $g_n$의 정의로부터 모든 $k \geq n$ 에 대하여 $g_n \leq f_k$ 이므로,
|
|
||||||
|
|
||||||
$$\int_E g_n \,d{\mu} \leq \inf_ {k\geq n} \int_E f_k \,d{\mu}$$
|
|
||||||
|
|
||||||
이다. 여기서 $n \rightarrow\infty$ 로 두면
|
|
||||||
|
|
||||||
$$\int_E \liminf_ {n\rightarrow\infty} f_n \,d{\mu} = \lim_ {n \rightarrow\infty} \int_E g_n \,d{\mu} \leq \lim_ {n \rightarrow\infty} \inf_ {k \geq n}\int_E f_k \,d{\mu} = \liminf_ {n \rightarrow\infty} \int_E f_n \,d{\mu}$$
|
|
||||||
|
|
||||||
이 된다. 여기서 첫 번째 등호는 단조 수렴 정리에 의해 성립한다.
|
|
||||||
|
|
||||||
**참고.** 위 증명에서는 단조 수렴 정리를 활용했습니다. 반대로 이 정리를 가정하면 단조 수렴 정리를 증명할 수 있기도 합니다. 따라서 이 둘은 동치입니다. 증명은 생략합니다.
|
|
||||||
|
|
||||||
**참고.** 왠지 위와 비슷한 결론이 $\limsup$에 대해서도 성립해야 할 것 같습니다. 구체적으로,
|
|
||||||
|
|
||||||
$$\int_E \limsup_ {n \rightarrow\infty} f_n \,d{\mu} \geq \limsup_ {n \rightarrow\infty} \int_E f_n \,d{\mu}$$
|
|
||||||
|
|
||||||
일 것 같습니다. 안타깝게도 이는 성립하지 않습니다. 반례로 앞서 소개한 $\chi_ {[n, \infty)}$를 한 번 더 가져올 수 있습니다. 좌변을 계산해 보면 0이지만, 우변을 계산해 보면 $\infty$입니다. 나중에 소개하겠지만, $\lvert f_n \rvert \leq g$ 를 만족하는 함수 $g \in \mathcal{L}^{1}$ 가 존재해야 위 부등식이 성립합니다.
|
|
||||||
|
|
||||||
## Properties of the Lebesgue Integral
|
|
||||||
|
|
||||||
르벡 적분의 몇 가지 성질을 소개하고 마칩니다.
|
|
||||||
|
|
||||||
1. $f$가 measurable이고 $E$에서 bounded이며 $\mu(E) < \infty$ 일 때, 적당한 실수 $M > 0$ 에 대하여 $\lvert f \rvert \leq M$ 이므로
|
|
||||||
|
|
||||||
$$\int_E \lvert f \rvert \,d{\mu} \leq \int_E M \,d{\mu} = M\mu(E) < \infty$$
|
|
||||||
|
|
||||||
임을 알 수 있습니다. 그러므로 $f \in \mathcal{L}^{1}(E, \mu)$ 입니다. $E$의 measure가 finite라는 가정 하에, bounded function은 모두 르벡 적분 가능합니다.
|
|
||||||
|
|
||||||
2. $f, g \in \mathcal{L}^{1}(E, \mu)$ 이고 $E$에서 $f \leq g$ 일 때, 단조성이 성립함을 보이려고 합니다. 앞에서는 $0 \leq f \leq g$ 인 경우에만 단조성을 증명했었는데, 이를 확장하여 함수가 음의 값을 가지는 경우에도 증명하고 싶습니다. 그러므로 양수인 부분과 음수인 부분을 나누어 고려하여 다음과 같이 적을 수 있습니다.
|
|
||||||
|
|
||||||
$$\chi_E (x) f^+(x) \leq \chi_E(x) g^+(x), \qquad \chi_E(x) g^-(x) \leq \chi_E (x) f^-(x)$$
|
|
||||||
|
|
||||||
이로부터
|
|
||||||
|
|
||||||
$$\int_E f^+ \,d{\mu} \leq \int_E g^+ \,d{\mu} < \infty, \qquad \int_E g^- \,d{\mu} \leq \int_E f^- \,d{\mu} < \infty$$
|
|
||||||
|
|
||||||
를 얻습니다. 따라서
|
|
||||||
|
|
||||||
$$\int_E f\,d{\mu} \leq \int_E g \,d{\mu}$$
|
|
||||||
|
|
||||||
가 성립하고, 함수가 음의 값을 가지는 경우에도 단조성이 성립함을 알 수 있습니다.
|
|
||||||
|
|
||||||
3. $f \in \mathcal{L}^{1}(E, \mu)$, $c \in \mathbb{R}$ 라 하면 $cf \in \mathcal{L}^{1}(E, \mu)$ 입니다. 왜냐하면
|
|
||||||
|
|
||||||
$$\int_E \lvert c \rvert\lvert f \rvert \,d{\mu} = \lvert c \rvert \int_E \lvert f \rvert\,d{\mu} < \infty$$
|
|
||||||
|
|
||||||
이기 때문입니다. 적분이 가능하니 실제 적분값을 계산할 때 선형성이 성립했으면 좋겠습니다. 앞에서는 음이 아닌 실수에 대해서만 증명했었는데, 이도 마찬가지로 확장하려 합니다. $c < 0$ 인 경우만 보이면 됩니다. 이 때, $(cf)^+ = -cf^-$, $(cf)^- = -cf^+$ 이므로, 다음이 성립합니다.
|
|
||||||
|
|
||||||
$$\int_E cf \,d{\mu} = \int_E (cf)^+ - \int_E (cf)^- \,d{\mu} = -c \int_E f^- \,d{\mu} - (-c) \int_E f^+ \,d{\mu} = c\int_E f\,d{\mu}.$$
|
|
||||||
|
|
||||||
4. Measurable function $f$에 대하여 $E$에서 $a \leq f(x) \leq b$ 이고 $\mu(E) < \infty$ 일 때 다음이 성립합니다.
|
|
||||||
|
|
||||||
$$\int_E a \chi_E \,d{\mu} \leq \int_E f\chi_E \,d{\mu} \leq \int_E b \chi_E \,d{\mu} \implies a \mu(E) \leq \int_E f \,d{\mu} \leq b \mu(E).$$
|
|
||||||
|
|
||||||
$f$가 르벡 적분 가능하다는 사실은 $f$가 bounded라는 사실을 이용합니다.
|
|
||||||
|
|
||||||
5. $f \in \mathcal{L}^{1}(E, \mu)$ 와 measurable set $A \subseteq E$ 가 주어지는 경우, $f$는 $E$의 부분집합인 $A$ 위에서도 르벡 적분 가능합니다. 이는 다음 부등식에서 확인할 수 있습니다.
|
|
||||||
|
|
||||||
$$\int_A \lvert f \rvert \,d{\mu} \leq \int_E \lvert f \rvert\,d{\mu} < \infty.$$
|
|
||||||
|
|
||||||
6. 만약 measure가 0인 집합에서 적분을 하면 어떻게 될까요? $\mu(E) = 0$ 라 하고, measurable function $f$를 적분해 보겠습니다. 여기서 $\min\lbrace \lvert f \rvert, n\rbrace\chi_E$ 도 measurable이며 $n \rightarrow\infty$ 일 때 $\min\lbrace \lvert f \rvert, n\rbrace\chi_E \nearrow \lvert f \rvert\chi_E$ 임을 이용합니다. 마지막으로 단조 수렴 정리를 적용하면
|
|
||||||
|
|
||||||
$$\begin{aligned} \int_E \lvert f \rvert \,d{\mu} &= \lim_ {n \rightarrow\infty} \int_E \min\lbrace \lvert f \rvert, n\rbrace \,d{\mu} \\ &\leq \lim_ {n \rightarrow\infty} \int_E n \,d{\mu} = \lim_ {n \rightarrow\infty} n\mu(E) = 0 \end{aligned}$$
|
|
||||||
|
|
||||||
임을 얻습니다. 따라서 $f \in \mathcal{L}^{1}(E, \mu)$ 이고, $\displaystyle\int_E f \,d{\mu} = 0$ 가 되어 적분값이 0임을 알 수 있습니다. 즉, measure가 0인 집합 위에서 적분하면 그 결과는 0이 됩니다.[^1]
|
|
||||||
|
|
||||||
[^1]: 편의상 $0\cdot\infty = 0$ 으로 정의했기 때문에 $f \equiv \infty$ 인 경우에도 성립합니다.
|
|
||||||
@@ -1,130 +0,0 @@
|
|||||||
---
|
|
||||||
share: true
|
|
||||||
toc: true
|
|
||||||
math: true
|
|
||||||
categories: [Mathematics, Measure Theory]
|
|
||||||
tags: [math, analysis, measure-theory]
|
|
||||||
title: "08. Comparison with the Riemann Integral"
|
|
||||||
date: "2023-06-20"
|
|
||||||
github_title: "2023-06-20-comparison-with-riemann-integral"
|
|
||||||
image:
|
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-08.png
|
|
||||||
attachment:
|
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
|
||||||
---
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## Comparison with the Riemann Integral
|
|
||||||
|
|
||||||
먼저 혼동을 막기 위해 Lebesgue measure $m$에 대하여 르벡 적분을
|
|
||||||
|
|
||||||
$$\int_ {[a, b]} f \,d{m} = \int_ {[a, b]} f \,d{x} = \int_a^b f \,d{x}$$
|
|
||||||
|
|
||||||
와 같이 표기하고, 리만 적분은
|
|
||||||
|
|
||||||
$$\mathcal{R}\int_a^b f\,d{x}$$
|
|
||||||
|
|
||||||
로 표기하겠습니다.
|
|
||||||
|
|
||||||
**정리.** $a, b \in \mathbb{R}$ 에 대하여 $a < b$ 이고 함수 $f$가 유계라고 하자.
|
|
||||||
|
|
||||||
1. $f \in \mathcal{R}[a, b]$ 이면 $f \in \mathcal{L}^{1}[a, b]$ 이고 $\displaystyle\int_a^b f\,d{x} = \mathcal{R}\int_a^b f \,d{x}$ 이다.
|
|
||||||
|
|
||||||
2. $f \in \mathcal{R}[a, b]$ $\iff$ $f$가 연속 $m$-a.e. on $[a, b]$.
|
|
||||||
|
|
||||||
쉽게 풀어서 적어보면, (1)은 $f$가 $[a, b]$에서 리만 적분 가능하면 르벡 적분 또한 가능하며, 적분 값이 같다는 의미입니다. 즉 르벡 적분이 리만 적분보다 더 강력하다는 것을 알 수 있습니다.
|
|
||||||
|
|
||||||
또한 (2)는 리만 적분 가능성에 대한 동치 조건을 알려줍니다. Almost everywhere라는 조건이 붙었기 때문에, $\mathcal{L}^1$의 equivalence class를 고려하면 사실상 연속함수에 대해서만 리만 적분이 가능하다는 뜻이 됩니다.
|
|
||||||
|
|
||||||
**증명.** $k \in \mathbb{N}$ 에 대하여 구간 $[a, b]$의 분할 $P_k = \lbrace a = x_0^k < x_1^k < \cdots < x_ {n_k}^k = b\rbrace$ 를 잡는다. 단 $P_k \subseteq P_ {k+1}$ (refinement) 이고 $\lvert x_ {i}^k - x_ {i-1}^k \rvert < \frac{1}{k}$ 이 되도록 한다.
|
|
||||||
|
|
||||||
그러면 리만 적분의 정의로부터
|
|
||||||
|
|
||||||
$$\lim_ {k \rightarrow\infty} L(P_k, f) = \mathcal{R}\underline{\int_ {a}^{b}} f\,d{x}, \quad \lim_ {k \rightarrow\infty} U(P_k, f) = \mathcal{R} \overline{\int_ {a}^{b}} f \,d{x}$$
|
|
||||||
|
|
||||||
임을 알 수 있다.
|
|
||||||
|
|
||||||
이제 measurable simple function $U_k, L_k$를 다음과 같이 잡는다.
|
|
||||||
|
|
||||||
$$U_k = \sum_ {i=1}^{n_k} \sup_ {x_ {i-1}^k \leq y \leq x_ {i}^k} f(y) \chi_ {(x_ {i-1}^k, x_i^k]}, \quad L_k = \sum_ {i=1}^{n_k} \inf_ {x_ {i-1}^k \leq y \leq x_ {i}^k} f(y) \chi_ {(x_ {i-1}^k, x_i^k]}.$$
|
|
||||||
|
|
||||||
그러면 구간 $[a, b]$ 위에서 $L_k \leq f \leq U_k$인 것은 당연하고, 르벡 적분이 가능하므로
|
|
||||||
|
|
||||||
$$\int_a^b L_k \,d{x} = L(P_k, f), \quad \int_a^b U_k \,d{x} = U(P_k, f)$$
|
|
||||||
|
|
||||||
이 됨을 알 수 있다. 여기서 $P_k \subseteq P_ {k + 1}$ 이 되도록 잡았기 때문에, $L_k$는 증가하는 수열, $U_k$는 감소하는 수열이다.
|
|
||||||
|
|
||||||
그러므로
|
|
||||||
|
|
||||||
$$L(x) = \lim_ {k \rightarrow\infty} L_k(x), \quad U(x) = \lim_ {k \rightarrow\infty} U_k(x)$$
|
|
||||||
|
|
||||||
로 정의했을 때, 극한이 존재함을 알 수 있다. 여기서 $f, L_k, U_k$가 모두 유계인 함수이므로 지배 수렴 정리에 의해
|
|
||||||
|
|
||||||
$$\int_a^b L \,d{x} = \lim_ {k \rightarrow\infty} \int_a^b L_k \,d{x} = \lim_ {k \rightarrow\infty} L(P_k, f) = \mathcal{R}\underline{\int_ {a}^{b}} f\,d{x} < \infty,$$
|
|
||||||
|
|
||||||
$$\int_a^b U\,d{x} = \lim_ {k \rightarrow\infty} \int_a^b U_k \,d{x} = \lim_ {k \rightarrow\infty} U(P_k, f) = \mathcal{R} \overline{\int_ {a}^{b}} f \,d{x} < \infty$$
|
|
||||||
|
|
||||||
이므로 $L, U \in \mathcal{L}^{1}[a, b]$ 이다.
|
|
||||||
|
|
||||||
위 사실을 종합하면 $f \in \mathcal{R}[a, b]$ 일 때,
|
|
||||||
|
|
||||||
$$\mathcal{R}\underline{\int_ {a}^{b}} f\,d{x} = \mathcal{R}\overline{\int_ {a}^{b}} f\,d{x}$$
|
|
||||||
|
|
||||||
이므로
|
|
||||||
|
|
||||||
$$\int_a^b (U - L)\,d{x} = 0$$
|
|
||||||
|
|
||||||
가 되어 $U = L$ $m$-a.e. on $[a, b]$라는 사실을 알 수 있다. 역으로 이를 거꾸로 읽어보면 $U = L$ $m$-a.e. on $[a, b]$일 때 $f \in \mathcal{R}[a, b]$ 가 되는 것 또한 알 수 있다.
|
|
||||||
|
|
||||||
(1) 위 논의에 의해 $f \in \mathcal{R}[a, b]$ 이면 $f = U = L$ a.e. on $[a, b]$ 이다. 따라서 $f$는 measurable.
|
|
||||||
|
|
||||||
$$\int_a^b f \,d{x} = \mathcal{R}\int_a^b f\,d{x} < \infty \implies f \in \mathcal{L}^{1}[a, b].$$
|
|
||||||
|
|
||||||
(2) 만약 $x \notin \bigcup_ {k=1}^{\infty} P_k$ 라고 가정하면, 임의의 $\epsilon > 0$ 에 대해 충분히 큰 $n \in \mathbb{N}$ 을 잡았을 때 적당한 $j_0 \in \mathbb{N}$ 이 존재하여 $x \in (t_ {j_0-1}^n, t_ {j_0}^n)$ 이면서
|
|
||||||
|
|
||||||
$$\lvert L_n(x) - L(x) \rvert + \lvert U_n(x) - U(x) \rvert < \epsilon$$
|
|
||||||
|
|
||||||
이 되도록 할 수 있다. 그러면 $y \in (t_ {j_0-1}^n, t_ {j_0}^n)$ 일 때
|
|
||||||
|
|
||||||
$$\begin{aligned} \lvert f(x) - f(y) \rvert & \leq M_ {j_0}^n - m_ {j_0}^n = M_ {j_0}^n - U(x) + U(x) - L(x) + L(x) - m_ {j_0}^n \\ & \leq U(x) - L(x) + \epsilon \end{aligned}$$
|
|
||||||
|
|
||||||
가 됨을 알 수 있다.
|
|
||||||
|
|
||||||
위 부등식에 의해 $y \in \lbrace x : U(x) = L(x)\rbrace \setminus\bigcup_ {k=1}^{\infty} P_k$ 이면 $f$가 $y$에서 연속임을 알 수 있게 된다.
|
|
||||||
|
|
||||||
따라서, $f$가 연속인 점들의 집합을 $C_f$라 하면
|
|
||||||
|
|
||||||
$$\lbrace x : U(x) = L(x)\rbrace \setminus\bigcup_ {k=1}^{\infty} P_k \subseteq C_f \subseteq\lbrace x : U(x) = L(x)\rbrace$$
|
|
||||||
|
|
||||||
이 된다. 한편 $\bigcup_ {k=1}^{\infty} P_k$는 measure가 0 이므로, $U = L$ $m$-a.e. 인 것과 $f$가 연속 $m$-a.e. 인 것은 동치이다. 위 논의의 결과를 이용하면 $f \in \mathcal{R}[a, b]$ 인 것과 $f$가 연속 $m$-a.e. 인 것은 동치이다.
|
|
||||||
|
|
||||||
아래는 증명의 부산물입니다.
|
|
||||||
|
|
||||||
**참고.**
|
|
||||||
|
|
||||||
1. $x \notin \bigcup_ {k=1}^\infty P_k$ 이면 $f$가 $x$에서 연속 $\iff f(x) = U(x) = L(x)$ 이다.
|
|
||||||
|
|
||||||
2. $L(x) \leq f(x) \leq U(x)$ 이고 measurable function의 극한인 $L(x), U(x)$ 또한 measurable이다.
|
|
||||||
|
|
||||||
3. $f$가 유계라는 조건이 있기 때문에 $f \geq 0$ 인 경우만 생각해도 충분하다. $\lvert f \rvert \leq M$ 라고 하면 $f$ 대신 $f + M$ 을 생각하면 되기 때문이다.
|
|
||||||
|
|
||||||
이제 리만 적분의 유용한 성질들을 가지고 와서 사용할 수 있습니다.
|
|
||||||
|
|
||||||
1. $f \geq 0$ 이고 measurable일 때, $f_n = f\chi_ {[0, n]}$으로 정의한다. 단조 수렴 정리에 의해
|
|
||||||
|
|
||||||
$$\int_0^\infty f \,d{x} = \lim_ {n \rightarrow\infty} \int_0^\infty f_n \,d{x} = \lim_ {n \rightarrow\infty} \int_0^n f \,d{x}$$
|
|
||||||
|
|
||||||
이다. 마지막 적분을 리만 적분으로 계산할 수 있다.
|
|
||||||
|
|
||||||
2. 닫힌 유계 구간 $I \subseteq(0, \infty)$ 에 대하여 $f \in \mathcal{R}(I)$ 라 하면 $f \in \mathcal{L}^{1}(I)$ 이다. $f_n = f\chi_ {[0, n]}$ 으로 잡으면 $\lvert f_n \rvert \leq f$ 이므로 지배 수렴 정리를 적용하여
|
|
||||||
|
|
||||||
$$\int_0^\infty f \,d{x} = \lim_ {n \rightarrow\infty} \int_0^\infty f_n \,d{x} = \lim_ {n \rightarrow\infty} \int_0^n f \,d{x} = \lim_ {n \rightarrow\infty} \mathcal{R} \int_0^n f \,d{x}$$
|
|
||||||
|
|
||||||
임을 알 수 있다.
|
|
||||||
|
|
||||||
마찬가지로 $f_n = f\chi_ {(1/n, 1)}$ 으로 잡은 경우에도 지배 수렴 정리에 의해
|
|
||||||
|
|
||||||
$$\int_0^1 f\,d{x} = \lim_ {n \rightarrow\infty} \int_ {0}^1 f_n \,d{x} = \lim_ {n \rightarrow\infty}\int_ {1/n}^1 f \,d{x} = \lim_ {n \rightarrow\infty} \mathcal{R}\int_ {1/n}^1 f \,d{x}$$
|
|
||||||
|
|
||||||
이 된다.
|
|
||||||
@@ -1,210 +0,0 @@
|
|||||||
---
|
|
||||||
share: true
|
|
||||||
toc: true
|
|
||||||
math: true
|
|
||||||
categories: [Mathematics, Measure Theory]
|
|
||||||
tags: [math, analysis, measure-theory]
|
|
||||||
title: "09. $\\mathcal{L}^p$ Functions"
|
|
||||||
date: "2023-07-31"
|
|
||||||
github_title: "2023-07-31-Lp-functions"
|
|
||||||
image:
|
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-09.png
|
|
||||||
attachment:
|
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
|
||||||
---
|
|
||||||
|
|
||||||
{: .w-50}
|
|
||||||
|
|
||||||
## Integration on Complex Valued Function
|
|
||||||
|
|
||||||
Let $(X, \mathscr{F}, \mu)$ be a measure space, and $E \in \mathscr{F}$.
|
|
||||||
|
|
||||||
**정의.**
|
|
||||||
|
|
||||||
1. A complex valued function $f = u + iv$, (where $u, v$ are real functions) is measurable if $u$ and $v$ are both measurable.
|
|
||||||
|
|
||||||
2. For a complex function $f$,
|
|
||||||
|
|
||||||
$$f \in \mathcal{L}^{1}(E, \mu) \iff \int_E \left\lvert f \right\rvert \,d{\mu} < \infty \iff u, v \in \mathcal{L}^{1}(E, \mu).$$
|
|
||||||
|
|
||||||
3. If $f = u + iv \in \mathcal{L}^{1}(E, \mu)$, we define
|
|
||||||
|
|
||||||
$$\int_E f \,d{\mu} = \int_E u \,d{\mu} + i\int_E v \,d{\mu}.$$
|
|
||||||
|
|
||||||
**참고.**
|
|
||||||
|
|
||||||
1. Linearity also holds for complex valued functions. For $f_1, f_2 \in \mathcal{L}^{1}(\mu)$ and $\alpha \in \mathbb{C}$,
|
|
||||||
|
|
||||||
$$\int_E \left( f_1 + \alpha f_2 \right) \,d{\mu} = \int_E f_1 \,d{\mu} + \alpha \int_E f_2 \,d{\mu}.$$
|
|
||||||
|
|
||||||
2. Choose $c \in \mathbb{C}$ and $\left\lvert c \right\rvert = 1$ such that $\displaystyle c \int_E f \,d{\mu} \geq 0$. This is possible since multiplying by $c$ is equivalent to a rotation.
|
|
||||||
|
|
||||||
Now set $cf = u + vi$ where $u, v$ are real functions and the integral of $v$ over $E$ is $0$. Then,
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lvert \int_E f \,d{\mu} \right\rvert & = c \int_E f\,d{\mu} = \int_E u \,d{\mu} \\ & \leq \int_E (u^2+v^2)^{1/2} \,d{\mu} \\ & = \int_E \left\lvert cf \right\rvert \,d{\mu} = \int_E \left\lvert f \right\rvert \,d{\mu}. \end{aligned}$$
|
|
||||||
|
|
||||||
## Functions of Class $\mathcal{L}^{p}$
|
|
||||||
|
|
||||||
### $\mathcal{L}^p$ Space
|
|
||||||
|
|
||||||
Assume that $(X, \mathscr{F}, \mu)$ is given and $X = E$.
|
|
||||||
|
|
||||||
**정의.** ($\mathcal{L}^{p}$) A complex function $f$ is in $\mathcal{L}^{p}(\mu)$ if $f$ is measurable and $\displaystyle\int_E \left\lvert f \right\rvert ^p \,d{\mu} < \infty$.
|
|
||||||
|
|
||||||
**정의.** ($\mathcal{L}^{p}$-norm) **$\mathcal{L}^{p}$-norm** of $f$ is defined as
|
|
||||||
|
|
||||||
$$\left\lVert f \right\rVert_p = \left[\int_E \left\lvert f \right\rvert ^p \,d{\mu} \right]^{1/p}.$$
|
|
||||||
|
|
||||||
### Inequalities
|
|
||||||
|
|
||||||
**정리.** (Young Inequality) For $a, b \geq 0$, if $p > 1$ and $1/p + 1/q = 1$, then
|
|
||||||
|
|
||||||
$$ab \leq \frac{a^p}{p} + \frac{b^q}{q}.$$
|
|
||||||
|
|
||||||
**증명.** From $1/p + 1/q = 1$, $p - 1 = \frac{1}{q - 1}$. The graph $y = x^{p - 1}$ is equal to the graph of $x = y^{q - 1}$. Sketch the graph on the $xy$-plane and consider the area bounded by $x = 0$, $x = a$, $y = 0$, $y = b$. Then we directly see that
|
|
||||||
|
|
||||||
$$\int_0^a x^{p-1} \,d{x} + \int_0^b y^{q-1} \,d{y} \geq ab,$$
|
|
||||||
|
|
||||||
with equality when $a^p = b^q$. Evaluating the integral gives the desired inequality.
|
|
||||||
|
|
||||||
**참고.** For $\mathscr{F}$-measurable $f, g$ on $X$,
|
|
||||||
|
|
||||||
$$\left\lvert fg \right\rvert \leq \frac{\left\lvert f \right\rvert ^p}{p} + \frac{\left\lvert g \right\rvert ^q}{q} \implies \left\lVert fg \right\rVert_1 \leq \frac{\left\lVert f \right\rVert_p^p}{p} + \frac{\left\lVert g \right\rVert_q^q}{q}$$
|
|
||||||
|
|
||||||
by Young inequality. In particular, if $\left\lVert f \right\rVert_p = \left\lVert g \right\rVert_q = 1$, then $\left\lVert fg \right\rVert_1 \leq 1$.
|
|
||||||
|
|
||||||
**정리.** (Hölder Inequality) Let $1 < p < \infty$ and $\displaystyle\frac{1}{p} + \frac{1}{q} = 1$. If $f, g$ are measurable,
|
|
||||||
|
|
||||||
$$\left\lVert fg \right\rVert_1 \leq \left\lVert f \right\rVert_p \left\lVert g \right\rVert_q.$$
|
|
||||||
|
|
||||||
So if $f \in \mathcal{L}^{p}(\mu)$ and $g \in \mathcal{L}^{q}(\mu)$, then $fg \in \mathcal{L}^{1}(\mu)$.
|
|
||||||
|
|
||||||
**증명.** If $\left\lVert f \right\rVert_p = 0$ or $\left\lVert g \right\rVert_q = 0$ then $f = 0$ a.e. or $g = 0$ a.e. So $fg = 0$ a.e. and $\left\lVert fg \right\rVert_1 = 0$.
|
|
||||||
|
|
||||||
Now suppose that $\left\lVert f \right\rVert_p > 0$ and $\left\lVert g \right\rVert_q > 0$. By the remark above, the result directly follows from
|
|
||||||
|
|
||||||
$$\left\lVert \frac{f}{\left\lVert f \right\rVert_p} \cdot \frac{g}{\left\lVert g \right\rVert_q} \right\rVert_1 \leq 1.$$
|
|
||||||
|
|
||||||
**정리.** (Minkowski Inequality) For $1 \leq p < \infty$, if $f, g$ are measurable, then
|
|
||||||
|
|
||||||
$$\left\lVert f + g \right\rVert_p \leq \left\lVert f \right\rVert_p + \left\lVert g \right\rVert_p.$$
|
|
||||||
|
|
||||||
**증명.** If $f, g \notin \mathcal{L}^{p}$, the right hand side is $\infty$ and we are done. For $p = 1$, the equality is equivalent to the triangle inequality. Also if $\left\lVert f + g \right\rVert_p = 0$, the inequality holds trivially. We suppose that $p > 1$, $f, g \in \mathcal{L}^p$ and $\left\lVert f+g \right\rVert_p > 0$.
|
|
||||||
|
|
||||||
Let $q = \frac{p}{p-1}$. Since
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lvert f + g \right\rvert ^p & = \left\lvert f + g \right\rvert \cdot \left\lvert f + g \right\rvert ^{p - 1} \\ & \leq \bigl(\left\lvert f \right\rvert + \left\lvert g \right\rvert \bigr) \left\lvert f + g \right\rvert ^{p-1}, \end{aligned}$$
|
|
||||||
|
|
||||||
we have
|
|
||||||
|
|
||||||
$$\begin{aligned} \int \left\lvert f+g \right\rvert ^p & \leq \int \left\lvert f \right\rvert \cdot \left\lvert f+g \right\rvert ^{p-1} + \int \left\lvert g \right\rvert \cdot \left\lvert f+g \right\rvert ^{p-1} \\ & \leq \left( \int \left\lvert f \right\rvert ^p \right)^{1/p}\left( \int \left\lvert f+g \right\rvert ^{(p-1)q} \right)^{1/q} \\ & \quad + \left( \int \left\lvert q \right\rvert ^p \right)^{1/p}\left( \int \left\lvert f+g \right\rvert ^{(p-1)q} \right)^{1/q} \\ & = \left( \left\lVert f \right\rVert_p + \left\lVert g \right\rVert_p \right) \left( \int \left\lvert f+g \right\rvert ^p \right)^{1/q}. \end{aligned}$$
|
|
||||||
|
|
||||||
Since $\left\lVert f + g \right\rVert_p^p > 0$, we have
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lVert f + g \right\rVert_p & = \left( \int \left\lvert f+g \right\rvert ^p \right)^{1/p} \\ & = \left( \int \left\lvert f+g \right\rvert ^p \right)^{1 - \frac{1}{q}} \\ & \leq \left\lVert f \right\rVert_p + \left\lVert g \right\rVert_p. \end{aligned}$$
|
|
||||||
|
|
||||||
**정의.** $f \sim g \iff f = g$ $\mu$-a.e. and define
|
|
||||||
|
|
||||||
$$[f] = \left\lbrace g : f \sim g\right\rbrace.$$
|
|
||||||
|
|
||||||
We treat $[f]$ as an element in $\mathcal{L}^{p}(X, \mu)$, and write $f = [f]$.
|
|
||||||
|
|
||||||
**참고.**
|
|
||||||
|
|
||||||
1. We write $\left\lVert f \right\rVert_p = 0 \iff f = [0] = 0$ in the sense that $f = 0$ $\mu$-a.e.
|
|
||||||
|
|
||||||
2. Now $\lVert \cdot \rVert_p$ is a **norm** in $\mathcal{L}^{p}(X, \mu)$ so $d(f, g) = \left\lVert f - g \right\rVert_p$ is a **metric** in $\mathcal{L}^{p}(X, \mu)$.
|
|
||||||
|
|
||||||
## Completeness of $\mathcal{L}^p$
|
|
||||||
|
|
||||||
Now we have a *function space*, so we are interested in its *completeness*.
|
|
||||||
|
|
||||||
**정의.** (Convergence in $\mathcal{L}^p$) Let $f, f_n \in \mathcal{L}^{p}(\mu)$.
|
|
||||||
|
|
||||||
1. $f_n \rightarrow f$ in $\mathcal{L}^p(\mu) \iff \left\lVert f_n-f \right\rVert_p \rightarrow 0$ as $n \rightarrow\infty$.
|
|
||||||
|
|
||||||
2. $\left( f_n \right)_{n=1}^\infty$ is a Cauchy sequence in $\mathcal{L}^{p}(\mu)$ if and only if
|
|
||||||
|
|
||||||
> $\forall \epsilon > 0$, $\exists\,N > 0$ such that $n, m \geq N \implies \left\lVert f_n-f_m \right\rVert_p < \epsilon$.
|
|
||||||
|
|
||||||
**도움정리.** Let $\left( g_n \right)$ be a sequence of measurable functions. Then,
|
|
||||||
|
|
||||||
$$\left\lVert \sum_{n=1}^{\infty} \left\lvert g_n \right\rvert \right\rVert_p \leq \sum_{n=1}^{\infty} \left\lVert g_n \right\rVert_p.$$
|
|
||||||
|
|
||||||
Thus, if $\displaystyle\sum_{n=1}^{\infty} \left\lVert g_n \right\rVert_p < \infty$, then $\displaystyle\sum_{n=1}^{\infty} \left\lvert g_n \right\rvert < \infty$ $\mu$-a.e. So $\displaystyle\sum_{n=1}^{\infty} g_n < \infty$ $\mu$-a.e.
|
|
||||||
|
|
||||||
**증명.** By monotone convergence theorem and Minkowski inequality,
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lVert \sum_{n=1}^{\infty} \left\lvert g_n \right\rvert \right\rVert_p & = \lim_{m \rightarrow\infty} \left\lVert \sum_{n=1}^{m} \left\lvert g_n \right\rvert \right\rVert_p \\ & \leq \lim_{n \rightarrow\infty} \sum_{n=1}^{m} \left\lVert g_n \right\rVert_p \\ & = \sum_{n=1}^{\infty} \left\lVert g_n \right\rVert_p < \infty. \end{aligned}$$
|
|
||||||
|
|
||||||
Thus $\displaystyle\sum_{n=1}^{\infty} \left\lvert g_n \right\rvert < \infty$ $\mu$-a.e. and $\displaystyle\sum_{n=1}^{\infty} g_n < \infty$ $\mu$-a.e. by absolute convergence.
|
|
||||||
|
|
||||||
**정리.** (Fischer) Suppose $\left( f_n \right)$ is a Cauchy sequence in $\mathcal{L}^{p}(\mu)$. Then there exists $f \in \mathcal{L}^{p}(\mu)$ such that $f_n \rightarrow f$ in $\mathcal{L}^{p}(\mu)$.
|
|
||||||
|
|
||||||
**증명.** We construct $\left( n_k \right)$ by the following procedure.
|
|
||||||
|
|
||||||
$\exists\,n_1 \in \mathbb{N}$ such that $\left\lVert f_m - f_{n_1} \right\rVert_p < \frac{1}{2}$ for all $m \geq n_1$.
|
|
||||||
|
|
||||||
$\exists\,n_2 \in \mathbb{N}$ such that $\left\lVert f_m - f_{n_2} \right\rVert_p < \frac{1}{2^2}$ for all $m \geq n_2$.
|
|
||||||
|
|
||||||
Then, $\exists\,1 \leq n_1 < n_2 < \cdots < n_k$ such that $\left\lVert f_m - f_{n_k} \right\rVert_p < \frac{1}{2^k}$ for $m \geq n_k$.
|
|
||||||
|
|
||||||
Since $\displaystyle\left\lVert f_{n_{k+1}} - f_{n_k} \right\rVert_p < \frac{1}{2^k}$, we have
|
|
||||||
|
|
||||||
$$\sum_{k=1}^{\infty} \left\lVert f_{n_{k+1}} - f_{n_k} \right\rVert_p < \infty.$$
|
|
||||||
|
|
||||||
By the above lemma, $\sum \left\lvert f_{n_{k+1}} - f_{n_k} \right\rvert$ and $\sum (f_{n_{k+1}} - f_{n_k})$ are finite. Let $f_{n_0} \equiv 0$. Then as $m \rightarrow\infty$,
|
|
||||||
|
|
||||||
$$f_{n_{m+1}} = \sum_{k=0}^{m} \left( f_{n_{k+1}} - f_{n_k} \right)$$
|
|
||||||
|
|
||||||
converges $\mu$-a.e. Take $N \in \mathscr{F}$ with $\mu(N) = 0$ such that $f_{n_k}$ converges on $X \setminus N$. Let
|
|
||||||
|
|
||||||
$$f(x) = \begin{cases} \displaystyle\lim_{k \rightarrow\infty} f_{n_k} (x) & (x \in X \setminus N) \\ 0 & (x\in N) \end{cases}$$
|
|
||||||
|
|
||||||
then $f$ is measurable. Using the convergence,
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lVert f - f_{n_m} \right\rVert_p & = \left\lVert \sum_{k=m}^{\infty} \left( f_{n_{k+1}} (x) - f_{n_k}(x) \right) \right\rVert_p \\ & \leq \left\lVert \sum_{k=m}^{\infty} \left\lvert f_{n_{k+1}} (x) - f_{n_k}(x) \right\rvert \right\rVert_p \\ & \leq \sum_{k=m}^{\infty} \left\lVert f_{n_{k+1}} - f_{n_k} \right\rVert_p \leq 2^{-m} \end{aligned}$$
|
|
||||||
|
|
||||||
by the choice of $f_{n_k}$. So $f_{n_k} \rightarrow f$ in $\mathcal{L}^{p}(\mu)$. Also, $f = (f - f_{n_k}) + f_{n_k} \in \mathcal{L}^{p}(\mu)$.
|
|
||||||
|
|
||||||
Let $\epsilon > 0$ be given. Since $\left( f_n \right)$ is a Cauchy sequence in $\mathcal{L}^{p}$, $\exists\,N \in \mathbb{N}$ such that for all $n, m \geq N$, $\left\lVert f_n - f_m \right\rVert < \frac{\epsilon}{2}$. Note that $n_k \geq k$, so $n_k \geq N$ if $k \geq N$. Choose $N_1 \geq N$ such that for $k \geq N$, $\left\lVert f - f_{n_k} \right\rVert_p < \frac{\epsilon}{2}$. Then for all $k \geq N_1$,
|
|
||||||
|
|
||||||
$$\left\lVert f - f_k \right\rVert_p \leq \left\lVert f - f_{n_k} \right\rVert_p + \left\lVert f_{n_k} - f_k \right\rVert_p < \frac{\epsilon}{2} + \frac{\epsilon}{2} = \epsilon.$$
|
|
||||||
|
|
||||||
**참고.** $\mathcal{L}^{p}$ is a complete normed vector space, also known as **Banach space**.
|
|
||||||
|
|
||||||
**정리.** $C[a, b]$ is a dense subset of $\mathcal{L}^{p}[a, b]$. That is, for every $f \in \mathcal{L}^{p}[a, b]$ and $\epsilon > 0$, $\exists\,g \in C[a, b]$ such that $\left\lVert f - g \right\rVert_p < \epsilon$.
|
|
||||||
|
|
||||||
**증명.** Let $A$ be a closed subset in $[a, b]$, and consider a distance function
|
|
||||||
|
|
||||||
$$d(x, A) = \inf_{y\in A} \left\lvert x - y \right\rvert , \quad x \in [a, b].$$
|
|
||||||
|
|
||||||
Since $d(x, A) \leq \left\lvert x - z \right\rvert \leq \left\lvert x - y \right\rvert + \left\lvert y - z \right\rvert$ for all $z \in A$, taking infimum over $z \in A$ gives $d(x, A) \leq \left\lvert x - y \right\rvert + d(y, A)$. So
|
|
||||||
|
|
||||||
$$\left\lvert d(x, A) - d(y, A) \right\rvert \leq \left\lvert x - y \right\rvert ,$$
|
|
||||||
|
|
||||||
and $d(x, A)$ is continuous. If $d(x, A) = 0$, $\exists\,x_n \in A$ such that $\left\lvert x_n - x \right\rvert \rightarrow d(x, A) = 0$. Since $A$ is closed, $x \in A$. We know that $x \in A \iff d(x, A) = 0$.
|
|
||||||
|
|
||||||
Let
|
|
||||||
|
|
||||||
$$g_n(x) = \frac{1}{1 + n d(x, A)}.$$
|
|
||||||
|
|
||||||
$g_n$ is continuous, $g_n(x) = 1$ if and only if $x \in A$. Also for all $x \in [a, b] \setminus A$, $g_n(x) \rightarrow 0$ as $n \rightarrow\infty$. By Lebesgue’s dominated convergence theorem,
|
|
||||||
|
|
||||||
$$\begin{aligned} \left\lVert g_n - \chi_A \right\rVert_p^p & = \int_A \left\lvert g_n - \chi_A \right\rvert ^p \,d{x} + \int_{[a, b]\setminus A} \left\lvert g_n - \chi_A \right\rvert ^p \,d{x} \\ & = 0 + \int_{[a, b]\setminus A} \left\lvert g_n \right\rvert ^p \,d{x} \rightarrow 0 \end{aligned}$$
|
|
||||||
|
|
||||||
since $\left\lvert g_n \right\rvert ^p \leq 1$. We have shown that characteristic functions of closed sets can be approximated by continuous functions in $\mathcal{L}^{p}[a, b]$.
|
|
||||||
|
|
||||||
For every $A \in \mathfrak{M}(m)$, $\exists\,F_\text{closed} \subseteq A$ such that $m(A \setminus F) < \epsilon$. Since $\chi_A - \chi_F = \chi_{A \setminus F}$,
|
|
||||||
|
|
||||||
$$\begin{aligned} \int \left\lvert \chi_A-\chi_F \right\rvert ^p \,d{x} & = \int \left\lvert \chi_{A\setminus F} \right\rvert ^p \,d{x} \\ & = \int_{A\setminus F} \,d{x} = m(A \setminus F) < \epsilon. \end{aligned}$$
|
|
||||||
|
|
||||||
Therefore, for every $A \in \mathfrak{M}$, $\exists\,g_n \in C[a, b]$ such that $\left\lVert g_n - \chi_A \right\rVert_p \rightarrow 0$ as $n \rightarrow\infty$. So characteristic functions of any measurable set can be approximated by continuous functions in $\mathcal{L}^{p}[a, b]$.
|
|
||||||
|
|
||||||
Next, for any measurable simple function $f = \sum_{k=1}^{m}a_k \chi_{A_k}$, we can find $g_n^k \in C[a, b]$ so that
|
|
||||||
|
|
||||||
$$\left\lVert f - \sum_{k=1}^{m} a_k g_n^k \right\rVert_p = \left\lVert \sum_{k=1}^{m}a_k \left( \chi_{A_k} - g_n^k \right) \right\rVert_p \rightarrow 0.$$
|
|
||||||
|
|
||||||
Next for $f \in \mathcal{L}^{p}$ and $f \geq 0$, there exist simple functions $f_n \geq 0$ such that $f_n \nearrow f$ in $\mathcal{L}^{p}$. Finally, any $f \in \mathcal{L}^{p}$ can be written as $f = f^+ - f^-$, which completes the proof.
|
|
||||||
|
|
||||||
이러한 확장을 몇 번 해보면 굉장히 routine합니다. $\chi_F$ for closed $F$ $\rightarrow$ $\chi_A$ for measurable $A$ $\rightarrow$ measurable simple $f$ $\rightarrow$ $0\leq f \in \mathcal{L}^{p} \rightarrow$ $f \in \mathcal{L}^{p}$ 와 같은 순서로 확장합니다.
|
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Mathematics
|
- Mathematics
|
||||||
- Coq
|
- Coq
|
||||||
|
path: _posts/mathematics/coq
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- coq
|
- coq
|
||||||
216
_posts/Mathematics/measure-theory/2023-07-31-Lp-functions.md
Normal file
@@ -0,0 +1,216 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: true
|
||||||
|
categories:
|
||||||
|
- Mathematics
|
||||||
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 09. $\mathcal{L}^p$ Functions
|
||||||
|
date: 2023-07-31
|
||||||
|
github_title: 2023-07-31-Lp-functions
|
||||||
|
image:
|
||||||
|
path: /assets/img/posts/mathematics/measure-theory/mt-09.png
|
||||||
|
attachment:
|
||||||
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
|
---
|
||||||
|
|
||||||
|
{: .w-50}
|
||||||
|
|
||||||
|
## Integration on Complex Valued Function
|
||||||
|
|
||||||
|
Let $(X, \mathscr{F}, \mu)$ be a measure space, and $E \in \mathscr{F}$.
|
||||||
|
|
||||||
|
**정의.**
|
||||||
|
|
||||||
|
1. A complex valued function $f = u + iv$, (where $u, v$ are real functions) is measurable if $u$ and $v$ are both measurable.
|
||||||
|
|
||||||
|
2. For a complex function $f$,
|
||||||
|
|
||||||
|
$$f \in \mathcal{L}^{1}(E, \mu) \iff \int _ E \left\lvert f \right\rvert \,d{\mu} < \infty \iff u, v \in \mathcal{L}^{1}(E, \mu).$$
|
||||||
|
|
||||||
|
3. If $f = u + iv \in \mathcal{L}^{1}(E, \mu)$, we define
|
||||||
|
|
||||||
|
$$\int _ E f \,d{\mu} = \int _ E u \,d{\mu} + i\int _ E v \,d{\mu}.$$
|
||||||
|
|
||||||
|
**참고.**
|
||||||
|
|
||||||
|
1. Linearity also holds for complex valued functions. For $f _ 1, f _ 2 \in \mathcal{L}^{1}(\mu)$ and $\alpha \in \mathbb{C}$,
|
||||||
|
|
||||||
|
$$\int _ E \left( f _ 1 + \alpha f _ 2 \right) \,d{\mu} = \int _ E f _ 1 \,d{\mu} + \alpha \int _ E f _ 2 \,d{\mu}.$$
|
||||||
|
|
||||||
|
2. Choose $c \in \mathbb{C}$ and $\left\lvert c \right\rvert = 1$ such that $\displaystyle c \int _ E f \,d{\mu} \geq 0$. This is possible since multiplying by $c$ is equivalent to a rotation.
|
||||||
|
|
||||||
|
Now set $cf = u + vi$ where $u, v$ are real functions and the integral of $v$ over $E$ is $0$. Then,
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lvert \int _ E f \,d{\mu} \right\rvert & = c \int _ E f\,d{\mu} = \int _ E u \,d{\mu} \\ & \leq \int _ E (u^2+v^2)^{1/2} \,d{\mu} \\ & = \int _ E \left\lvert cf \right\rvert \,d{\mu} = \int _ E \left\lvert f \right\rvert \,d{\mu}. \end{aligned}$$
|
||||||
|
|
||||||
|
## Functions of Class $\mathcal{L}^{p}$
|
||||||
|
|
||||||
|
### $\mathcal{L}^p$ Space
|
||||||
|
|
||||||
|
Assume that $(X, \mathscr{F}, \mu)$ is given and $X = E$.
|
||||||
|
|
||||||
|
**정의.** ($\mathcal{L}^{p}$) A complex function $f$ is in $\mathcal{L}^{p}(\mu)$ if $f$ is measurable and $\displaystyle\int _ E \left\lvert f \right\rvert ^p \,d{\mu} < \infty$.
|
||||||
|
|
||||||
|
**정의.** ($\mathcal{L}^{p}$-norm) **$\mathcal{L}^{p}$-norm** of $f$ is defined as
|
||||||
|
|
||||||
|
$$\left\lVert f \right\rVert _ p = \left[\int _ E \left\lvert f \right\rvert ^p \,d{\mu} \right]^{1/p}.$$
|
||||||
|
|
||||||
|
### Inequalities
|
||||||
|
|
||||||
|
**정리.** (Young Inequality) For $a, b \geq 0$, if $p > 1$ and $1/p + 1/q = 1$, then
|
||||||
|
|
||||||
|
$$ab \leq \frac{a^p}{p} + \frac{b^q}{q}.$$
|
||||||
|
|
||||||
|
**증명.** From $1/p + 1/q = 1$, $p - 1 = \frac{1}{q - 1}$. The graph $y = x^{p - 1}$ is equal to the graph of $x = y^{q - 1}$. Sketch the graph on the $xy$-plane and consider the area bounded by $x = 0$, $x = a$, $y = 0$, $y = b$. Then we directly see that
|
||||||
|
|
||||||
|
$$\int _ 0^a x^{p-1} \,d{x} + \int _ 0^b y^{q-1} \,d{y} \geq ab,$$
|
||||||
|
|
||||||
|
with equality when $a^p = b^q$. Evaluating the integral gives the desired inequality.
|
||||||
|
|
||||||
|
**참고.** For $\mathscr{F}$-measurable $f, g$ on $X$,
|
||||||
|
|
||||||
|
$$\left\lvert fg \right\rvert \leq \frac{\left\lvert f \right\rvert ^p}{p} + \frac{\left\lvert g \right\rvert ^q}{q} \implies \left\lVert fg \right\rVert _ 1 \leq \frac{\left\lVert f \right\rVert _ p^p}{p} + \frac{\left\lVert g \right\rVert _ q^q}{q}$$
|
||||||
|
|
||||||
|
by Young inequality. In particular, if $\left\lVert f \right\rVert _ p = \left\lVert g \right\rVert _ q = 1$, then $\left\lVert fg \right\rVert _ 1 \leq 1$.
|
||||||
|
|
||||||
|
**정리.** (Hölder Inequality) Let $1 < p < \infty$ and $\displaystyle\frac{1}{p} + \frac{1}{q} = 1$. If $f, g$ are measurable,
|
||||||
|
|
||||||
|
$$\left\lVert fg \right\rVert _ 1 \leq \left\lVert f \right\rVert _ p \left\lVert g \right\rVert _ q.$$
|
||||||
|
|
||||||
|
So if $f \in \mathcal{L}^{p}(\mu)$ and $g \in \mathcal{L}^{q}(\mu)$, then $fg \in \mathcal{L}^{1}(\mu)$.
|
||||||
|
|
||||||
|
**증명.** If $\left\lVert f \right\rVert _ p = 0$ or $\left\lVert g \right\rVert _ q = 0$ then $f = 0$ a.e. or $g = 0$ a.e. So $fg = 0$ a.e. and $\left\lVert fg \right\rVert _ 1 = 0$.
|
||||||
|
|
||||||
|
Now suppose that $\left\lVert f \right\rVert _ p > 0$ and $\left\lVert g \right\rVert _ q > 0$. By the remark above, the result directly follows from
|
||||||
|
|
||||||
|
$$\left\lVert \frac{f}{\left\lVert f \right\rVert _ p} \cdot \frac{g}{\left\lVert g \right\rVert _ q} \right\rVert _ 1 \leq 1.$$
|
||||||
|
|
||||||
|
**정리.** (Minkowski Inequality) For $1 \leq p < \infty$, if $f, g$ are measurable, then
|
||||||
|
|
||||||
|
$$\left\lVert f + g \right\rVert _ p \leq \left\lVert f \right\rVert _ p + \left\lVert g \right\rVert _ p.$$
|
||||||
|
|
||||||
|
**증명.** If $f, g \notin \mathcal{L}^{p}$, the right hand side is $\infty$ and we are done. For $p = 1$, the equality is equivalent to the triangle inequality. Also if $\left\lVert f + g \right\rVert _ p = 0$, the inequality holds trivially. We suppose that $p > 1$, $f, g \in \mathcal{L}^p$ and $\left\lVert f+g \right\rVert _ p > 0$.
|
||||||
|
|
||||||
|
Let $q = \frac{p}{p-1}$. Since
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lvert f + g \right\rvert ^p & = \left\lvert f + g \right\rvert \cdot \left\lvert f + g \right\rvert ^{p - 1} \\ & \leq \bigl(\left\lvert f \right\rvert + \left\lvert g \right\rvert \bigr) \left\lvert f + g \right\rvert ^{p-1}, \end{aligned}$$
|
||||||
|
|
||||||
|
we have
|
||||||
|
|
||||||
|
$$\begin{aligned} \int \left\lvert f+g \right\rvert ^p & \leq \int \left\lvert f \right\rvert \cdot \left\lvert f+g \right\rvert ^{p-1} + \int \left\lvert g \right\rvert \cdot \left\lvert f+g \right\rvert ^{p-1} \\ & \leq \left( \int \left\lvert f \right\rvert ^p \right)^{1/p}\left( \int \left\lvert f+g \right\rvert ^{(p-1)q} \right)^{1/q} \\ & \quad + \left( \int \left\lvert q \right\rvert ^p \right)^{1/p}\left( \int \left\lvert f+g \right\rvert ^{(p-1)q} \right)^{1/q} \\ & = \left( \left\lVert f \right\rVert _ p + \left\lVert g \right\rVert _ p \right) \left( \int \left\lvert f+g \right\rvert ^p \right)^{1/q}. \end{aligned}$$
|
||||||
|
|
||||||
|
Since $\left\lVert f + g \right\rVert _ p^p > 0$, we have
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lVert f + g \right\rVert _ p & = \left( \int \left\lvert f+g \right\rvert ^p \right)^{1/p} \\ & = \left( \int \left\lvert f+g \right\rvert ^p \right)^{1 - \frac{1}{q}} \\ & \leq \left\lVert f \right\rVert _ p + \left\lVert g \right\rVert _ p. \end{aligned}$$
|
||||||
|
|
||||||
|
**정의.** $f \sim g \iff f = g$ $\mu$-a.e. and define
|
||||||
|
|
||||||
|
$$[f] = \left\lbrace g : f \sim g\right\rbrace.$$
|
||||||
|
|
||||||
|
We treat $[f]$ as an element in $\mathcal{L}^{p}(X, \mu)$, and write $f = [f]$.
|
||||||
|
|
||||||
|
**참고.**
|
||||||
|
|
||||||
|
1. We write $\left\lVert f \right\rVert _ p = 0 \iff f = [0] = 0$ in the sense that $f = 0$ $\mu$-a.e.
|
||||||
|
|
||||||
|
2. Now $\lVert \cdot \rVert _ p$ is a **norm** in $\mathcal{L}^{p}(X, \mu)$ so $d(f, g) = \left\lVert f - g \right\rVert _ p$ is a **metric** in $\mathcal{L}^{p}(X, \mu)$.
|
||||||
|
|
||||||
|
## Completeness of $\mathcal{L}^p$
|
||||||
|
|
||||||
|
Now we have a *function space*, so we are interested in its *completeness*.
|
||||||
|
|
||||||
|
**정의.** (Convergence in $\mathcal{L}^p$) Let $f, f _ n \in \mathcal{L}^{p}(\mu)$.
|
||||||
|
|
||||||
|
1. $f _ n \rightarrow f$ in $\mathcal{L}^p(\mu) \iff \left\lVert f _ n-f \right\rVert _ p \rightarrow 0$ as $n \rightarrow\infty$.
|
||||||
|
|
||||||
|
2. $\left( f _ n \right) _ {n=1}^\infty$ is a Cauchy sequence in $\mathcal{L}^{p}(\mu)$ if and only if
|
||||||
|
|
||||||
|
> $\forall \epsilon > 0$, $\exists\,N > 0$ such that $n, m \geq N \implies \left\lVert f _ n-f _ m \right\rVert _ p < \epsilon$.
|
||||||
|
|
||||||
|
**도움정리.** Let $\left( g _ n \right)$ be a sequence of measurable functions. Then,
|
||||||
|
|
||||||
|
$$\left\lVert \sum _ {n=1}^{\infty} \left\lvert g _ n \right\rvert \right\rVert _ p \leq \sum _ {n=1}^{\infty} \left\lVert g _ n \right\rVert _ p.$$
|
||||||
|
|
||||||
|
Thus, if $\displaystyle\sum _ {n=1}^{\infty} \left\lVert g _ n \right\rVert _ p < \infty$, then $\displaystyle\sum _ {n=1}^{\infty} \left\lvert g _ n \right\rvert < \infty$ $\mu$-a.e. So $\displaystyle\sum _ {n=1}^{\infty} g _ n < \infty$ $\mu$-a.e.
|
||||||
|
|
||||||
|
**증명.** By monotone convergence theorem and Minkowski inequality,
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lVert \sum _ {n=1}^{\infty} \left\lvert g _ n \right\rvert \right\rVert _ p & = \lim _ {m \rightarrow\infty} \left\lVert \sum _ {n=1}^{m} \left\lvert g _ n \right\rvert \right\rVert _ p \\ & \leq \lim _ {n \rightarrow\infty} \sum _ {n=1}^{m} \left\lVert g _ n \right\rVert _ p \\ & = \sum _ {n=1}^{\infty} \left\lVert g _ n \right\rVert _ p < \infty. \end{aligned}$$
|
||||||
|
|
||||||
|
Thus $\displaystyle\sum _ {n=1}^{\infty} \left\lvert g _ n \right\rvert < \infty$ $\mu$-a.e. and $\displaystyle\sum _ {n=1}^{\infty} g _ n < \infty$ $\mu$-a.e. by absolute convergence.
|
||||||
|
|
||||||
|
**정리.** (Fischer) Suppose $\left( f _ n \right)$ is a Cauchy sequence in $\mathcal{L}^{p}(\mu)$. Then there exists $f \in \mathcal{L}^{p}(\mu)$ such that $f _ n \rightarrow f$ in $\mathcal{L}^{p}(\mu)$.
|
||||||
|
|
||||||
|
**증명.** We construct $\left( n _ k \right)$ by the following procedure.
|
||||||
|
|
||||||
|
$\exists\,n _ 1 \in \mathbb{N}$ such that $\left\lVert f _ m - f _ {n _ 1} \right\rVert _ p < \frac{1}{2}$ for all $m \geq n _ 1$.
|
||||||
|
|
||||||
|
$\exists\,n _ 2 \in \mathbb{N}$ such that $\left\lVert f _ m - f _ {n _ 2} \right\rVert _ p < \frac{1}{2^2}$ for all $m \geq n _ 2$.
|
||||||
|
|
||||||
|
Then, $\exists\,1 \leq n _ 1 < n _ 2 < \cdots < n _ k$ such that $\left\lVert f _ m - f _ {n _ k} \right\rVert _ p < \frac{1}{2^k}$ for $m \geq n _ k$.
|
||||||
|
|
||||||
|
Since $\displaystyle\left\lVert f _ {n _ {k+1}} - f _ {n _ k} \right\rVert _ p < \frac{1}{2^k}$, we have
|
||||||
|
|
||||||
|
$$\sum _ {k=1}^{\infty} \left\lVert f _ {n _ {k+1}} - f _ {n _ k} \right\rVert _ p < \infty.$$
|
||||||
|
|
||||||
|
By the above lemma, $\sum \left\lvert f _ {n _ {k+1}} - f _ {n _ k} \right\rvert$ and $\sum (f _ {n _ {k+1}} - f _ {n _ k})$ are finite. Let $f _ {n _ 0} \equiv 0$. Then as $m \rightarrow\infty$,
|
||||||
|
|
||||||
|
$$f _ {n _ {m+1}} = \sum _ {k=0}^{m} \left( f _ {n _ {k+1}} - f _ {n _ k} \right)$$
|
||||||
|
|
||||||
|
converges $\mu$-a.e. Take $N \in \mathscr{F}$ with $\mu(N) = 0$ such that $f _ {n _ k}$ converges on $X \setminus N$. Let
|
||||||
|
|
||||||
|
$$f(x) = \begin{cases} \displaystyle\lim _ {k \rightarrow\infty} f _ {n _ k} (x) & (x \in X \setminus N) \\ 0 & (x\in N) \end{cases}$$
|
||||||
|
|
||||||
|
then $f$ is measurable. Using the convergence,
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lVert f - f _ {n _ m} \right\rVert _ p & = \left\lVert \sum _ {k=m}^{\infty} \left( f _ {n _ {k+1}} (x) - f _ {n _ k}(x) \right) \right\rVert _ p \\ & \leq \left\lVert \sum _ {k=m}^{\infty} \left\lvert f _ {n _ {k+1}} (x) - f _ {n _ k}(x) \right\rvert \right\rVert _ p \\ & \leq \sum _ {k=m}^{\infty} \left\lVert f _ {n _ {k+1}} - f _ {n _ k} \right\rVert _ p \leq 2^{-m} \end{aligned}$$
|
||||||
|
|
||||||
|
by the choice of $f _ {n _ k}$. So $f _ {n _ k} \rightarrow f$ in $\mathcal{L}^{p}(\mu)$. Also, $f = (f - f _ {n _ k}) + f _ {n _ k} \in \mathcal{L}^{p}(\mu)$.
|
||||||
|
|
||||||
|
Let $\epsilon > 0$ be given. Since $\left( f _ n \right)$ is a Cauchy sequence in $\mathcal{L}^{p}$, $\exists\,N \in \mathbb{N}$ such that for all $n, m \geq N$, $\left\lVert f _ n - f _ m \right\rVert < \frac{\epsilon}{2}$. Note that $n _ k \geq k$, so $n _ k \geq N$ if $k \geq N$. Choose $N _ 1 \geq N$ such that for $k \geq N$, $\left\lVert f - f _ {n _ k} \right\rVert _ p < \frac{\epsilon}{2}$. Then for all $k \geq N _ 1$,
|
||||||
|
|
||||||
|
$$\left\lVert f - f _ k \right\rVert _ p \leq \left\lVert f - f _ {n _ k} \right\rVert _ p + \left\lVert f _ {n _ k} - f _ k \right\rVert _ p < \frac{\epsilon}{2} + \frac{\epsilon}{2} = \epsilon.$$
|
||||||
|
|
||||||
|
**참고.** $\mathcal{L}^{p}$ is a complete normed vector space, also known as **Banach space**.
|
||||||
|
|
||||||
|
**정리.** $C[a, b]$ is a dense subset of $\mathcal{L}^{p}[a, b]$. That is, for every $f \in \mathcal{L}^{p}[a, b]$ and $\epsilon > 0$, $\exists\,g \in C[a, b]$ such that $\left\lVert f - g \right\rVert _ p < \epsilon$.
|
||||||
|
|
||||||
|
**증명.** Let $A$ be a closed subset in $[a, b]$, and consider a distance function
|
||||||
|
|
||||||
|
$$d(x, A) = \inf _ {y\in A} \left\lvert x - y \right\rvert , \quad x \in [a, b].$$
|
||||||
|
|
||||||
|
Since $d(x, A) \leq \left\lvert x - z \right\rvert \leq \left\lvert x - y \right\rvert + \left\lvert y - z \right\rvert$ for all $z \in A$, taking infimum over $z \in A$ gives $d(x, A) \leq \left\lvert x - y \right\rvert + d(y, A)$. So
|
||||||
|
|
||||||
|
$$\left\lvert d(x, A) - d(y, A) \right\rvert \leq \left\lvert x - y \right\rvert ,$$
|
||||||
|
|
||||||
|
and $d(x, A)$ is continuous. If $d(x, A) = 0$, $\exists\,x _ n \in A$ such that $\left\lvert x _ n - x \right\rvert \rightarrow d(x, A) = 0$. Since $A$ is closed, $x \in A$. We know that $x \in A \iff d(x, A) = 0$.
|
||||||
|
|
||||||
|
Let
|
||||||
|
|
||||||
|
$$g _ n(x) = \frac{1}{1 + n d(x, A)}.$$
|
||||||
|
|
||||||
|
$g _ n$ is continuous, $g _ n(x) = 1$ if and only if $x \in A$. Also for all $x \in [a, b] \setminus A$, $g _ n(x) \rightarrow 0$ as $n \rightarrow\infty$. By Lebesgue’s dominated convergence theorem,
|
||||||
|
|
||||||
|
$$\begin{aligned} \left\lVert g _ n - \chi _ A \right\rVert _ p^p & = \int _ A \left\lvert g _ n - \chi _ A \right\rvert ^p \,d{x} + \int _ {[a, b]\setminus A} \left\lvert g _ n - \chi _ A \right\rvert ^p \,d{x} \\ & = 0 + \int _ {[a, b]\setminus A} \left\lvert g _ n \right\rvert ^p \,d{x} \rightarrow 0 \end{aligned}$$
|
||||||
|
|
||||||
|
since $\left\lvert g _ n \right\rvert ^p \leq 1$. We have shown that characteristic functions of closed sets can be approximated by continuous functions in $\mathcal{L}^{p}[a, b]$.
|
||||||
|
|
||||||
|
For every $A \in \mathfrak{M}(m)$, $\exists\,F _ \text{closed} \subseteq A$ such that $m(A \setminus F) < \epsilon$. Since $\chi _ A - \chi _ F = \chi _ {A \setminus F}$,
|
||||||
|
|
||||||
|
$$\begin{aligned} \int \left\lvert \chi _ A-\chi _ F \right\rvert ^p \,d{x} & = \int \left\lvert \chi _ {A\setminus F} \right\rvert ^p \,d{x} \\ & = \int _ {A\setminus F} \,d{x} = m(A \setminus F) < \epsilon. \end{aligned}$$
|
||||||
|
|
||||||
|
Therefore, for every $A \in \mathfrak{M}$, $\exists\,g _ n \in C[a, b]$ such that $\left\lVert g _ n - \chi _ A \right\rVert _ p \rightarrow 0$ as $n \rightarrow\infty$. So characteristic functions of any measurable set can be approximated by continuous functions in $\mathcal{L}^{p}[a, b]$.
|
||||||
|
|
||||||
|
Next, for any measurable simple function $f = \sum _ {k=1}^{m}a _ k \chi _ {A _ k}$, we can find $g _ n^k \in C[a, b]$ so that
|
||||||
|
|
||||||
|
$$\left\lVert f - \sum _ {k=1}^{m} a _ k g _ n^k \right\rVert _ p = \left\lVert \sum _ {k=1}^{m}a _ k \left( \chi _ {A _ k} - g _ n^k \right) \right\rVert _ p \rightarrow 0.$$
|
||||||
|
|
||||||
|
Next for $f \in \mathcal{L}^{p}$ and $f \geq 0$, there exist simple functions $f _ n \geq 0$ such that $f _ n \nearrow f$ in $\mathcal{L}^{p}$. Finally, any $f \in \mathcal{L}^{p}$ can be written as $f = f^+ - f^-$, which completes the proof.
|
||||||
|
|
||||||
|
이러한 확장을 몇 번 해보면 굉장히 routine합니다. $\chi _ F$ for closed $F$ $\rightarrow$ $\chi _ A$ for measurable $A$ $\rightarrow$ measurable simple $f$ $\rightarrow$ $0\leq f \in \mathcal{L}^{p} \rightarrow$ $f \in \mathcal{L}^{p}$ 와 같은 순서로 확장합니다.
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Algorithms
|
- Algorithms
|
||||||
- BOJ
|
- BOJ
|
||||||
|
path: _posts/algorithms/boj
|
||||||
tags:
|
tags:
|
||||||
- algorithms
|
- algorithms
|
||||||
- boj
|
- boj
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Algorithms
|
- Algorithms
|
||||||
- Data Structures
|
- Data Structures
|
||||||
|
path: _posts/algorithms/data-structures
|
||||||
tags:
|
tags:
|
||||||
- algorithms
|
- algorithms
|
||||||
- data-structures
|
- data-structures
|
||||||
@@ -2,6 +2,7 @@
|
|||||||
share: true
|
share: true
|
||||||
categories:
|
categories:
|
||||||
- Articles
|
- Articles
|
||||||
|
path: _posts/articles
|
||||||
tags:
|
tags:
|
||||||
- research
|
- research
|
||||||
- career
|
- career
|
||||||
117
_posts/development/web/2024-11-17-math-equations-in-markdown.md
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: false
|
||||||
|
categories:
|
||||||
|
- Development
|
||||||
|
- Web
|
||||||
|
path: _posts/development/web
|
||||||
|
tags:
|
||||||
|
- markdown
|
||||||
|
- math
|
||||||
|
- web
|
||||||
|
title: Math Equations in Markdown
|
||||||
|
date: 2024-11-17
|
||||||
|
github_title: 2024-11-17-math-equations-in-markdown
|
||||||
|
image:
|
||||||
|
path: /assets/img/posts/development/web/broken-math-equations.png
|
||||||
|
attachment:
|
||||||
|
folder: assets/img/posts/development/web
|
||||||
|
---
|
||||||
|
|
||||||
|
마크다운에서 수식을 사용하는 것은 **생각보다** 어렵다. 애초에 마크다운은 원래 수식을 지원하지 않는다. 그저 Github, Obsidian 등 다양한 플랫폼이 마크다운의 확장 형태로 수식 입력을 지원하고 있는 상황이다.
|
||||||
|
|
||||||
|
이 블로그는 jekyll을 사용하기 때문에 모든 글이 마크다운으로 작성되어 있다. 수학을 좋아하는 나의 특성상 블로그 글에 수식을 입력할 일이 많은데, 어느 날 블로그에서 깨져있거나 잘못된 수식을 발견하고 마크다운에서 수식을 사용하는 것이 그리 간단치 않다는 것을 깨닫게 되었다.
|
||||||
|
|
||||||
|
이 글에서는 마크다운에서 수식을 사용할 때 생기는 문제점과 이에 대한 해결책을 정리했다.
|
||||||
|
|
||||||
|
## 문법의 충돌
|
||||||
|
|
||||||
|
마크다운 엔진에 따라 구체적인 내용이 다를 수도 있지만, Kramdown의 경우 문법이 충돌하는 대표적인 예시는 다음과 같다.
|
||||||
|
|
||||||
|
**`$$`는 `$`와 같다.** LaTeX 문법에서 `$$`는 *display mode*로, 한 줄 전체에 수식을 크게 출력하고, `$`는 *inline mode*로 텍스트 중간에 수식을 끼워넣을 때 사용한다. 그런데 Kramdown에서 display math를 사용하기 위해서는 `$$`를 반드시 **새로운 줄**에 입력해야 하고, 그렇지 않으면 `$$`가 inline math로 해석된다.
|
||||||
|
|
||||||
|
이는 기존 마크다운에서 `$` 기호가 이미 널리 사용되었을 것을 고려하여 이러한 결정을 내린 것으로 보인다. ([Github Issue](https://github.com/gettalong/kramdown/issues/672)) 그렇다고 `$`가 아예 지원이 되지 않는 것은 아니다.
|
||||||
|
|
||||||
|
위 차이가 조금 크게 느껴지고, 이외의 내용은 다음과 같다.
|
||||||
|
|
||||||
|
- 절댓값 기호 `| ... |`는 마크다운 테이블로 먼저 해석된다.
|
||||||
|
- `\{`와 `\}`는 `\\{`, `\\}`로 escape 해줘야 한다.
|
||||||
|
- 아래 첨자를 위한 `_`, 또는 기호 `*`를 그냥 사용하면 마크다운의 기울임 표시와 충돌할 수 있다.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## 해결 방법
|
||||||
|
|
||||||
|
### Display Math
|
||||||
|
|
||||||
|
우선 이 문제의 경우, 애초에 문서를 작성할 때 조심하는 것이 권장된다. `$$`를 사용한다면 애초에 새로운 줄에 수식을 입력하려는 것이기 때문에 이 수식을 위해 새로운 줄에 `$$`를 입력하면 된다.
|
||||||
|
|
||||||
|
만약 이미 작성된 문서를 고치고 싶다면, 다음 정규식을 사용하면 된다.
|
||||||
|
|
||||||
|
```
|
||||||
|
(^|[^\$])\$\$([^\$]+)\$\$([^\$]|$)
|
||||||
|
```
|
||||||
|
|
||||||
|
문서에 존재하는 `$$ ... $$` 형태를 잡아줄 것이다. Replace 기능을 적절히 이용하면 `$$` 앞 뒤에 newline character `\n` 을 넣을 수 있다.
|
||||||
|
|
||||||
|
개인적으로는 Obsidian의 Markdown Linter 플러그인을 이용하여 `$$`를 사용한 수식 앞 뒤에 newline character를 강제로 넣어주도록 하고 있다. 그렇지만 이미 새로운 줄에 입력하는게 습관이 되었다.
|
||||||
|
|
||||||
|
### 절댓값, 중괄호 기호
|
||||||
|
|
||||||
|
이 기호들은 키보드에 존재하는 `|`, `{}` 키가 아닌 LaTeX 문법을 사용해서
|
||||||
|
|
||||||
|
- 절댓값 기호 `| ... |`는 `\lvert ... \rvert`로,
|
||||||
|
- Norm 기호 `|| ... ||` 는 `\lVert ... \rVert`로,
|
||||||
|
- 중괄호 `{ ... }`는 `\lbrace \rbrace`로
|
||||||
|
|
||||||
|
입력해야 한다. 앞뒤에 `\left`, `\right` 붙이면 크기 조절도 알아서 된다.
|
||||||
|
|
||||||
|
그러나 저 기호들을 매번 입력하는 일은 정말 귀찮은 일이다. 따라서 매크로를 사용하는 것이 좋아 보인다. 게다가 매크로를 사용하면 `\{`를 별도로 escaping하지 않아도 사용할 수 있다.
|
||||||
|
|
||||||
|
```tex
|
||||||
|
\newcommand{\abs}[1]{\left\lvert #1 \right\rvert}
|
||||||
|
\newcommand{\norm}[1]{\left\lVert #1 \right\rVert}
|
||||||
|
\newcommand{\braces}[1]{\left\{ #1 \right\}}
|
||||||
|
```
|
||||||
|
|
||||||
|
### 기울임체 충돌
|
||||||
|
|
||||||
|
개인적으로 이 문제가 가장 골치아팠다. 어떤 경우에는 문제가 되지 않다가, 또 어떤 경우에는 문제가 된다. `_`를 사용해도 멀쩡하게 보이는 수식이 있는가 하면, 완전히 깨져버리는 수식도 있다. 조금 찾아보니 나만 이런 문제를 겪은 것이 아니었다.
|
||||||
|
|
||||||
|
문제의 원인은 마크다운으로 쓴 글을 html로 변환할 때 `_` 사이에 있는 텍스트가 기울임체로 먼저 해석되고, 수식은 그 이후에 처리되기 때문이었다. 그러다보니 수식 내부의 `_`가 다른 문자열로 치환되어 버리면서 (기울임을 나타내는 html 태그 `<em>`) 수식이 깨지는 현상이 발생한 것이다.
|
||||||
|
|
||||||
|
가장 간단한 해결 방법은 `_`를 escaping 하는 것이다. 그러면 마크다운 변환기가 이를 기울임체 표시로 해석하지 않는다. 다만 `\_`와 같이 하게 되면 Obsidian에서는 수식이 제대로 렌더링 되지 않게 되는데, 아마 다른 툴들도 비슷한 문제가 있을 것으로 예상된다.
|
||||||
|
|
||||||
|
진짜 해결 방법은 혼자서 삽질을 하다가 알아내게 되었는데, **`_` 앞 뒤로 공백을 추가하면 기울임체로 표시되지 않는다는 사실을 발견**했다. 이 사실이 신기해서 알려진 바가 있는지 찾아봤는데, 이 내용이 마크다운 문법에 실제로 있었다.
|
||||||
|
|
||||||
|
> But if you surround an `*` or `_` with spaces, it’ll be treated as a literal asterisk or underscore.
|
||||||
|
|
||||||
|
- 출처: John Grubber's original [Markdown syntax description](https://daringfireball.net/projects/markdown/syntax#em)
|
||||||
|
- 공식: https://spec.commonmark.org/0.31.2/#emphasis-and-strong-emphasis
|
||||||
|
|
||||||
|
그런데 이 문제는 확정적으로 발생하지 않을 수도 있기 때문에, 모든 `_` 앞 뒤로 공백을 추가하면 된다. 어차피 수식은 공백을 무시해 버리기 때문에 수식에는 영향이 없다.[^1]
|
||||||
|
|
||||||
|
한편, 이 작업은 매우 귀찮은 일이기 때문에, 자동화된 방법이 필요해 보인다. 수식에서 아래 첨자를 쓸 일은 굉장히 빈번하기 때문에 매번 손수 `_` 앞 뒤에 공백을 추가하기는 힘들다.
|
||||||
|
|
||||||
|
이를 위해서는 또 다시 정규식을 사용하면 된다. 내가 직접 만들어 보려고 하다가 결국에는 [StackOverflow에 질문](https://stackoverflow.com/questions/79183172/regex-to-add-spaces-around-all-underscores-in-math-equations?noredirect=1#comment139629564_79183172)하게 되었다.
|
||||||
|
|
||||||
|
아무튼 사용할 정규식은 다음과 같다.
|
||||||
|
|
||||||
|
```
|
||||||
|
(?<=\$\S[^$]*)\s?_\s?(?=[^$]*\S\$)
|
||||||
|
```
|
||||||
|
|
||||||
|
자세한 설명은 생략한다... 이 정규식이 잡아낸 `_`를 전부 `\s_\s`로 고쳐주면 끝이다.
|
||||||
|
|
||||||
|
개인적으로는 Obsidian에서 블로그 repository로 push할 때 text replacement 기능을 이용해서 자동으로 고쳐지도록 세팅해 두었다.[^2]
|
||||||
|
|
||||||
|
## 후기
|
||||||
|
|
||||||
|
애초에 마크다운에 수식을 쓰려고 하는 것과, jekyll 블로그에 이를 업로드 하려는 생각 자체가 잘못된 것일 수도 있다. 다른 툴을 썼다면 이런 고생을 하지 않아도 됐을지도 모른다. 실제로 digital garden 같은 툴 중에서 수식을 잘 지원하는 경우도 있다.[^3] 하지만 내가 Obsidian을 포기할 수 없었고, 지금 사용하고 있는 chirpy theme이 너무 마음에 들었기 때문에 이 조합을 포기할 수 없었다.
|
||||||
|
|
||||||
|
현대 암호학 개론 수업 내용을 정리한 노트에서 깨진 수식이 대량으로 발생해서, 그동안 방치해두고 있었는데 이번에 칼을 뽑아서 **1년 넘게 묵혀둔 문제를 드디어 해결**했다. 앞으로는 이런 문제가 안 생겼으면 좋겠다.
|
||||||
|
|
||||||
|
[^1]: 여기까지 23년 7월 26일에 알아낸 내용이다.
|
||||||
|
[^2]: 24년 11월 13일에 작업한 내용이다.
|
||||||
|
[^3]: Obsidian의 경우 Quartz가 대세인 듯 하다.
|
||||||
@@ -191,7 +191,7 @@ Let $m \in \left\lbrace 0, 1 \right\rbrace^n$ be the message to encrypt. Then ch
|
|||||||
- Encryption: $E(k, m) = k \oplus m$.
|
- Encryption: $E(k, m) = k \oplus m$.
|
||||||
- Decryption: $D(k, c) = k \oplus c$.
|
- Decryption: $D(k, c) = k \oplus c$.
|
||||||
|
|
||||||
This scheme is **provably secure**. See also [one-time pad (Modern Cryptography)](../modern-cryptography/2023-09-07-otp-stream-cipher-prgs.md#one-time-pad-(otp)).
|
This scheme is **provably secure**. See also [one-time pad (Modern Cryptography)](../../modern-cryptography/2023-09-07-otp-stream-cipher-prgs/#one-time-pad-(otp)).
|
||||||
|
|
||||||
## Perfect Secrecy
|
## Perfect Secrecy
|
||||||
|
|
||||||
@@ -225,7 +225,7 @@ since for each $m$ and $c$, $k$ is determined uniquely.
|
|||||||
|
|
||||||
*Proof*. Assume not, then we can find some message $m _ 0 \in \mathcal{M}$ such that $m _ 0$ is not a decryption of some $c \in \mathcal{C}$. This is because the decryption algorithm $D$ is deterministic and $\lvert \mathcal{K} \rvert < \lvert \mathcal{M} \rvert$.
|
*Proof*. Assume not, then we can find some message $m _ 0 \in \mathcal{M}$ such that $m _ 0$ is not a decryption of some $c \in \mathcal{C}$. This is because the decryption algorithm $D$ is deterministic and $\lvert \mathcal{K} \rvert < \lvert \mathcal{M} \rvert$.
|
||||||
|
|
||||||
For the proof in detail, check [Shannon's Theorem (Modern Cryptography)](../modern-cryptography/2023-09-07-otp-stream-cipher-prgs.md#shannon's-theorem).
|
For the proof in detail, check [Shannon's Theorem (Modern Cryptography)](../../modern-cryptography/2023-09-07-otp-stream-cipher-prgs/#shannon's-theorem).
|
||||||
|
|
||||||
### Two-Time Pad is Insecure
|
### Two-Time Pad is Insecure
|
||||||
|
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ This is an inverse problem of exponentiation. The inverse of exponentials is log
|
|||||||
|
|
||||||
Given $y \equiv g^x \pmod p$ for some prime $p$, we want to find $x = \log _ g y$. We set $g$ to be a generator of the group $\mathbb{Z} _ p$ or $\mathbb{Z} _ p^\ast$, since if $g$ is the generator, a solution always exists.
|
Given $y \equiv g^x \pmod p$ for some prime $p$, we want to find $x = \log _ g y$. We set $g$ to be a generator of the group $\mathbb{Z} _ p$ or $\mathbb{Z} _ p^\ast$, since if $g$ is the generator, a solution always exists.
|
||||||
|
|
||||||
Read more in [discrete logarithm problem (Modern Cryptography)](../modern-cryptography/2023-10-03-key-exchange.md#discrete-logarithm-problem-(dl)).
|
Read more in [discrete logarithm problem (Modern Cryptography)](../../modern-cryptography/2023-10-03-key-exchange/#discrete-logarithm-problem-(dl)).
|
||||||
|
|
||||||
## ElGamal Encryption
|
## ElGamal Encryption
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ date: 2023-10-09
|
|||||||
github_title: 2023-10-09-public-key-cryptography
|
github_title: 2023-10-09-public-key-cryptography
|
||||||
---
|
---
|
||||||
|
|
||||||
In symmetric key cryptography, we have a problem with key sharing and management. More info in the first few paragraphs of [Key Exchange (Modern Cryptography)](../modern-cryptography/2023-10-03-key-exchange.md).
|
In symmetric key cryptography, we have a problem with key sharing and management. More info in the first few paragraphs of [Key Exchange (Modern Cryptography)](../../modern-cryptography/2023-10-03-key-exchange/).
|
||||||
|
|
||||||
## Public Key Cryptography
|
## Public Key Cryptography
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ These keys are created to be used in **trapdoor one-way functions**.
|
|||||||
|
|
||||||
A **one-way function** is a function that is easy to compute, but hard to compute the pre-image of any output. Here are some common examples.
|
A **one-way function** is a function that is easy to compute, but hard to compute the pre-image of any output. Here are some common examples.
|
||||||
|
|
||||||
- *Cryptographic hash functions*: [Hash Functions (Modern Cryptography)](../modern-cryptography/2023-09-28-hash-functions.md#collision-resistance).
|
- *Cryptographic hash functions*: [Hash Functions (Modern Cryptography)](../../modern-cryptography/2023-09-28-hash-functions/#collision-resistance).
|
||||||
- *Factoring a large integer*: It is easy to multiply to integers even if they're large, but factoring is very hard.
|
- *Factoring a large integer*: It is easy to multiply to integers even if they're large, but factoring is very hard.
|
||||||
- *Discrete logarithm problem*: It is easy to exponentiate a number, but it is hard to find the discrete logarithm.
|
- *Discrete logarithm problem*: It is easy to exponentiate a number, but it is hard to find the discrete logarithm.
|
||||||
|
|
||||||
@@ -87,7 +87,7 @@ Choose a large prime $p$ and a generator $g$ of $\mathbb{Z}_p^\ast$. The descrip
|
|||||||
> 3. Alice and Bob calculate $g^{xy} \bmod p$ separately.
|
> 3. Alice and Bob calculate $g^{xy} \bmod p$ separately.
|
||||||
> 4. Eve can see $g^x \bmod p$, $g^y \bmod p$ but cannot calculate $g^{xy} \bmod p$.
|
> 4. Eve can see $g^x \bmod p$, $g^y \bmod p$ but cannot calculate $g^{xy} \bmod p$.
|
||||||
|
|
||||||
Refer to [Diffie-Hellman Key Exchange (Modern Cryptography)](../modern-cryptography/2023-10-03-key-exchange.md#diffie-hellman-key-exchange-(dhke)).
|
Refer to [Diffie-Hellman Key Exchange (Modern Cryptography)](../../modern-cryptography/2023-10-03-key-exchange/#diffie-hellman-key-exchange-(dhke)).
|
||||||
|
|
||||||
## Message Integrity
|
## Message Integrity
|
||||||
|
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ We learned how to encrypt a single block. How do we encrypt longer messages with
|
|||||||
|
|
||||||
There are many ways of processing multiple blocks, this is called the **mode of operation**.
|
There are many ways of processing multiple blocks, this is called the **mode of operation**.
|
||||||
|
|
||||||
Additional explanation available in [Modes of Operations (Internet Security)](../internet-security/2023-09-18-symmetric-key-cryptography-2.md#modes-of-operations).
|
Additional explanation available in [Modes of Operations (Internet Security)](../../internet-security/2023-09-18-symmetric-key-cryptography-2/#modes-of-operations).
|
||||||
|
|
||||||
### Electronic Codebook Mode (ECB)
|
### Electronic Codebook Mode (ECB)
|
||||||
|
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ Now we define a stronger notion of security against **chosen ciphertext attacks*
|
|||||||
|
|
||||||
None of the encryption schemes already seen thus far is CCA secure.
|
None of the encryption schemes already seen thus far is CCA secure.
|
||||||
|
|
||||||
Recall a [CPA secure construction from PRF](./2023-09-19-symmetric-key-encryption.md#secure-construction-from-prf). This scheme is not CCA secure. Suppose that the adversary is given $c^\ast = (r, F(k, r) \oplus m_b)$. Then it can request a decryption for $c' = (r, s')$ for some $s'$ and receive $m' = s' \oplus F(k, r)$. Then $F(k, r) = m' \oplus s'$, so the adversary can successfully recover $m_b$.
|
Recall a [CPA secure construction from PRF](../2023-09-19-symmetric-key-encryption/#secure-construction-from-prf). This scheme is not CCA secure. Suppose that the adversary is given $c^\ast = (r, F(k, r) \oplus m _ b)$. Then it can request a decryption for $c' = (r, s')$ for some $s'$ and receive $m' = s' \oplus F(k, r)$. Then $F(k, r) = m' \oplus s'$, so the adversary can successfully recover $m _ b$.
|
||||||
|
|
||||||
In general, any encryption scheme that allows ciphertexts to be *manipulated* in a controlled way cannot be CCA secure.
|
In general, any encryption scheme that allows ciphertexts to be *manipulated* in a controlled way cannot be CCA secure.
|
||||||
|
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ See Joux's attack.[^2]
|
|||||||
|
|
||||||
Now we only have to build a collision resistant compression function. We can build these functions from either a block cipher, or by using number theoretic primitives.
|
Now we only have to build a collision resistant compression function. We can build these functions from either a block cipher, or by using number theoretic primitives.
|
||||||
|
|
||||||
Number theoretic primitives will be shown after we learn some number theory.[^3] An example is shown in [collision resistance using DL problem (Modern Cryptography)](./2023-10-03-key-exchange.md#collision-resistance-based-on-dl-problem).
|
Number theoretic primitives will be shown after we learn some number theory.[^3] An example is shown in [collision resistance using DL problem (Modern Cryptography)](../2023-10-03-key-exchange/#collision-resistance-based-on-dl-problem).
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -195,7 +195,7 @@ We needed a complicated construction for MACs that work on long messages. We mig
|
|||||||
|
|
||||||
Here are a few approaches. Suppose that a compression function $h$ is given and $H$ is a Merkle-Damgård function derived from $h$.
|
Here are a few approaches. Suppose that a compression function $h$ is given and $H$ is a Merkle-Damgård function derived from $h$.
|
||||||
|
|
||||||
Recall that [we can construct a MAC scheme from a PRF](./2023-09-21-macs.md#mac-constructions-from-prfs), so either we want a secure PRF or a secure MAC scheme.
|
Recall that [we can construct a MAC scheme from a PRF](../2023-09-21-macs/#mac-constructions-from-prfs), so either we want a secure PRF or a secure MAC scheme.
|
||||||
|
|
||||||
#### Prepending the Key
|
#### Prepending the Key
|
||||||
|
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ Note that $pk$ is sent to the adversary, and adversary can encrypt any message!
|
|||||||
|
|
||||||
For symmetric ciphers, semantic security (one-time) did not guarantee CPA security (many-time). But in public key encryption, semantic security implies CPA security. This is because *the attacker can encrypt any message using the public key*.
|
For symmetric ciphers, semantic security (one-time) did not guarantee CPA security (many-time). But in public key encryption, semantic security implies CPA security. This is because *the attacker can encrypt any message using the public key*.
|
||||||
|
|
||||||
First, we check the definition of CPA security for public key encryption. It is similar to that of symmetric ciphers, compare with [CPA Security for symmetric key encryption (Modern Cryptography)](./2023-09-19-symmetric-key-encryption.md#cpa-security).
|
First, we check the definition of CPA security for public key encryption. It is similar to that of symmetric ciphers, compare with [CPA Security for symmetric key encryption (Modern Cryptography)](../2023-09-19-symmetric-key-encryption/#cpa-security).
|
||||||
|
|
||||||
> **Definition.** For a given public-key encryption scheme $\mc{E} = (G, E, D)$ defined over $(\mc{M}, \mc{C})$ and given an adversary $\mc{A}$, define experiments 0 and 1.
|
> **Definition.** For a given public-key encryption scheme $\mc{E} = (G, E, D)$ defined over $(\mc{M}, \mc{C})$ and given an adversary $\mc{A}$, define experiments 0 and 1.
|
||||||
>
|
>
|
||||||
@@ -141,7 +141,7 @@ $$
|
|||||||
|
|
||||||
## CCA Security for Public Key Encryption
|
## CCA Security for Public Key Encryption
|
||||||
|
|
||||||
We also define CCA security for public key encryption, which models a wide spectrum of real-world attacks. The definition is also very similar to that of symmetric ciphers, compare with [CCA security for symmetric ciphers (Modern Cryptography)](./2023-09-26-cca-security-authenticated-encryption.md#cca-security).
|
We also define CCA security for public key encryption, which models a wide spectrum of real-world attacks. The definition is also very similar to that of symmetric ciphers, compare with [CCA security for symmetric ciphers (Modern Cryptography)](../2023-09-26-cca-security-authenticated-encryption/#cca-security).
|
||||||
|
|
||||||
> **Definition.** Let $\mc{E} = (G, E, D)$ be a public-key encryption scheme over $(\mc{M}, \mc{C})$. Given an adversary $\mc{A}$, define experiments $0$ and $1$.
|
> **Definition.** Let $\mc{E} = (G, E, D)$ be a public-key encryption scheme over $(\mc{M}, \mc{C})$. Given an adversary $\mc{A}$, define experiments $0$ and $1$.
|
||||||
>
|
>
|
||||||
@@ -176,7 +176,7 @@ Similarly, 1CCA security implies CCA security, as in the above theorem. So to sh
|
|||||||
|
|
||||||
### Active Adversaries in Symmetric vs Public Key
|
### Active Adversaries in Symmetric vs Public Key
|
||||||
|
|
||||||
In symmetric key encryption, we studied [authenticated encryption (AE)](./2023-09-26-cca-security-authenticated-encryption.md#authenticated-encryption-(ae)), which required the scheme to be CPA secure and provide ciphertext integrity. In symmetric key settings, AE implied CCA.
|
In symmetric key encryption, we studied [authenticated encryption (AE)](../2023-09-26-cca-security-authenticated-encryption/#authenticated-encryption-(ae)), which required the scheme to be CPA secure and provide ciphertext integrity. In symmetric key settings, AE implied CCA.
|
||||||
|
|
||||||
However in public-key schemes, adversaries can always create new ciphertexts using the public key, which makes the original definition of ciphertext integrity unusable. Thus we directly require CCA security.
|
However in public-key schemes, adversaries can always create new ciphertexts using the public key, which makes the original definition of ciphertext integrity unusable. Thus we directly require CCA security.
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ attachment:
|
|||||||
>
|
>
|
||||||
> - A probabilistic algorithm $G$ outputs a pair $(pk, sk)$, where $sk$ is called a secret **signing key**, and $pk$ is a public **verification key**.
|
> - A probabilistic algorithm $G$ outputs a pair $(pk, sk)$, where $sk$ is called a secret **signing key**, and $pk$ is a public **verification key**.
|
||||||
> - Given $sk$ and a message $m$, a probabilistic algorithm $S$ outputs a **signature** $\sigma \la S(sk, m)$.
|
> - Given $sk$ and a message $m$, a probabilistic algorithm $S$ outputs a **signature** $\sigma \la S(sk, m)$.
|
||||||
> - $V$ is a deterministic algorithm that outputs either $\texttt{{accept}}$ or $\texttt{reject}$ for $V(pk, m, \sigma)$.
|
> - $V$ is a deterministic algorithm that outputs either $\texttt{accept}$ or $\texttt{reject}$ for $V(pk, m, \sigma)$.
|
||||||
|
|
||||||
The correctness property requires that all signatures generated by $S$ is always accepted by $V$. For all $(pk, sk) \la G$ and $m \in \mc{M}$,
|
The correctness property requires that all signatures generated by $S$ is always accepted by $V$. For all $(pk, sk) \la G$ and $m \in \mc{M}$,
|
||||||
|
|
||||||
@@ -239,7 +239,7 @@ Schnorr's scheme was protected by a patent, so NIST opted for a ad-hoc signature
|
|||||||
|
|
||||||
How would you trust public keys? We introduce **digital certificates** for this.
|
How would you trust public keys? We introduce **digital certificates** for this.
|
||||||
|
|
||||||
Read in [public key infrastructure (Internet Security)](../../internet-security/2023-10-16-pki).
|
Read in [public key infrastructure (Internet Security)](../../internet-security/2023-10-16-pki/).
|
||||||
|
|
||||||
[^1]: A Graduate Course in Applied Cryptography
|
[^1]: A Graduate Course in Applied Cryptography
|
||||||
[^2]: By using the [Fiat-Shamir transform](../2023-11-07-sigma-protocols/#the-fiat-shamir-transform).
|
[^2]: By using the [Fiat-Shamir transform](../2023-11-07-sigma-protocols/#the-fiat-shamir-transform).
|
||||||
|
|||||||
146
_posts/mathematics/2025-08-22-group-structure-of-z-2n-z-star.md
Normal file
@@ -0,0 +1,146 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: true
|
||||||
|
categories:
|
||||||
|
- Mathematics
|
||||||
|
path: _posts/mathematics
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- cryptography
|
||||||
|
title: Group Structure of $(\mathbb{Z}/2^n \mathbb{Z})^*$
|
||||||
|
date: 2025-08-22
|
||||||
|
github_title: 2025-08-22-group-structure-of-z-2n-z-star
|
||||||
|
---
|
||||||
|
|
||||||
|
To compute the rotation automorphism homomorphically, we use the fact that $(\Z/2^n\Z)^* \simeq \span{-1, 5}$. I couldn't find a clear proof of this result online, so I just accepted the fact although it wasn't very satisfying.
|
||||||
|
|
||||||
|
After more than a year, I got a chance to revisit the rotation automorphism and I figured that I should clear things up once and for all. So I decided to compile a proof, drawn from many sources.
|
||||||
|
|
||||||
|
## Theorem
|
||||||
|
|
||||||
|
> **Theorem 1.** $(\Z/2^n \Z)^*$ is the direct product of a cyclic group of order $2$ and cyclic group of order $2^{n-2}$, for all $n \geq 2$.
|
||||||
|
|
||||||
|
The above theorem is from Corollary 20 (2) of Section 9.5 in Abstract Algebra, 3rd Edition, Dummit and Foote.
|
||||||
|
|
||||||
|
> **Theorem 2.** $(\Z/2^n\Z)^* \simeq \span{-1, 5}$ for $n \geq 3$.
|
||||||
|
|
||||||
|
## Observations
|
||||||
|
|
||||||
|
### Order of $5$ Modulo $2^n$
|
||||||
|
|
||||||
|
> **Proposition.** $5^{2^{n-3}} \equiv 1 + 2^{n-1} \pmod {2^n}$ for $n \geq 3$.
|
||||||
|
|
||||||
|
*Proof*. This is an easy proof with induction. Omitted.
|
||||||
|
|
||||||
|
> **Lemma.** $5$ has order $2^{n-2}$ in $(\Z/2^n \Z)^*$, for $n \geq 2$.
|
||||||
|
|
||||||
|
*Proof*. We will use strong induction. For $n = 2, 3$, the lemma can be checked by direct computation. Now assume that the order of $5$ is $2^{k-2}$ in $(\Z/2^k\Z)^*$, for all $3 \leq k \leq n$.
|
||||||
|
|
||||||
|
Let $r$ be the order of $5$ modulo $2^{n+1}$. Then $2^{n-2} \mid r$. This is from the fact that
|
||||||
|
|
||||||
|
$$
|
||||||
|
5^r \equiv 1 \pmod {2^{n+1}} \implies 5^r \equiv 1 \pmod {2^n}.
|
||||||
|
$$
|
||||||
|
|
||||||
|
Therefore $r$ must be a multiple of $2^{n-2}$. (order of $5$ modulo $2^n$) But from the above proposition, $5^{2^{n-2}} \equiv 1 + 2^n \pmod {2^{n+1}}$, so $r \neq 2^{n-2}$. The next candidate of $r$ is $2^{n-1}$ since it should be a multiple of $2^{n-2}$. Observe that
|
||||||
|
|
||||||
|
$$
|
||||||
|
5^{2^{n-1}} = \paren{5^{2^{n-2}}}^2 = (1 + 2^{n})^2 \equiv 1 \pmod {2^{n+1}},
|
||||||
|
$$
|
||||||
|
|
||||||
|
completing the proof.
|
||||||
|
|
||||||
|
### Group is Not Cyclic
|
||||||
|
|
||||||
|
> **Proposition.** Let $G = \span{x}$ be a cyclic group of finite order $n < \infty$. For each divisor $a$ of $n$, there exists a unique subgroup of $G$ with order $a$.
|
||||||
|
|
||||||
|
*Proof*. Since $a \mid n$, set $d = n /a$. Then $\span{x^d}$ is a subgroup of order $a$, showing existence.
|
||||||
|
|
||||||
|
For uniqueness, suppose $H \neq \span{x^d}$ is another subgroup of $G$ with order $a$. Since subgroups of cyclic groups are also cyclic, $H = \span{x^k}$ where $k$ is the smallest positive integer with $x^k \in H$. Then from
|
||||||
|
|
||||||
|
$$
|
||||||
|
\frac{n}{d} = a = \abs{H} = \frac{n}{\gcd(n, k)},
|
||||||
|
$$
|
||||||
|
|
||||||
|
$d = \gcd(n, k)$. So $k$ is a multiple of $d$, resulting in $x^k \in \span{x^d}$. Therefore, $H \leq \span{x^d}$, but the two groups have the same order, so $H = \span{x^d}$.
|
||||||
|
|
||||||
|
> **Lemma.** $(\Z/2^n \Z)^*$ is not cyclic for any $n \geq 3$.
|
||||||
|
|
||||||
|
*Proof*. $(\Z/2^n\Z)^*$ has two distinct subgroups of order $2$. For $n \geq 3$,
|
||||||
|
|
||||||
|
$$
|
||||||
|
(2^n - 1)^2 \equiv (-1)^2 \equiv 1 \pmod {2^n}
|
||||||
|
$$
|
||||||
|
|
||||||
|
and
|
||||||
|
|
||||||
|
$$
|
||||||
|
(2^{n-1}-1)^2 = 2^{2n-2} - 2^n + 1 \equiv 1 \pmod {2^n}.
|
||||||
|
$$
|
||||||
|
|
||||||
|
Both $2^n-1$ and $2^{n-1} - 1$ have order $2$ modulo $2^n$ and they are distinct since $n \geq 3$. By the above proposition, $(\Z/2^n\Z)^*$ cannot be cyclic.
|
||||||
|
|
||||||
|
## Proof of Theorem 1
|
||||||
|
|
||||||
|
*Proof*. $(\Z/2^n\Z)^*$ is a finitely generated abelian group, so the fundamental theorem of finitely generated abelian groups applies here. We know that group has order $2^{n-1}$, and from the above results,
|
||||||
|
|
||||||
|
- $(\Z/2^n \Z)^*$ has an element of order $2^{n-2}$,
|
||||||
|
- $(\Z/2^n \Z)^*$ is not cyclic for $n \geq 3$.
|
||||||
|
|
||||||
|
Thus, for $n \geq 3$, the only possible case is $(\Z/2^n\Z)^* \simeq \Z _ 2 \times \Z_{2^{n-2}}$. As for $n = 2$, $(\Z/4\Z)^* \simeq \Z_2 \times \Z_1$ is pretty obvious.
|
||||||
|
|
||||||
|
*Note*. I'm still looking for an elementary proof that doesn't use the fundamental theorem. This sort of feels like nuking a mosquito.
|
||||||
|
|
||||||
|
## More Observations
|
||||||
|
|
||||||
|
> **Lemma.** Suppose that $H$ and $K$ are normal subgroups of $G$ and $H \cap K = \braces{1}$. Then $HK \simeq H \times K$.
|
||||||
|
|
||||||
|
*Proof*. Construct an isomorphism $\varphi : H \times K \ra HK$ such that $(h, k) \mapsto hk$.
|
||||||
|
|
||||||
|
Since $H, K \unlhd G$, observe that $hkh\inv k \inv \in K \cap H = \braces{1}$ and $hk = kh$. Therefore,
|
||||||
|
|
||||||
|
$$
|
||||||
|
\varphi(h, k) \cdot \varphi(h',k') = hkh'k' = hh' kk' = \varphi\paren{(h, k)\cdot (h', k')}
|
||||||
|
$$
|
||||||
|
|
||||||
|
and $\varphi$ is a homomorphism.
|
||||||
|
|
||||||
|
Next, if $\varphi(h, k) = hk = 1$, we have $h = k\inv \in H\cap K = \braces{1}$. Then $h = k = 1$, showing that $\ker \varphi$ is trivial and $\varphi$ is injective.
|
||||||
|
|
||||||
|
Surjectivity of $\varphi$ is trivial. $\varphi$ is an isomorphism and $HK \simeq H \times K$.
|
||||||
|
|
||||||
|
> **Proposition.** As subgroups of $(\Z/2^n\Z)^*$, $\span{-1} \cap \span{5} = \braces{1}$ for $n \geq 3$.
|
||||||
|
|
||||||
|
*Proof*. It suffices to show that $-1 \notin \span{{5}}$. Suppose that $-1 \in \span{5}$. Since $\span{5}$ is cyclic, it has a unique element of order $2$. Since $5$ has order $2^{n-2}$, it must be the case that $-1 \equiv 5^{2^{n-3}} \pmod {2^n}$.
|
||||||
|
|
||||||
|
Then we have
|
||||||
|
|
||||||
|
$$
|
||||||
|
-1 \equiv 5^{2^{n-3}} \equiv 1 + 2^{n-1} \pmod {2^n},
|
||||||
|
$$
|
||||||
|
|
||||||
|
which gives $2^{n-1} + 2 \equiv 0 \pmod {2^n}$. But for $n \geq 3$, this is impossible since $0 < 2^{n-1} + 2 < 2^n$. Contradiction.
|
||||||
|
|
||||||
|
*Note*. If $-1 \in \span{5}$, then maybe $5$ would have generated the whole group. But the group isn't cyclic, so we have a contradiction?
|
||||||
|
|
||||||
|
## Proof of Theorem 2
|
||||||
|
|
||||||
|
*Proof*. Since we are dealing with commutative groups, all subgroups are normal. We have $\span{-1}, \span{5} \unlhd (\Z/2^n\Z)^*$ and $\span{-1} \cap \span{5} = \braces{1}$. Therefore,
|
||||||
|
|
||||||
|
$$
|
||||||
|
(\Z/2^n\Z)^* \simeq \Z_2 \times \Z_{2^{n-2}} = \span{-1} \times \span{5} \simeq \span{-1}\span{5}.
|
||||||
|
$$
|
||||||
|
|
||||||
|
This means that we can uniquely write all elements of $(\Z/2^n\Z)^*$ as $(-1)^a 5^b$ for ${} 0 \leq a < 2 {}$, $0 \leq b < 2^{n-2}$. From commutativity, this exactly equals the subgroup generated by $-1$ and $5$, which is $\span{-1, 5}$. This concludes the proof.
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
The theorem wasn't so trivial after all, but I'm still happy to have resolved a long overdue task.
|
||||||
|
|
||||||
|
## References
|
||||||
|
|
||||||
|
- My notes taken from abstract algebra class
|
||||||
|
- <https://math.stackexchange.com/q/459815>
|
||||||
|
- <https://math.stackexchange.com/q/3881641>
|
||||||
|
- <https://math.stackexchange.com/a/4910312/329909>
|
||||||
@@ -2,18 +2,24 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
math: true
|
math: true
|
||||||
categories: [Mathematics, Measure Theory]
|
categories:
|
||||||
tags: [math, analysis, measure-theory]
|
- Mathematics
|
||||||
title: "01. Algebra of Sets"
|
- Measure Theory
|
||||||
date: "2023-01-11"
|
path: _posts/mathematics/measure-theory
|
||||||
github_title: "2023-01-11-algebra-of-sets"
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 01. Algebra of Sets
|
||||||
|
date: 2023-01-11
|
||||||
|
github_title: 2023-01-11-algebra-of-sets
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-01.png
|
path: /assets/img/posts/mathematics/measure-theory/mt-01.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
---
|
---
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
르벡 적분을 공부하기 위해서는 먼저 집합의 ‘길이’ 개념을 공부해야 합니다. 그리고 집합의 ‘길이’ 개념을 확립하기 위해서는 집합 간의 연산과 이에 대한 구조가 필요합니다.
|
르벡 적분을 공부하기 위해서는 먼저 집합의 ‘길이’ 개념을 공부해야 합니다. 그리고 집합의 ‘길이’ 개념을 확립하기 위해서는 집합 간의 연산과 이에 대한 구조가 필요합니다.
|
||||||
|
|
||||||
@@ -0,0 +1,267 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: true
|
||||||
|
categories:
|
||||||
|
- Mathematics
|
||||||
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 02. Construction of Measure
|
||||||
|
date: 2023-01-23
|
||||||
|
github_title: 2023-01-23-construction-of-measure
|
||||||
|
image:
|
||||||
|
path: /assets/img/posts/mathematics/measure-theory/mt-02.png
|
||||||
|
attachment:
|
||||||
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
이제 본격적으로 집합을 재보도록 하겠습니다. 우리가 잴 수 있는 집합들부터 시작합니다. $\mathbb{R}^p$에서 논의할 건데, 이제 여기서부터는 $\mathbb{R}$의 구간의 열림/닫힘을 모두 포괄하여 정의합니다. 즉, $\mathbb{R}$의 구간이라고 하면 $[a, b], (a, b), [a, b), (a, b]$ 네 가지 경우를 모두 포함합니다.
|
||||||
|
|
||||||
|
## Elementary Sets
|
||||||
|
|
||||||
|
**정의.** ($\mathbb{R}^p$의 구간) $a _ i, b _ i \in \mathbb{R}$, $a _ i \leq b _ i$ 라 하자. $I _ i$가 $\mathbb{R}$의 구간이라고 할 때, $\mathbb{R}^p$의 구간은
|
||||||
|
|
||||||
|
$$\prod _ {i=1}^p I _ i = I _ 1 \times \cdots \times I _ p$$
|
||||||
|
|
||||||
|
와 같이 정의한다.
|
||||||
|
|
||||||
|
예를 들어 $\mathbb{R}^2$의 구간이라 하면 직사각형 영역, $\mathbb{R}^3$의 구간이라 하면 직육면체 영역을 떠올릴 수 있습니다. 단, 경계는 포함되지 않을 수도 있습니다.
|
||||||
|
|
||||||
|
이러한 구간들을 유한개 모아 합집합하여 얻은 집합을 모아 elementary set이라 합니다.
|
||||||
|
|
||||||
|
**정의.** (Elementary Set) 어떤 집합이 유한개 구간의 합집합으로 표현되면 그 집합을 **elementary set**이라고 한다. 그리고 $\mathbb{R}^p$의 elementary set의 모임을 $\Sigma$로 표기한다.
|
||||||
|
|
||||||
|
임의의 구간은 유계입니다. 따라서 구간의 유한한 합집합도 유계일 것입니다.
|
||||||
|
|
||||||
|
**참고.** 임의의 elementary set은 유계이다.
|
||||||
|
|
||||||
|
Elementary set의 모임에서 집합의 연산을 정의할 수 있을 것입니다. 이 때, $\Sigma$가 ring이 된다는 것을 간단하게 확인할 수 있습니다.
|
||||||
|
|
||||||
|
**명제.** $\Sigma$는 ring이다. 하지만 전체 공간인 $\mathbb{R}^p$를 포함하고 있지 않기 때문에 $\sigma$-ring은 아니다.
|
||||||
|
|
||||||
|
구간의 길이를 재는 방법은 아주 잘 알고 있습니다. 유한개 구간의 합집합인 elementary set에서도 쉽게 잴 수 있습니다. 이제 길이 함수 $m: \Sigma \rightarrow[0, \infty)$ 을 정의하겠습니다. 아직 measure는 아닙니다.
|
||||||
|
|
||||||
|
**정의.** $a _ i, b _ i \in \mathbb{R}$ 가 구간 $I _ i$의 양 끝점이라 하자. $\mathbb{R}^p$의 구간 $I = \displaystyle\prod _ {i=1}^p I _ i$ 에 대하여,
|
||||||
|
|
||||||
|
$$m(I) = \prod _ {i=1}^p (b _ i - a _ i)$$
|
||||||
|
|
||||||
|
로 정의한다.
|
||||||
|
|
||||||
|
**정의.** $I _ i$가 쌍마다 서로소인 $\mathbb{R}^p$의 구간이라 하자. $A = \displaystyle\bigcup _ {i=1}^n I _ i$ 에 대하여
|
||||||
|
|
||||||
|
$$m(A) = \sum _ {i=1}^n m(I _ i)$$
|
||||||
|
|
||||||
|
로 정의한다.
|
||||||
|
|
||||||
|
$\mathbb{R}, \mathbb{R}^2, \mathbb{R}^3$에서 생각해보면 $m$은 곧 길이, 넓이, 부피와 대응되는 함수임을 알 수 있습니다. 또한 쌍마다 서로소인 구간의 합집합에 대해서는 각 구간의 함숫값을 더한 것으로 정의합니다. 어떤 집합을 겹치지 않게 구간으로 나눌 수 있다면, 집합의 ‘길이’가 각 구간의 ‘길이’ 합이 되는 것은 자연스럽습니다.
|
||||||
|
|
||||||
|
그리고 이 정의는 well-defined 입니다. $A \in \Sigma$ 에 대해서 서로소인 유한개 구간의 합집합으로 나타내는 방법이 유일하지 않아도, $m$ 값은 같습니다.
|
||||||
|
|
||||||
|
**참고.** $m$은 $\Sigma$ 위에서 additive이다. 따라서 $m : \Sigma \rightarrow[0, \infty)$ 은 additive set function이다.
|
||||||
|
|
||||||
|
여기서 추가로 regularity 조건을 만족했으면 좋겠습니다.
|
||||||
|
|
||||||
|
**정의.** (Regularity) Set function $\mu: \Sigma \rightarrow[0, \infty]$ 가 additive라 하자. 모든 $A \in \Sigma$ 와 $\epsilon > 0$ 에 대하여
|
||||||
|
|
||||||
|
> 닫힌집합 $F \in \Sigma$, 열린집합 $G \in \Sigma$ 가 존재하여 $F \subseteq A \subseteq G$ 이고 $\mu(G) - \epsilon \leq \mu(A) \leq \mu(F) + \epsilon$
|
||||||
|
|
||||||
|
이면 $\mu$가 $\Sigma$ 위에서 **regular**하다고 정의한다.
|
||||||
|
|
||||||
|
위에서 정의한 $m$이 regular한 것은 쉽게 확인할 수 있습니다.
|
||||||
|
|
||||||
|
이제 set function $\mu: \Sigma \rightarrow[0, \infty)$ 가 finite, regular, additive 하다고 가정합니다.
|
||||||
|
|
||||||
|
**정의.** (Outer Measure) $E \in \mathcal{P}(\mathbb{R}^p)$ 의 **outer measure** $\mu^\ast: \mathcal{P}(\mathbb{R}^p) \rightarrow[0, \infty]$ 는
|
||||||
|
|
||||||
|
$$\mu^\ast(E) = \inf \left\lbrace \sum _ {n=1}^\infty \mu(A _ n) : \text{열린집합 } A _ n \in \Sigma \text{ 에 대하여 } E \subseteq\bigcup _ {n=1}^\infty A _ n\right\rbrace.$$
|
||||||
|
|
||||||
|
로 정의한다.
|
||||||
|
|
||||||
|
Outer measure라 부르는 이유는 $E$의 바깥에서 길이를 재서 근사하기 때문입니다. Outer measure는 모든 power set에 대해서 정의할 수 있으니, 이를 이용해서 모든 집합을 잴 수 있으면 좋겠습니다. 하지만 measure가 되려면 countably additive 해야하는데, 이 조건이 가장 만족하기 까다로운 조건입니다. 실제로 countably additive 조건이 성립하지 않습니다.
|
||||||
|
|
||||||
|
**참고.**
|
||||||
|
|
||||||
|
- $\mu^\ast \geq 0$ 이다.
|
||||||
|
|
||||||
|
- $E _ 1 \subseteq E _ 2$ 이면 $\mu^\ast(E _ 1) \leq \mu^\ast(E _ 2)$ 이다. (단조성)
|
||||||
|
|
||||||
|
**정리.**
|
||||||
|
|
||||||
|
1. $A \in \Sigma$ 이면 $\mu^\ast(A) = \mu(A)$.[^1]
|
||||||
|
|
||||||
|
2. Countable subadditivity가 성립한다.
|
||||||
|
|
||||||
|
$$\mu^\ast\left( \bigcup _ {n=1}^\infty E _ n \right) \leq \sum _ {n=1}^\infty \mu^\ast(E _ n), \quad (\forall E _ n \in \mathcal{P}(\mathbb{R}^p))$$
|
||||||
|
|
||||||
|
**증명.**
|
||||||
|
|
||||||
|
(1) $A \in \Sigma$, $\epsilon > 0$ 라 두자. $\mu$의 regularity를 이용하면, 열린집합 $G \in \Sigma$ 가 존재하여 $A \subseteq G$ 이고
|
||||||
|
|
||||||
|
$$\mu^\ast(A) \leq \mu(G) \leq \mu(A) + \epsilon$$
|
||||||
|
|
||||||
|
이다. $\mu^\ast$의 정의에 의해 열린집합 $A _ n \in \Sigma$ 가 존재하여 $A \subseteq\displaystyle\bigcup _ {n=1}^\infty A _ n$ 이고
|
||||||
|
|
||||||
|
$$\sum _ {n=1}^\infty \mu(A _ n) \leq \mu^\ast(A) + \epsilon$$
|
||||||
|
|
||||||
|
이다. 마찬가지로 regularity에 의해 닫힌집합 $F \in \Sigma$ 가 존재하여 $F\subseteq A$ 이고 $\mu(A) \leq \mu(F) + \epsilon$ 이다. $F \subseteq\mathbb{R}^p$ 는 유계이고 닫힌집합이므로 compact set이고, finite open cover를 택할 수 있다. 즉, 적당한 $N \in \mathbb{N}$ 에 대하여 $F \subseteq\displaystyle\bigcup _ {i=1}^N A _ {i}$ 가 성립한다.
|
||||||
|
|
||||||
|
따라서
|
||||||
|
|
||||||
|
$$\mu(A) \leq \mu(F) + \epsilon \leq \sum _ {i=1}^N \mu(A _ i) \leq \sum _ {i=1}^n \mu(A _ i) + \epsilon \leq \mu^\ast(A) + 2\epsilon$$
|
||||||
|
|
||||||
|
이제 $\epsilon \rightarrow 0$ 로 두면 $\mu(A) = \mu^\ast(A)$ 를 얻는다.
|
||||||
|
|
||||||
|
\(2\) 부등식의 양변이 모두 $\infty$ 이면 증명할 것이 없으므로, 양변이 모두 유한하다고 가정하여 모든 $n\in \mathbb{N}$ 에 대해 $\mu^\ast(E _ n) < \infty$ 라 하자. $\epsilon > 0$ 로 두고, 각 $n \in \mathbb{N}$ 에 대하여 열린집합 $A _ {n, k} \in \Sigma$ 가 존재하여 $E _ n \subseteq\displaystyle\bigcup _ {k=1}^\infty A _ {n, k}$ 이고 $\displaystyle\sum _ {k=1}^\infty \mu(A _ {n,k}) \leq \mu^\ast(E _ n) + 2^{-n}\epsilon$ 이다.
|
||||||
|
|
||||||
|
$\mu^\ast$는 하한(infimum)으로 정의되었기 때문에,
|
||||||
|
|
||||||
|
$$\mu^\ast\left( \bigcup _ {n=1}^\infty E _ n \right) \leq \sum _ {n=1}^\infty \sum _ {k=1}^\infty \mu(A _ {n,k}) \leq \sum _ {n=1}^\infty \mu^\ast(E _ n) + \epsilon$$
|
||||||
|
|
||||||
|
가 성립하고, $\epsilon \rightarrow 0$ 로 두면 부등식이 성립함을 알 수 있다.
|
||||||
|
|
||||||
|
## $\mu$-measurable Sets
|
||||||
|
|
||||||
|
Countably additive 조건이 성립하는 집합들만 모아서 measure를 construct 하려고 합니다. 아래 내용은 이를 위한 사전 준비 작업입니다.
|
||||||
|
|
||||||
|
**표기법.** (대칭차집합) $A \mathop{\mathrm{\triangle}}B = (A\setminus B) \cup (B \setminus A)$.
|
||||||
|
|
||||||
|
**정의.**
|
||||||
|
|
||||||
|
- $d(A, B) = \mu^\ast(A \mathop{\mathrm{\triangle}}B)$ 로 정의한다.
|
||||||
|
|
||||||
|
- 집합열 $A _ n$에 대하여 $d(A _ n, A) \rightarrow 0$ 이면 $A _ n \rightarrow A$ 로 정의한다.
|
||||||
|
|
||||||
|
**참고.**
|
||||||
|
|
||||||
|
- $A, B, C \in \mathbb{R}^p$ 에 대하여 $d(A, B) \leq d(A, C) + d(C, B)$ 이다.
|
||||||
|
|
||||||
|
- $A _ 1, B _ 2, B _ 1, B _ 2 \in \mathbb{R}^p$ 일 때, 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\left.\begin{array}{c}d(A _ 1 \cup A _ 2, B _ 1 \cup B _ 2) \\d(A _ 1 \cap A _ 2, B _ 1 \cap B _ 2) \\d(A _ 1 \setminus A _ 2, B _ 1 \setminus B _ 2)\end{array}\right\rbrace\leq d(A _ 1, B _ 1) + d(A _ 2, B _ 2).$$
|
||||||
|
|
||||||
|
**정의.** (Finitely $\mu$-measurable) 집합 $A _ n \in \Sigma$ 이 존재하여 $A _ n \rightarrow A$ 이면 $A$가 **finitely $\mu$-measurable**이라 한다. 그리고 finitely $\mu$-measurable한 집합의 모임을 $\mathfrak{M} _ F(\mu)$로 표기한다.
|
||||||
|
|
||||||
|
위 정의는 $\mu$라는 set function에 의해 $\mu^\ast (A _ n \mathop{\mathrm{\triangle}}A) \rightarrow 0$ 이 되는 elementary set $A _ n$이 존재한다는 의미입니다.
|
||||||
|
|
||||||
|
**정의.** ($\mu$-measurable) $A _ n \in \mathfrak{M} _ F(\mu)$ 에 대하여 $A = \displaystyle\bigcup _ {n=1}^\infty A _ n$ 이면 $A$가 **$\mu$-measurable**이라 한다. 그리고 $\mu$-measurable한 집합의 모임을 $\mathfrak{M}(\mu)$로 표기한다.
|
||||||
|
|
||||||
|
**참고.** $\mu^\ast(A) = d(A, \varnothing) \leq d(A, B) + \mu^\ast(B)$.
|
||||||
|
|
||||||
|
**명제.** $\mu^\ast(A)$ 또는 $\mu^\ast(B)$가 유한하면, 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\lvert \mu^\ast(A) - \mu^\ast(B) \rvert \leq d(A, B).$$
|
||||||
|
|
||||||
|
**따름정리.** $A \in \mathfrak{M} _ F(\mu)$ 이면 $\mu^\ast(A) < \infty$ 이다.
|
||||||
|
|
||||||
|
**증명.** $A _ n \in \Sigma$ 가 존재하여 $A _ n \rightarrow A$ 이고, $N \in \mathbb{N}$ 이 존재하여
|
||||||
|
|
||||||
|
$$\mu^\ast(A) \leq d(A _ N, A) + \mu^\ast(A _ N) \leq 1 + \mu^\ast(A _ N) < \infty$$
|
||||||
|
|
||||||
|
이다.
|
||||||
|
|
||||||
|
**따름정리.** $A _ n \rightarrow A$ 이고 $A _ n, A \in \mathfrak{M} _ F(\mu)$ 이면 $\mu^\ast(A _ n)\rightarrow\mu^\ast(A) < \infty$ 이다.
|
||||||
|
|
||||||
|
**증명.** $\mu^\ast(A)$, $\mu^\ast(A _ n)$가 유한하므로, $n \rightarrow\infty$ 일 때 $\lvert \mu^\ast(A _ n) - \mu^\ast(A) \rvert \leq d(A _ n, A) \rightarrow 0$ 이다.
|
||||||
|
|
||||||
|
## Construction of Measure
|
||||||
|
|
||||||
|
준비가 끝났으니 measure를 construct 해보겠습니다! $\mathcal{P}(\mathbb{R}^p)$에서는 할 수 없지만 정의역을 $\mathfrak{M}(\mu)$로 조금 좁히면 measure가 된다는 뜻입니다.
|
||||||
|
|
||||||
|
**정리.** $\mathfrak{M}(\mu)$는 $\sigma$-algebra 이고 $\mu^\ast$는 $\mathfrak{M}(\mu)$의 measure가 된다.
|
||||||
|
|
||||||
|
**증명.** $\mathfrak{M}(\mu)$가 $\sigma$-algebra이고 $\mu^\ast$가 $\mathfrak{M}(\mu)$에서 countably additive임을 보이면 충분하다.
|
||||||
|
|
||||||
|
**(Step 0)** *$\mathfrak{M} _ F(\mu)$는 ring이다.*
|
||||||
|
|
||||||
|
$A, B \in \mathfrak{M} _ F(\mu)$ 라 하자. 그러면 $A _ n, B _ n \in \Sigma$ 이 존재하여 $A _ n \rightarrow A$, $B _ n \rightarrow B$ 이 된다. 그러면
|
||||||
|
|
||||||
|
$$\left.\begin{array}{c}d(A _ n \cup B _ n, A \cup B) \\ d(A _ n \cap B _ n, A \cap B) \\ d(A _ n \setminus B _ n, A \setminus B)\end{array}\right\rbrace\leq d(A _ n, A) + d(B _ n, B) \rightarrow 0$$
|
||||||
|
|
||||||
|
이므로 $A _ n \cup B _ n \rightarrow A \cup B, A _ n \setminus B _ n \rightarrow A\setminus B$ 이기 때문에 $\mathfrak{M} _ F(\mu)$는 ring이다.
|
||||||
|
|
||||||
|
**(Step 1)** *$\mu^\ast$는 $\mathfrak{M} _ F(\mu)$ 위에서 additive이다*.
|
||||||
|
|
||||||
|
$\Sigma$ 위에서는 $\mu = \mu^\ast$ 이므로, 위 따름정리에 의해
|
||||||
|
|
||||||
|
$$\begin{matrix} \mu(A _ n) \rightarrow\mu^\ast(A), & \mu(A _ n\cup B _ n) \rightarrow\mu^\ast(A\cup B), \\ \mu(B _ n) \rightarrow\mu^\ast(B), & \mu(A _ n\cap B _ n) \rightarrow\mu^\ast(A\cap B) \end{matrix}$$
|
||||||
|
|
||||||
|
가 성립함을 알 수 있다. 일반적으로 $\mu(A _ n) + \mu(B _ n) = \mu(A _ n \cup B _ n) + \mu(A _ n \cap B _ n)$ 이므로 여기서 $n \rightarrow\infty$ 로 두면
|
||||||
|
|
||||||
|
$$\mu^\ast(A) + \mu^\ast(B) = \mu^\ast(A\cup B) + \mu^\ast(A \cap B)$$
|
||||||
|
|
||||||
|
를 얻는다. $A \cap B = \varnothing$ 라는 조건이 추가되면 $\mu^\ast$가 additive임을 알 수 있다.
|
||||||
|
|
||||||
|
**(Step 2)** *$\mathfrak{M} _ F(\mu) = \lbrace A \in \mathfrak{M}(\mu) : \mu^\ast(A) < \infty\rbrace$.*[^2]
|
||||||
|
|
||||||
|
**Claim**. 쌍마다 서로소인 $\mathfrak{M} _ F(\mu)$의 원소들을 잡아 이들의 합집합으로 $A \in \mathfrak{M}(\mu)$ 를 표현할 수 있다.
|
||||||
|
|
||||||
|
**증명.** $A _ n' \in \mathfrak{M} _ F(\mu)$ 에 대하여 $A = \bigcup A _ n'$ 로 두자.
|
||||||
|
|
||||||
|
> $A _ 1 = A _ 1'$, $n \geq 2$ 이면 $A _ n = A _ n' \setminus(A _ 1'\cup \cdots \cup A _ {n-1}')$
|
||||||
|
|
||||||
|
와 같이 정의하면 $A _ n$이 쌍마다 서로소이고 $A _ n \in \mathfrak{M} _ F(\mu)$ 임을 알 수 있다.
|
||||||
|
|
||||||
|
위 사실을 이용하여 $A _ n \in \mathfrak{M} _ F(\mu)$ 에 대하여 $A = \displaystyle\bigcup _ {n=1}^\infty A _ n$ 으로 두자.
|
||||||
|
|
||||||
|
1. Countable subadditivity에 의해 $\displaystyle\mu^\ast(A) \leq \sum _ {n=1}^{\infty} \mu^\ast (A _ n)$ 가 성립한다.
|
||||||
|
|
||||||
|
2. Step 1에 의해 $\displaystyle\bigcup _ {n=1}^k A _ n \subseteq A$, $\displaystyle\sum _ {n=1}^{k} \mu^\ast(A _ n) \leq \mu^\ast(A)$ 이다. $k \rightarrow\infty$ 로 두면 $\displaystyle\mu^\ast(A) \geq \sum _ {n=1}^\infty \mu^\ast(A _ n)$ 임을 알 수 있다.
|
||||||
|
|
||||||
|
따라서 $\displaystyle\mu^\ast(A) = \sum _ {n=1}^\infty \mu^\ast(A _ n)$ 이다.[^3] [^4]
|
||||||
|
|
||||||
|
이제 $B _ n =\displaystyle\bigcup _ {k=1}^n A _ k$ 로 두자. $\mu^\ast(A) < \infty$ 를 가정하면 $\displaystyle\sum _ {n=1}^\infty \mu^\ast(A _ n)$의 수렴성에 의해
|
||||||
|
|
||||||
|
$$\displaystyle d(A, B _ n) = \mu^\ast\left( \bigcup _ {k=n+1}^\infty A _ k \right) = \sum _ {k=n+1}^{\infty} \mu^\ast(A _ i) \rightarrow 0 \text{ as } n \rightarrow\infty$$
|
||||||
|
|
||||||
|
임을 알 수 있다.
|
||||||
|
|
||||||
|
$B _ n \in \mathfrak{M} _ F(\mu)$ 이므로 $C _ n \in \Sigma$ 를 잡아 각 $n \in \mathbb{N}$ 에 대하여 $d(B _ n, C _ n)$를 임의로 작게 만들 수 있다. 그러면 $d(A, C _ n) \leq d(A, B _ n) + d(B _ n, C _ n)$ 이므로 충분히 큰 $n$에 대하여 $d(A, C _ n)$도 임의로 작게 만들 수 있다. 따라서 $C _ n \rightarrow A$ 임을 알 수 있고 $A \in \mathfrak{M} _ F(\mu)$ 라는 결론을 내릴 수 있다.
|
||||||
|
|
||||||
|
**(Step 3)** *$\mu^\ast$는 $\mathfrak{M}(\mu)$ 위에서 countably additive이다.*
|
||||||
|
|
||||||
|
$A _ n \in \mathfrak{M}(\mu)$ 가 $A \in \mathfrak{M}(\mu)$ 의 분할이라 하자. 적당한 $m \in \mathbb{N}$ 에 대하여 $\mu^\ast(A _ m) = \infty$ 이면
|
||||||
|
|
||||||
|
$$\mu^\ast\left( \bigcup _ {n=1}^\infty A _ n \right) \geq \mu^\ast(A _ m) = \infty = \sum _ {n=1}^\infty \mu^\ast(A _ n)$$
|
||||||
|
|
||||||
|
이므로 countable additivity가 성립한다.
|
||||||
|
|
||||||
|
이제 모든 $n\in \mathbb{N}$ 에 대하여 $\mu^\ast(A _ n) < \infty$ 이면, Step 2에 의해 $A _ n \in \mathfrak{M} _ F(\mu)$ 이고
|
||||||
|
|
||||||
|
$$\mu^\ast(A) = \mu^\ast\left( \bigcup _ {n=1}^\infty A _ n \right) = \sum _ {n=1}^\infty \mu^\ast(A _ n)$$
|
||||||
|
|
||||||
|
가 성립한다.
|
||||||
|
|
||||||
|
**(Step 4)** *$\mathfrak{M}(\mu)$는 $\sigma$-ring이다.*
|
||||||
|
|
||||||
|
$A _ n \in \mathfrak{M}(\mu)$ 이면 $B _ {n, k} \in \mathfrak{M} _ F(\mu)$ 가 존재하여 $\displaystyle A _ n = \bigcup _ k B _ {n,k}$ 이다. 그러면
|
||||||
|
|
||||||
|
$$\bigcup _ n A _ n = \bigcup _ {n, k} B _ {n, k} \in \mathfrak{M}(\mu)$$
|
||||||
|
|
||||||
|
이다.
|
||||||
|
|
||||||
|
$A, B \in \mathfrak{M}(\mu)$ 라 하면 $A _ n, B _ n \in \mathfrak{M} _ F(\mu)$ 에 대해 $\displaystyle A = \bigcup A _ n$, $\displaystyle B = \bigcup B _ n$ 이므로,
|
||||||
|
|
||||||
|
$$A \setminus B = \bigcup _ {n=1}^\infty \left( A _ n \setminus B \right) = \bigcup _ {n=1}^\infty (A _ n\setminus(A _ n\cap B))$$
|
||||||
|
|
||||||
|
임을 알 수 있다. 그러므로 $A _ n \cap B \in \mathfrak{M} _ F(\mu)$ 인 것만 보이면 충분하다. 정의에 의해
|
||||||
|
|
||||||
|
$$A _ n \cap B = \bigcup _ {k=1}^\infty (A _ n \cap B _ k) \in \mathfrak{M}(\mu)$$
|
||||||
|
|
||||||
|
이고 $\mu^\ast(A _ n \cap B) \leq \mu^\ast(A _ n) < \infty$ 이므로 $A _ n\cap B \in \mathfrak{M} _ F(\mu)$ 이다. 따라서 $A \setminus B$ 가 $\mathfrak{M} _ F(\mu)$의 원소들의 countable 합집합으로 표현되므로 $A\setminus B \in \mathfrak{M}(\mu)$ 이다.
|
||||||
|
|
||||||
|
따라서 $\mathfrak{M}(\mu)$는 $\sigma$-ring이고 $\sigma$-algebra이다.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
이제 $\Sigma$ 위의 $\mu$ 정의를 $\mathfrak{M}(\mu)$ ($\sigma$-algebra)로 확장하여 $\mathfrak{M}(\mu)$ 위에서는 $\mu = \mu^\ast$ 로 정의합니다. $\Sigma$ 위에서 $\mu = m$ 일 때, 이와 같이 확장한 $\mathfrak{M}(m)$ 위의 $m$을 **Lebesgue measure** on $\mathbb{R}^p$라 합니다. 그리고 $A \in \mathfrak{M}(m)$ 를 Lebesgue measurable set이라 합니다.
|
||||||
|
|
||||||
|
[^1]: $A$가 open이 아니면 자명하지 않은 명제입니다.
|
||||||
|
[^2]: $A$가 $\mu$-measurable인데 $\mu^\ast(A) < \infty$이면 $A$는 finitely $\mu$-measurable이다.
|
||||||
|
[^3]: $A$가 countable union of sets in $\mathfrak{M} _ F(\mu)$이므로 $\mu^\ast$도 각 set의 $\mu^\ast$의 합이 된다.
|
||||||
|
[^4]: 아직 증명이 끝나지 않았습니다. $A _ n$은 $\mathfrak{M}(\mu)$의 원소가 아니라 $\mathfrak{M} _ F(\mu)$의 원소입니다.
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Mathematics
|
- Mathematics
|
||||||
- Measure Theory
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- analysis
|
- analysis
|
||||||
@@ -13,16 +14,16 @@ title: 03. Measure Spaces
|
|||||||
date: 2023-01-24
|
date: 2023-01-24
|
||||||
github_title: 2023-01-24-measure-spaces
|
github_title: 2023-01-24-measure-spaces
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-03.png
|
path: /assets/img/posts/mathematics/measure-theory/mt-03.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
---
|
---
|
||||||
|
|
||||||
## Remarks on Construction of Measure
|
## Remarks on Construction of Measure
|
||||||
|
|
||||||
Construction of measure 증명에서 추가로 참고할 내용입니다.
|
Construction of measure 증명에서 추가로 참고할 내용입니다.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
**명제.** $A$가 열린집합이면 $A \in \mathfrak{M}(\mu)$ 이다. 또한 $A^C \in \mathfrak{M}(\mu)$ 이므로, $F$가 닫힌집합이면 $F \in \mathfrak{M}(\mu)$ 이다.
|
**명제.** $A$가 열린집합이면 $A \in \mathfrak{M}(\mu)$ 이다. 또한 $A^C \in \mathfrak{M}(\mu)$ 이므로, $F$가 닫힌집합이면 $F \in \mathfrak{M}(\mu)$ 이다.
|
||||||
|
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Mathematics
|
- Mathematics
|
||||||
- Measure Theory
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- analysis
|
- analysis
|
||||||
@@ -13,9 +14,9 @@ title: 04. Measurable Functions
|
|||||||
date: 2023-02-06
|
date: 2023-02-06
|
||||||
github_title: 2023-02-06-measurable-functions
|
github_title: 2023-02-06-measurable-functions
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-04.png
|
path: /assets/img/posts/mathematics/measure-theory/mt-04.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
---
|
---
|
||||||
|
|
||||||
Lebesgue integral을 공부하기 전 마지막 준비입니다. Lebesgue integral은 다음과 같이 표기합니다.
|
Lebesgue integral을 공부하기 전 마지막 준비입니다. Lebesgue integral은 다음과 같이 표기합니다.
|
||||||
@@ -160,7 +161,7 @@ $$s(x) = \sum_ {i=1}^{n} c_i \chi_ {E_i}(x).$$
|
|||||||
|
|
||||||
여기서 $E _ i$에 measurable 조건이 추가되면, 정의에 의해 $\chi _ {E _ i}$도 measurable function입니다. 따라서 모든 measurable simple function을 measurable $\chi _ {E _ i}$의 linear combination으로 표현할 수 있습니다.
|
여기서 $E _ i$에 measurable 조건이 추가되면, 정의에 의해 $\chi _ {E _ i}$도 measurable function입니다. 따라서 모든 measurable simple function을 measurable $\chi _ {E _ i}$의 linear combination으로 표현할 수 있습니다.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
아래 정리는 simple function이 Lebesgue integral의 building block이 되는 이유를 잘 드러냅니다. 모든 함수는 simple function으로 근사할 수 있습니다.
|
아래 정리는 simple function이 Lebesgue integral의 building block이 되는 이유를 잘 드러냅니다. 모든 함수는 simple function으로 근사할 수 있습니다.
|
||||||
|
|
||||||
@@ -5,6 +5,7 @@ math: true
|
|||||||
categories:
|
categories:
|
||||||
- Mathematics
|
- Mathematics
|
||||||
- Measure Theory
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
tags:
|
tags:
|
||||||
- math
|
- math
|
||||||
- analysis
|
- analysis
|
||||||
@@ -13,9 +14,9 @@ title: 05. Lebesgue Integration
|
|||||||
date: 2023-02-13
|
date: 2023-02-13
|
||||||
github_title: 2023-02-13-lebesgue-integration
|
github_title: 2023-02-13-lebesgue-integration
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-05.png
|
path: /assets/img/posts/mathematics/measure-theory/mt-05.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
---
|
---
|
||||||
|
|
||||||
## Lebesgue Integration
|
## Lebesgue Integration
|
||||||
@@ -126,7 +127,7 @@ $$\int f \,d{\mu} = \sup\left\lbrace \int h \,d{\mu}: 0\leq h \leq f, h \text{ m
|
|||||||
|
|
||||||
$f$보다 작은 measurable simple function의 적분값 중 상한을 택하겠다는 의미입니다. $f$보다 작은 measurable simple function으로 $f$를 근사한다고도 이해할 수 있습니다. 또한 $f$가 simple function이면 Step 2의 정의와 일치하는 것을 알 수 있습니다.
|
$f$보다 작은 measurable simple function의 적분값 중 상한을 택하겠다는 의미입니다. $f$보다 작은 measurable simple function으로 $f$를 근사한다고도 이해할 수 있습니다. 또한 $f$가 simple function이면 Step 2의 정의와 일치하는 것을 알 수 있습니다.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
$f \geq 0$ 가 measurable이면 증가하는 measurable simple 함수열 $s _ n$이 존재함을 지난 번에 보였습니다. 이 $s _ n$에 대하여 적분값을 계산해보면
|
$f \geq 0$ 가 measurable이면 증가하는 measurable simple 함수열 $s _ n$이 존재함을 지난 번에 보였습니다. 이 $s _ n$에 대하여 적분값을 계산해보면
|
||||||
|
|
||||||
@@ -0,0 +1,206 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: true
|
||||||
|
categories:
|
||||||
|
- Mathematics
|
||||||
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 06. Convergence Theorems
|
||||||
|
date: 2023-03-25
|
||||||
|
github_title: 2023-03-25-convergence-theorems
|
||||||
|
image:
|
||||||
|
path: /assets/img/posts/mathematics/measure-theory/mt-06.png
|
||||||
|
attachment:
|
||||||
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
|
---
|
||||||
|
|
||||||
|
르벡 적분 이론에서 굉장히 자주 사용되는 수렴 정리에 대해 다루겠습니다. 이 정리들을 사용하면 굉장히 유용한 결과를 쉽게 얻을 수 있습니다.
|
||||||
|
|
||||||
|
## Monotone Convergence Theorem
|
||||||
|
|
||||||
|
먼저 단조 수렴 정리(monotone convergence theorem, MCT)입니다. 이 정리에서는 $f _ n \geq 0$ 인 것이 매우 중요합니다.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**정리.** (단조 수렴 정리) $f _ n: X \rightarrow[0, \infty]$ 가 measurable이고 모든 $x \in X$ 에 대하여 $f _ n(x) \leq f _ {n+1}(x)$ 라 하자.
|
||||||
|
|
||||||
|
$$\lim _ {n\rightarrow\infty} f _ n(x) = \sup _ {n} f _ n(x) = f(x)$$
|
||||||
|
|
||||||
|
로 두면,
|
||||||
|
|
||||||
|
$$\int f \,d{\mu} = \lim _ {n\rightarrow\infty} \int f _ n \,d{\mu} = \sup _ {n \in \mathbb{N}} \int f _ n \,d{\mu}$$
|
||||||
|
|
||||||
|
이다.
|
||||||
|
|
||||||
|
**증명.**
|
||||||
|
|
||||||
|
($\geq$) $f _ n(x) \leq f(x)$ 이므로 단조성을 이용하면 모든 $n \in \mathbb{N}$ 에 대하여 $\displaystyle\int f _ n \,d{\mu} \leq \displaystyle\int f \,d{\mu}$ 이다. 따라서 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\sup _ n \int f _ n \,d{\mu} \leq \int f \,d{\mu}.$$
|
||||||
|
|
||||||
|
($\leq$) 실수 $c \in (0, 1)$ 를 잡자. 마지막에 $c \nearrow 1$ 로 둘 것이다. 이제 measurable simple function $s$가 $0 \leq s \leq f$ 라 하자. 그러면 모든 $x \in X$ 에 대하여 $c \cdot s(x) < f(x)$ 일 것이다.
|
||||||
|
|
||||||
|
이제
|
||||||
|
|
||||||
|
$$E _ n = \lbrace x \in X : f _ n(x) \geq cs(x)\rbrace$$
|
||||||
|
|
||||||
|
으로 두면, $f _ n(x) - cs(x)$ 가 measurable function이므로 $E _ n$ 또한 measurable이다. 여기서 $f _ n$이 증가하므로 $E _ n\subseteq E _ {n+1} \subseteq\cdots$ 임을 알 수 있고 $f _ n \rightarrow f$ 이므로 $\bigcup _ {n=1}^\infty E _ n = X$ 이다.
|
||||||
|
|
||||||
|
충분히 큰 $N \in \mathbb{N}$ 에 대하여 $n \geq N$ 일 때, 모든 $x$에 대하여 $f(x) \geq f _ n(x) > cs(x)$ 가 되게 할 수 있다. 그리고 $f _ n \geq f _ n \chi _ {E _ n} \geq cs \chi _ {E _ n}$ 이므로
|
||||||
|
|
||||||
|
$$\tag{\(\star\)} \int f _ n \,d{\mu} \geq \int f _ n \chi _ {E _ n} \,d{\mu} \geq c\int s \chi _ {E _ n} \,d{\mu},$$
|
||||||
|
|
||||||
|
이고 여기서 $s, \chi _ {E _ n}$는 simple function이다. 그러므로 $s = \sum _ {k=0}^m y _ k \chi _ {A _ k}$ 라고 적으면
|
||||||
|
|
||||||
|
$$s\chi _ {E _ n} = \sum _ {k=0}^m y _ k \chi _ {A _ k\cap E _ n} \implies \int s \chi _ {E _ n} \,d{\mu} = \sum _ {k=0}^m y _ k \mu(A _ k\cap E _ n)$$
|
||||||
|
|
||||||
|
이다. $n\rightarrow\infty$ 일 때 $A _ k\cap E _ n \nearrow A _ k$ 이므로, continuity of measure를 사용해 $\mu(A _ k \cap E _ n) \nearrow \mu(A _ k)$ 를 얻고
|
||||||
|
|
||||||
|
$$\lim _ {n\rightarrow\infty} \int s \chi _ {E _ n}\,d{\mu} = \int s \,d{\mu}$$
|
||||||
|
|
||||||
|
임도 알 수 있다. 이제 ($\star$)를 이용하면
|
||||||
|
|
||||||
|
$$\lim _ {n\rightarrow\infty} \int f _ n \,d{\mu} \geq c\int s \,d{\mu}$$
|
||||||
|
|
||||||
|
이므로, $c \nearrow 1$ 로 두고 $0\leq s\leq f$ 에 대하여 $\sup$을 취하면
|
||||||
|
|
||||||
|
$$\lim _ {n\rightarrow\infty} \int f _ n \,d{\mu} \geq \sup _ {0\leq s\leq f} \int s \,d{\mu} = \int f \,d{\mu}$$
|
||||||
|
|
||||||
|
가 되어 원하는 결과를 얻는다.
|
||||||
|
|
||||||
|
**참고.** 만약 부등식 $0 \leq f _ n \leq f _ {n+1}$ 이 정의역 전체가 아닌 정의역의 부분집합 $E$에서만 성립한다고 하면, 다음과 같이 생각할 수 있다.
|
||||||
|
|
||||||
|
$$0 \leq f _ n \chi _ E \leq f _ {n+1} \chi _ E \nearrow f \chi _ E.$$
|
||||||
|
|
||||||
|
그러므로 단조 수렴 정리가 $E$에서도 성립함을 알 수 있다.
|
||||||
|
|
||||||
|
> $E$에서 $0\leq f _ n \leq f _ {n+1} \nearrow f$ 이면 $\displaystyle\lim _ {n\rightarrow\infty} \int _ E f _ n \,d{\mu} = \int _ E f \,d{\mu}$.
|
||||||
|
|
||||||
|
**참고.** 함수열 $f _ n$이 증가하는 경우에만 정리가 성립합니다. 감소하는 경우에는 반례로 함수 $f _ n = \chi _ {[n, \infty)}$ 를 생각할 수 있습니다. 그러면 $n \rightarrow\infty$ 일 때 $\chi _ {[n, \infty)} \searrow 0$ 입니다.
|
||||||
|
|
||||||
|
그러면 Lebesgue measure $m$에 대하여
|
||||||
|
|
||||||
|
$$\infty = \int \chi _ {[n, \infty)} \,d{m} \neq \int 0 \,d{m} = 0$$
|
||||||
|
|
||||||
|
이 되어 단조 수렴 정리가 성립하지 않음을 확인할 수 있습니다.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
지난 번에 $f \geq 0$ 가 measurable이면 증가하는 measurable simple 함수열 $s _ n$이 존재함을 보였고, 이 $s _ n$에 대하여 적분값을 계산하여
|
||||||
|
|
||||||
|
$$\int _ E s _ n \,d{\mu} = \sum _ {i=1}^{n2^n} \frac{i - 1}{2^n}\mu\left( \left\lbrace x \in E : \frac{i-1}{2^n} \leq f(x) \leq \frac{i}{2^n}\right\rbrace \right) + n\mu(\lbrace x \in E : f(x)\geq n\rbrace)$$
|
||||||
|
|
||||||
|
라는 결과까지 얻었습니다. 그런데 여기서
|
||||||
|
|
||||||
|
$$f(x) = \displaystyle\lim _ {n\rightarrow\infty} s _ n(x)$$
|
||||||
|
|
||||||
|
이기 때문에, 단조 수렴 정리에 의해
|
||||||
|
|
||||||
|
$$\int _ E f \,d{\mu} = \lim _ {n\rightarrow\infty} \int _ E s _ n \,d{\mu}$$
|
||||||
|
|
||||||
|
가 성립하여 기대했던 결과를 얻었습니다. 지난 번 설명한 것처럼, 이는 곧 르벡 적분은 치역을 잘게 잘라 넓이를 계산한 것으로 이해할 수 있다는 의미가 됩니다.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
다음은 단조 수렴 정리를 활용하여 유용한 결과를 쉽게 얻을 수 있는 예제입니다.
|
||||||
|
|
||||||
|
**참고.** Measurable function $f, g \geq 0$ 과 $\alpha, \beta \in [0, \infty)$ 에 대하여 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\int _ E \left( \alpha f + \beta g \right) \,d{\mu} = \alpha \int _ E f \,d{\mu} + \beta \int _ E g\,d{\mu}.$$
|
||||||
|
|
||||||
|
**증명.** Measurable function은 measurable simple function으로 근사할 수 있고, $f, g \geq 0$ 이므로 단조증가하도록 잡을 수 있다. 그러므로 measurable simple function $f _ n$, $g _ n$에 대하여 $0 \leq f _ n \leq f _ {n+1} \nearrow f$, $0 \leq g _ n \leq g _ {n+1} \nearrow g$ 으로 잡는다.
|
||||||
|
|
||||||
|
그러면 $\alpha f _ n + \beta g _ n \nearrow \alpha f + \beta g$ 이고 $\alpha f _ n + \beta g _ n$ 은 단조증가하는 measurable simple 함수열이다. 따라서 단조 수렴 정리에 의해
|
||||||
|
|
||||||
|
$$\int _ E \left( \alpha f _ n + \beta g _ n \right) \,d{\mu} = \alpha \int _ E f _ n \,d{\mu} + \beta \int _ E g _ n \,d{\mu} \rightarrow\alpha \int _ E f \,d{\mu} + \beta \int _ E g\,d{\mu}$$
|
||||||
|
|
||||||
|
이다.
|
||||||
|
|
||||||
|
이와 비슷한 방법을 급수에도 적용할 수 있습니다.
|
||||||
|
|
||||||
|
**정리.** Measurable function $f _ n: X \rightarrow[0, \infty]$ 에 대하여 $\sum _ {n=1}^\infty f _ n$는 measurable이고, 단조 수렴 정리에 의해 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\int _ E \sum _ {n=1}^\infty f _ n \,d{\mu} = \sum _ {n=1}^\infty \int _ E f _ n \,d{\mu}.$$
|
||||||
|
|
||||||
|
**증명.** $\sum _ {n=1}^\infty f _ n$는 measurable function의 극한이므로 measurable이다. 무한급수를 부분합의 극한으로 생각하면 $f _ n \geq 0$ 이므로 부분합이 증가함을 알 수 있다. 따라서 단조 수렴 정리를 적용하여 결론을 얻는다.
|
||||||
|
|
||||||
|
## Fatou's Lemma
|
||||||
|
|
||||||
|
단조 수렴 정리와 동치인 수렴 정리를 하나 더 소개합니다. Fatou's lemma로 알려져 있습니다.
|
||||||
|
|
||||||
|
**정리.** (Fatou) $f _ n \geq 0$ 가 measurable이고 $E$가 measurable이라 하자. 다음이 성립한다.
|
||||||
|
|
||||||
|
$$\int _ E \liminf _ {n\rightarrow\infty} f _ n \,d{\mu} \leq \liminf _ {n\rightarrow\infty} \int _ E f _ n \,d{\mu}.$$
|
||||||
|
|
||||||
|
**증명.** $g _ n = \displaystyle\inf _ {k \geq n} f _ k$ 으로 두면 $\displaystyle\lim _ {n \rightarrow\infty} g _ n = \liminf _ {n\rightarrow\infty} f _ n$ 이다. $g _ n$이 증가함은 쉽게 확인할 수 있으며 $g _ n \geq 0$ 이다. $g _ n$의 정의로부터 모든 $k \geq n$ 에 대하여 $g _ n \leq f _ k$ 이므로,
|
||||||
|
|
||||||
|
$$\int _ E g _ n \,d{\mu} \leq \inf _ {k\geq n} \int _ E f _ k \,d{\mu}$$
|
||||||
|
|
||||||
|
이다. 여기서 $n \rightarrow\infty$ 로 두면
|
||||||
|
|
||||||
|
$$\int _ E \liminf _ {n\rightarrow\infty} f _ n \,d{\mu} = \lim _ {n \rightarrow\infty} \int _ E g _ n \,d{\mu} \leq \lim _ {n \rightarrow\infty} \inf _ {k \geq n}\int _ E f _ k \,d{\mu} = \liminf _ {n \rightarrow\infty} \int _ E f _ n \,d{\mu}$$
|
||||||
|
|
||||||
|
이 된다. 여기서 첫 번째 등호는 단조 수렴 정리에 의해 성립한다.
|
||||||
|
|
||||||
|
**참고.** 위 증명에서는 단조 수렴 정리를 활용했습니다. 반대로 이 정리를 가정하면 단조 수렴 정리를 증명할 수 있기도 합니다. 따라서 이 둘은 동치입니다. 증명은 생략합니다.
|
||||||
|
|
||||||
|
**참고.** 왠지 위와 비슷한 결론이 $\limsup$에 대해서도 성립해야 할 것 같습니다. 구체적으로,
|
||||||
|
|
||||||
|
$$\int _ E \limsup _ {n \rightarrow\infty} f _ n \,d{\mu} \geq \limsup _ {n \rightarrow\infty} \int _ E f _ n \,d{\mu}$$
|
||||||
|
|
||||||
|
일 것 같습니다. 안타깝게도 이는 성립하지 않습니다. 반례로 앞서 소개한 $\chi _ {[n, \infty)}$를 한 번 더 가져올 수 있습니다. 좌변을 계산해 보면 0이지만, 우변을 계산해 보면 $\infty$입니다. 나중에 소개하겠지만, $\lvert f _ n \rvert \leq g$ 를 만족하는 함수 $g \in \mathcal{L}^{1}$ 가 존재해야 위 부등식이 성립합니다.
|
||||||
|
|
||||||
|
## Properties of the Lebesgue Integral
|
||||||
|
|
||||||
|
르벡 적분의 몇 가지 성질을 소개하고 마칩니다.
|
||||||
|
|
||||||
|
1. $f$가 measurable이고 $E$에서 bounded이며 $\mu(E) < \infty$ 일 때, 적당한 실수 $M > 0$ 에 대하여 $\lvert f \rvert \leq M$ 이므로
|
||||||
|
|
||||||
|
$$\int _ E \lvert f \rvert \,d{\mu} \leq \int _ E M \,d{\mu} = M\mu(E) < \infty$$
|
||||||
|
|
||||||
|
임을 알 수 있습니다. 그러므로 $f \in \mathcal{L}^{1}(E, \mu)$ 입니다. $E$의 measure가 finite라는 가정 하에, bounded function은 모두 르벡 적분 가능합니다.
|
||||||
|
|
||||||
|
2. $f, g \in \mathcal{L}^{1}(E, \mu)$ 이고 $E$에서 $f \leq g$ 일 때, 단조성이 성립함을 보이려고 합니다. 앞에서는 $0 \leq f \leq g$ 인 경우에만 단조성을 증명했었는데, 이를 확장하여 함수가 음의 값을 가지는 경우에도 증명하고 싶습니다. 그러므로 양수인 부분과 음수인 부분을 나누어 고려하여 다음과 같이 적을 수 있습니다.
|
||||||
|
|
||||||
|
$$\chi _ E (x) f^+(x) \leq \chi _ E(x) g^+(x), \qquad \chi _ E(x) g^-(x) \leq \chi _ E (x) f^-(x)$$
|
||||||
|
|
||||||
|
이로부터
|
||||||
|
|
||||||
|
$$\int _ E f^+ \,d{\mu} \leq \int _ E g^+ \,d{\mu} < \infty, \qquad \int _ E g^- \,d{\mu} \leq \int _ E f^- \,d{\mu} < \infty$$
|
||||||
|
|
||||||
|
를 얻습니다. 따라서
|
||||||
|
|
||||||
|
$$\int _ E f\,d{\mu} \leq \int _ E g \,d{\mu}$$
|
||||||
|
|
||||||
|
가 성립하고, 함수가 음의 값을 가지는 경우에도 단조성이 성립함을 알 수 있습니다.
|
||||||
|
|
||||||
|
3. $f \in \mathcal{L}^{1}(E, \mu)$, $c \in \mathbb{R}$ 라 하면 $cf \in \mathcal{L}^{1}(E, \mu)$ 입니다. 왜냐하면
|
||||||
|
|
||||||
|
$$\int _ E \lvert c \rvert\lvert f \rvert \,d{\mu} = \lvert c \rvert \int _ E \lvert f \rvert\,d{\mu} < \infty$$
|
||||||
|
|
||||||
|
이기 때문입니다. 적분이 가능하니 실제 적분값을 계산할 때 선형성이 성립했으면 좋겠습니다. 앞에서는 음이 아닌 실수에 대해서만 증명했었는데, 이도 마찬가지로 확장하려 합니다. $c < 0$ 인 경우만 보이면 됩니다. 이 때, $(cf)^+ = -cf^-$, $(cf)^- = -cf^+$ 이므로, 다음이 성립합니다.
|
||||||
|
|
||||||
|
$$\int _ E cf \,d{\mu} = \int _ E (cf)^+ - \int _ E (cf)^- \,d{\mu} = -c \int _ E f^- \,d{\mu} - (-c) \int _ E f^+ \,d{\mu} = c\int _ E f\,d{\mu}.$$
|
||||||
|
|
||||||
|
4. Measurable function $f$에 대하여 $E$에서 $a \leq f(x) \leq b$ 이고 $\mu(E) < \infty$ 일 때 다음이 성립합니다.
|
||||||
|
|
||||||
|
$$\int _ E a \chi _ E \,d{\mu} \leq \int _ E f\chi _ E \,d{\mu} \leq \int _ E b \chi _ E \,d{\mu} \implies a \mu(E) \leq \int _ E f \,d{\mu} \leq b \mu(E).$$
|
||||||
|
|
||||||
|
$f$가 르벡 적분 가능하다는 사실은 $f$가 bounded라는 사실을 이용합니다.
|
||||||
|
|
||||||
|
5. $f \in \mathcal{L}^{1}(E, \mu)$ 와 measurable set $A \subseteq E$ 가 주어지는 경우, $f$는 $E$의 부분집합인 $A$ 위에서도 르벡 적분 가능합니다. 이는 다음 부등식에서 확인할 수 있습니다.
|
||||||
|
|
||||||
|
$$\int _ A \lvert f \rvert \,d{\mu} \leq \int _ E \lvert f \rvert\,d{\mu} < \infty.$$
|
||||||
|
|
||||||
|
6. 만약 measure가 0인 집합에서 적분을 하면 어떻게 될까요? $\mu(E) = 0$ 라 하고, measurable function $f$를 적분해 보겠습니다. 여기서 $\min\lbrace \lvert f \rvert, n\rbrace\chi _ E$ 도 measurable이며 $n \rightarrow\infty$ 일 때 $\min\lbrace \lvert f \rvert, n\rbrace\chi _ E \nearrow \lvert f \rvert\chi _ E$ 임을 이용합니다. 마지막으로 단조 수렴 정리를 적용하면
|
||||||
|
|
||||||
|
$$\begin{aligned} \int _ E \lvert f \rvert \,d{\mu} &= \lim _ {n \rightarrow\infty} \int _ E \min\lbrace \lvert f \rvert, n\rbrace \,d{\mu} \\ &\leq \lim _ {n \rightarrow\infty} \int _ E n \,d{\mu} = \lim _ {n \rightarrow\infty} n\mu(E) = 0 \end{aligned}$$
|
||||||
|
|
||||||
|
임을 얻습니다. 따라서 $f \in \mathcal{L}^{1}(E, \mu)$ 이고, $\displaystyle\int _ E f \,d{\mu} = 0$ 가 되어 적분값이 0임을 알 수 있습니다. 즉, measure가 0인 집합 위에서 적분하면 그 결과는 0이 됩니다.[^1]
|
||||||
|
|
||||||
|
[^1]: 편의상 $0\cdot\infty = 0$ 으로 정의했기 때문에 $f \equiv \infty$ 인 경우에도 성립합니다.
|
||||||
@@ -2,15 +2,21 @@
|
|||||||
share: true
|
share: true
|
||||||
toc: true
|
toc: true
|
||||||
math: true
|
math: true
|
||||||
categories: [Mathematics, Measure Theory]
|
categories:
|
||||||
tags: [math, analysis, measure-theory]
|
- Mathematics
|
||||||
title: "07. Dominated Convergence Theorem"
|
- Measure Theory
|
||||||
date: "2023-04-07"
|
path: _posts/mathematics/measure-theory
|
||||||
github_title: "2023-04-07-dominated-convergence-theorem"
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 07. Dominated Convergence Theorem
|
||||||
|
date: 2023-04-07
|
||||||
|
github_title: 2023-04-07-dominated-convergence-theorem
|
||||||
image:
|
image:
|
||||||
path: /assets/img/posts/Mathematics/Measure Theory/mt-07.png
|
path: /assets/img/posts/mathematics/measure-theory/mt-07.png
|
||||||
attachment:
|
attachment:
|
||||||
folder: assets/img/posts/Mathematics/Measure Theory
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
---
|
---
|
||||||
|
|
||||||
## Almost Everywhere
|
## Almost Everywhere
|
||||||
@@ -149,7 +155,7 @@ $$[f] = \lbrace g \in \mathcal{L}^{1}(E, \mu) : f \sim g\rbrace.$$
|
|||||||
|
|
||||||
마지막 수렴정리를 소개하고 수렴정리와 관련된 내용을 마칩니다. 지배 수렴 정리(dominated convergence theorem, DCT)로 불립니다.
|
마지막 수렴정리를 소개하고 수렴정리와 관련된 내용을 마칩니다. 지배 수렴 정리(dominated convergence theorem, DCT)로 불립니다.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
**정리.** (지배 수렴 정리) Measurable set $E$와 measurable function $f$에 대하여, $\lbrace f _ n\rbrace$이 measurable function의 함수열이라 하자. $E$의 거의 모든 점 위에서 극한 $f(x) = \displaystyle\lim _ {n \rightarrow\infty} f _ n(x)$ 가 $\overline{\mathbb{R}}$에 존재하고 (점별 수렴) $\lvert f _ n \rvert \leq g \quad \mu$-a.e. on $E$ ($\forall n \geq 1$) 를 만족하는 $g \in \mathcal{L}^{1}(E, \mu)$ 가 존재하면,
|
**정리.** (지배 수렴 정리) Measurable set $E$와 measurable function $f$에 대하여, $\lbrace f _ n\rbrace$이 measurable function의 함수열이라 하자. $E$의 거의 모든 점 위에서 극한 $f(x) = \displaystyle\lim _ {n \rightarrow\infty} f _ n(x)$ 가 $\overline{\mathbb{R}}$에 존재하고 (점별 수렴) $\lvert f _ n \rvert \leq g \quad \mu$-a.e. on $E$ ($\forall n \geq 1$) 를 만족하는 $g \in \mathcal{L}^{1}(E, \mu)$ 가 존재하면,
|
||||||
|
|
||||||
@@ -0,0 +1,136 @@
|
|||||||
|
---
|
||||||
|
share: true
|
||||||
|
toc: true
|
||||||
|
math: true
|
||||||
|
categories:
|
||||||
|
- Mathematics
|
||||||
|
- Measure Theory
|
||||||
|
path: _posts/mathematics/measure-theory
|
||||||
|
tags:
|
||||||
|
- math
|
||||||
|
- analysis
|
||||||
|
- measure-theory
|
||||||
|
title: 08. Comparison with the Riemann Integral
|
||||||
|
date: 2023-06-20
|
||||||
|
github_title: 2023-06-20-comparison-with-riemann-integral
|
||||||
|
image:
|
||||||
|
path: /assets/img/posts/mathematics/measure-theory/mt-08.png
|
||||||
|
attachment:
|
||||||
|
folder: assets/img/posts/mathematics/measure-theory
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Comparison with the Riemann Integral
|
||||||
|
|
||||||
|
먼저 혼동을 막기 위해 Lebesgue measure $m$에 대하여 르벡 적분을
|
||||||
|
|
||||||
|
$$\int _ {[a, b]} f \,d{m} = \int _ {[a, b]} f \,d{x} = \int _ a^b f \,d{x}$$
|
||||||
|
|
||||||
|
와 같이 표기하고, 리만 적분은
|
||||||
|
|
||||||
|
$$\mathcal{R}\int _ a^b f\,d{x}$$
|
||||||
|
|
||||||
|
로 표기하겠습니다.
|
||||||
|
|
||||||
|
**정리.** $a, b \in \mathbb{R}$ 에 대하여 $a < b$ 이고 함수 $f$가 유계라고 하자.
|
||||||
|
|
||||||
|
1. $f \in \mathcal{R}[a, b]$ 이면 $f \in \mathcal{L}^{1}[a, b]$ 이고 $\displaystyle\int _ a^b f\,d{x} = \mathcal{R}\int _ a^b f \,d{x}$ 이다.
|
||||||
|
|
||||||
|
2. $f \in \mathcal{R}[a, b]$ $\iff$ $f$가 연속 $m$-a.e. on $[a, b]$.
|
||||||
|
|
||||||
|
쉽게 풀어서 적어보면, (1)은 $f$가 $[a, b]$에서 리만 적분 가능하면 르벡 적분 또한 가능하며, 적분 값이 같다는 의미입니다. 즉 르벡 적분이 리만 적분보다 더 강력하다는 것을 알 수 있습니다.
|
||||||
|
|
||||||
|
또한 (2)는 리만 적분 가능성에 대한 동치 조건을 알려줍니다. Almost everywhere라는 조건이 붙었기 때문에, $\mathcal{L}^1$의 equivalence class를 고려하면 사실상 연속함수에 대해서만 리만 적분이 가능하다는 뜻이 됩니다.
|
||||||
|
|
||||||
|
**증명.** $k \in \mathbb{N}$ 에 대하여 구간 $[a, b]$의 분할 $P _ k = \lbrace a = x _ 0^k < x _ 1^k < \cdots < x _ {n _ k}^k = b\rbrace$ 를 잡는다. 단 $P _ k \subseteq P _ {k+1}$ (refinement) 이고 $\lvert x _ {i}^k - x _ {i-1}^k \rvert < \frac{1}{k}$ 이 되도록 한다.
|
||||||
|
|
||||||
|
그러면 리만 적분의 정의로부터
|
||||||
|
|
||||||
|
$$\lim _ {k \rightarrow\infty} L(P _ k, f) = \mathcal{R}\underline{\int _ {a}^{b}} f\,d{x}, \quad \lim _ {k \rightarrow\infty} U(P _ k, f) = \mathcal{R} \overline{\int _ {a}^{b}} f \,d{x}$$
|
||||||
|
|
||||||
|
임을 알 수 있다.
|
||||||
|
|
||||||
|
이제 measurable simple function $U _ k, L _ k$를 다음과 같이 잡는다.
|
||||||
|
|
||||||
|
$$U _ k = \sum _ {i=1}^{n _ k} \sup _ {x _ {i-1}^k \leq y \leq x _ {i}^k} f(y) \chi _ {(x _ {i-1}^k, x _ i^k]}, \quad L _ k = \sum _ {i=1}^{n _ k} \inf _ {x _ {i-1}^k \leq y \leq x _ {i}^k} f(y) \chi _ {(x _ {i-1}^k, x _ i^k]}.$$
|
||||||
|
|
||||||
|
그러면 구간 $[a, b]$ 위에서 $L _ k \leq f \leq U _ k$인 것은 당연하고, 르벡 적분이 가능하므로
|
||||||
|
|
||||||
|
$$\int _ a^b L _ k \,d{x} = L(P _ k, f), \quad \int _ a^b U _ k \,d{x} = U(P _ k, f)$$
|
||||||
|
|
||||||
|
이 됨을 알 수 있다. 여기서 $P _ k \subseteq P _ {k + 1}$ 이 되도록 잡았기 때문에, $L _ k$는 증가하는 수열, $U _ k$는 감소하는 수열이다.
|
||||||
|
|
||||||
|
그러므로
|
||||||
|
|
||||||
|
$$L(x) = \lim _ {k \rightarrow\infty} L _ k(x), \quad U(x) = \lim _ {k \rightarrow\infty} U _ k(x)$$
|
||||||
|
|
||||||
|
로 정의했을 때, 극한이 존재함을 알 수 있다. 여기서 $f, L _ k, U _ k$가 모두 유계인 함수이므로 지배 수렴 정리에 의해
|
||||||
|
|
||||||
|
$$\int _ a^b L \,d{x} = \lim _ {k \rightarrow\infty} \int _ a^b L _ k \,d{x} = \lim _ {k \rightarrow\infty} L(P _ k, f) = \mathcal{R}\underline{\int _ {a}^{b}} f\,d{x} < \infty,$$
|
||||||
|
|
||||||
|
$$\int _ a^b U\,d{x} = \lim _ {k \rightarrow\infty} \int _ a^b U _ k \,d{x} = \lim _ {k \rightarrow\infty} U(P _ k, f) = \mathcal{R} \overline{\int _ {a}^{b}} f \,d{x} < \infty$$
|
||||||
|
|
||||||
|
이므로 $L, U \in \mathcal{L}^{1}[a, b]$ 이다.
|
||||||
|
|
||||||
|
위 사실을 종합하면 $f \in \mathcal{R}[a, b]$ 일 때,
|
||||||
|
|
||||||
|
$$\mathcal{R}\underline{\int _ {a}^{b}} f\,d{x} = \mathcal{R}\overline{\int _ {a}^{b}} f\,d{x}$$
|
||||||
|
|
||||||
|
이므로
|
||||||
|
|
||||||
|
$$\int _ a^b (U - L)\,d{x} = 0$$
|
||||||
|
|
||||||
|
가 되어 $U = L$ $m$-a.e. on $[a, b]$라는 사실을 알 수 있다. 역으로 이를 거꾸로 읽어보면 $U = L$ $m$-a.e. on $[a, b]$일 때 $f \in \mathcal{R}[a, b]$ 가 되는 것 또한 알 수 있다.
|
||||||
|
|
||||||
|
(1) 위 논의에 의해 $f \in \mathcal{R}[a, b]$ 이면 $f = U = L$ a.e. on $[a, b]$ 이다. 따라서 $f$는 measurable.
|
||||||
|
|
||||||
|
$$\int _ a^b f \,d{x} = \mathcal{R}\int _ a^b f\,d{x} < \infty \implies f \in \mathcal{L}^{1}[a, b].$$
|
||||||
|
|
||||||
|
(2) 만약 $x \notin \bigcup _ {k=1}^{\infty} P _ k$ 라고 가정하면, 임의의 $\epsilon > 0$ 에 대해 충분히 큰 $n \in \mathbb{N}$ 을 잡았을 때 적당한 $j _ 0 \in \mathbb{N}$ 이 존재하여 $x \in (t _ {j _ 0-1}^n, t _ {j _ 0}^n)$ 이면서
|
||||||
|
|
||||||
|
$$\lvert L _ n(x) - L(x) \rvert + \lvert U _ n(x) - U(x) \rvert < \epsilon$$
|
||||||
|
|
||||||
|
이 되도록 할 수 있다. 그러면 $y \in (t _ {j _ 0-1}^n, t _ {j _ 0}^n)$ 일 때
|
||||||
|
|
||||||
|
$$\begin{aligned} \lvert f(x) - f(y) \rvert & \leq M _ {j _ 0}^n - m _ {j _ 0}^n = M _ {j _ 0}^n - U(x) + U(x) - L(x) + L(x) - m _ {j _ 0}^n \\ & \leq U(x) - L(x) + \epsilon \end{aligned}$$
|
||||||
|
|
||||||
|
가 됨을 알 수 있다.
|
||||||
|
|
||||||
|
위 부등식에 의해 $y \in \lbrace x : U(x) = L(x)\rbrace \setminus\bigcup _ {k=1}^{\infty} P _ k$ 이면 $f$가 $y$에서 연속임을 알 수 있게 된다.
|
||||||
|
|
||||||
|
따라서, $f$가 연속인 점들의 집합을 $C _ f$라 하면
|
||||||
|
|
||||||
|
$$\lbrace x : U(x) = L(x)\rbrace \setminus\bigcup _ {k=1}^{\infty} P _ k \subseteq C _ f \subseteq\lbrace x : U(x) = L(x)\rbrace$$
|
||||||
|
|
||||||
|
이 된다. 한편 $\bigcup _ {k=1}^{\infty} P _ k$는 measure가 0 이므로, $U = L$ $m$-a.e. 인 것과 $f$가 연속 $m$-a.e. 인 것은 동치이다. 위 논의의 결과를 이용하면 $f \in \mathcal{R}[a, b]$ 인 것과 $f$가 연속 $m$-a.e. 인 것은 동치이다.
|
||||||
|
|
||||||
|
아래는 증명의 부산물입니다.
|
||||||
|
|
||||||
|
**참고.**
|
||||||
|
|
||||||
|
1. $x \notin \bigcup _ {k=1}^\infty P _ k$ 이면 $f$가 $x$에서 연속 $\iff f(x) = U(x) = L(x)$ 이다.
|
||||||
|
|
||||||
|
2. $L(x) \leq f(x) \leq U(x)$ 이고 measurable function의 극한인 $L(x), U(x)$ 또한 measurable이다.
|
||||||
|
|
||||||
|
3. $f$가 유계라는 조건이 있기 때문에 $f \geq 0$ 인 경우만 생각해도 충분하다. $\lvert f \rvert \leq M$ 라고 하면 $f$ 대신 $f + M$ 을 생각하면 되기 때문이다.
|
||||||
|
|
||||||
|
이제 리만 적분의 유용한 성질들을 가지고 와서 사용할 수 있습니다.
|
||||||
|
|
||||||
|
1. $f \geq 0$ 이고 measurable일 때, $f _ n = f\chi _ {[0, n]}$으로 정의한다. 단조 수렴 정리에 의해
|
||||||
|
|
||||||
|
$$\int _ 0^\infty f \,d{x} = \lim _ {n \rightarrow\infty} \int _ 0^\infty f _ n \,d{x} = \lim _ {n \rightarrow\infty} \int _ 0^n f \,d{x}$$
|
||||||
|
|
||||||
|
이다. 마지막 적분을 리만 적분으로 계산할 수 있다.
|
||||||
|
|
||||||
|
2. 닫힌 유계 구간 $I \subseteq(0, \infty)$ 에 대하여 $f \in \mathcal{R}(I)$ 라 하면 $f \in \mathcal{L}^{1}(I)$ 이다. $f _ n = f\chi _ {[0, n]}$ 으로 잡으면 $\lvert f _ n \rvert \leq f$ 이므로 지배 수렴 정리를 적용하여
|
||||||
|
|
||||||
|
$$\int _ 0^\infty f \,d{x} = \lim _ {n \rightarrow\infty} \int _ 0^\infty f _ n \,d{x} = \lim _ {n \rightarrow\infty} \int _ 0^n f \,d{x} = \lim _ {n \rightarrow\infty} \mathcal{R} \int _ 0^n f \,d{x}$$
|
||||||
|
|
||||||
|
임을 알 수 있다.
|
||||||
|
|
||||||
|
마찬가지로 $f _ n = f\chi _ {(1/n, 1)}$ 으로 잡은 경우에도 지배 수렴 정리에 의해
|
||||||
|
|
||||||
|
$$\int _ 0^1 f\,d{x} = \lim _ {n \rightarrow\infty} \int _ {0}^1 f _ n \,d{x} = \lim _ {n \rightarrow\infty}\int _ {1/n}^1 f \,d{x} = \lim _ {n \rightarrow\infty} \mathcal{R}\int _ {1/n}^1 f \,d{x}$$
|
||||||
|
|
||||||
|
이 된다.
|
||||||
110
_tabs/about.md
@@ -1,8 +1,112 @@
|
|||||||
---
|
---
|
||||||
# the default layout is 'page'
|
# the default layout is 'page'
|
||||||
icon: fas fa-info-circle
|
icon: fas fa-info-circle
|
||||||
order: 4
|
order: 0
|
||||||
---
|
---
|
||||||
|
|
||||||
> Add Markdown syntax content to file `_tabs/about.md`{: .filepath } and it will show up on this page.
|
# Sungchan Yi
|
||||||
{: .prompt-tip }
|
|
||||||
|
- Last updated: 2025-11-20
|
||||||
|
- Email: [calofmijuck at snu dot ac dot kr](mailto:calofmijuck@snu.ac.kr)
|
||||||
|
|
||||||
|
**Research Interests**: computer architecture, hardware-software co-design, cryptography, formal verification
|
||||||
|
|
||||||
|
## Education
|
||||||
|
|
||||||
|
**Seoul National University** (Sept. 2024 ~ Present)
|
||||||
|
|
||||||
|
- M.S. Candidate in Computer Science and Engineering at [Architecture and Code Optimization Lab](https://arc.snu.ac.kr)
|
||||||
|
- **Advisor**: Professor Jae W. Lee
|
||||||
|
- GPA: 4.18/4.3
|
||||||
|
|
||||||
|
**Seoul National University** (Mar. 2017 ~ Feb. 2024)
|
||||||
|
|
||||||
|
- B.S. in Computer Science and Engineering, Minor in Mathematical Sciences
|
||||||
|
- GPA: 3.96/4.3 (Summa Cum Laude)
|
||||||
|
|
||||||
|
## Research Experience
|
||||||
|
|
||||||
|
[**Architecture and Code Optimization Lab**](https://arc.snu.ac.kr), *M.S. Candidate* (Mar. 2024 ~ Present)
|
||||||
|
|
||||||
|
- Leading **Software Defined Manycores** project
|
||||||
|
|
||||||
|
[**Cryptography & Privacy Lab**](https://crypto.snu.ac.kr), *Undergraduate Research Assistant* (Jan. 2024 ~ Feb. 2024)
|
||||||
|
|
||||||
|
- Implemented generalized BFV scheme with bootstrapping based on CKKS bootstrapping techniques
|
||||||
|
- Analyzed automorphism group of the plaintext space and determined their effects on ciphertext
|
||||||
|
|
||||||
|
[**Software Foundations Lab**](https://sf.snu.ac.kr), *Undergraduate Research Assistant* (Jul. 2023 ~ Oct. 2023)
|
||||||
|
|
||||||
|
- Implemented stack variable merging optimization that reduces memory allocation calls and tried to prove its correctness with Rocq theorem prover
|
||||||
|
|
||||||
|
[**Architecture and Code Optimization Lab**](https://arc.snu.ac.kr), *Undergraduate Research Assistant* (Jan. 2023 ~ Mar. 2023)
|
||||||
|
|
||||||
|
- Implemented a parametrized experiment framework to automate training and evaluation of various CNN models with different activation functions and their knowledge distillation based ReLUifications
|
||||||
|
- Quantified benefits of ReLUification on sparsity-aware NPU for Samsung mobile SoC in terms of memory footprint and computation reduction
|
||||||
|
|
||||||
|
## Work Experience
|
||||||
|
|
||||||
|
[**Scatterlab**](https://scatterlab.co.kr), *Software Reliability / Security Engineer* (Nov. 2020 ~ Sept. 2022)
|
||||||
|
|
||||||
|
- Spring Boot (Java) Backend, Docker/Kubernetes, AWS Cloud Security and Operations
|
||||||
|
- Led cloud security project, co-worked with AWS to completely rebuild and secure the cloud infrastructure
|
||||||
|
- Led software reliability team, cut server operation costs with spot instances and container orchestration
|
||||||
|
|
||||||
|
[**Logpresso**](https://logpresso.com/en), *Big Data Platform Engineer* (Jul. 2019 ~ Oct. 2020)
|
||||||
|
|
||||||
|
- Implemented loggers, parsers, and query commands that collect and analyze data from various sources, applied software-level optimizations to improve performance
|
||||||
|
- Optimized distributed security operation system from pull to push architecture to reduce latency
|
||||||
|
|
||||||
|
## Publications
|
||||||
|
|
||||||
|
- **Sungchan Yi**, Keun Soo Lim, Hoyeon Jo, Sungjun Jung, Minwoo Kwak, Dongoh Kim, Luigi Cussigh, Seong Hoon Seo, Jinkyu Jeong, Jae W. Lee, "Software-Defined Manycores via Hardware-Managed Preemptive Coroutine Scheduling", _International Symposium on Computer Architecture (ISCA)_, 2026. (Submitted)
|
||||||
|
- **[ACCV'24]** Soosung Kim, Yeonhong Park, Hyunseung Lee, **Sungchan Yi**, and Jae W. Lee, "ReLUifying Smooth Functions: Low-Cost Knowledge Distillation to Obtain High-Performance ReLU Networks", _Asian Conference on Computer Vision (ACCV)_, Hanoi, Vietnam, December 2024. ([PDF](https://arc.snu.ac.kr/pubs/ACCV24_ReLU.pdf))
|
||||||
|
- **Sungchan Yi**, "Secure IAM on AWS with Multi-Account Strategy", _Undergraduate Thesis_, December 2023. **Outstanding Undergraduate Thesis Award.** ([PDF](https://arxiv.org/pdf/2501.02203))
|
||||||
|
|
||||||
|
## Honors & Awards
|
||||||
|
|
||||||
|
**Outstanding Undergraduate Thesis Award**
|
||||||
|
|
||||||
|
- Title: Secure IAM on AWS using Multi-Account Strategy
|
||||||
|
|
||||||
|
**Top Prize in Hacking and Defense Contest 2021**
|
||||||
|
|
||||||
|
- Awarded by Korea Internet & Security Agency (KISA)
|
||||||
|
- Topic: Design and Operation of Secure Cloud Architectures
|
||||||
|
|
||||||
|
**Kwanjeong Educational Foundation Scholarship**
|
||||||
|
|
||||||
|
- Full tuition and fees for 2 years of undergraduate studies
|
||||||
|
|
||||||
|
## Extracurricular Activities
|
||||||
|
|
||||||
|
**Web Administrator of Architecture and Code Optimization Lab**
|
||||||
|
|
||||||
|
- Responsible for maintaining the web infrastructure: website, cloud, accounts, wiki, etc.
|
||||||
|
- Installation of convenient tools such as shared password manager and schedule notification system
|
||||||
|
|
||||||
|
**Seoul National University College of Engineering Honor Society** (Mar. 2022 ~ Aug. 2023)
|
||||||
|
|
||||||
|
- SNU Tomorrow’s Edge Membership (STEM)
|
||||||
|
- **Web Administrator**: reduced cloud infrastructure costs by 50% and installed shared storage
|
||||||
|
|
||||||
|
**Guardian**, Seoul National University Security Club (2018 ~ Present)
|
||||||
|
|
||||||
|
- Former president of the club in 2019
|
||||||
|
- Taught basic Linux, x86 assembly, and C programming to new members
|
||||||
|
- Created 30 linux/x86 assembly wargame challenges for members to practice
|
||||||
|
|
||||||
|
## Technical Skills & Interests
|
||||||
|
|
||||||
|
- **Programming Languages**: C/C++, Java, Python, Golang, Coq
|
||||||
|
- **Architectural Simulators**: gem5
|
||||||
|
- **DevOps**: Docker, Kubernetes, AWS
|
||||||
|
- System/cloud security, cryptography
|
||||||
|
- Compilers and formal verification
|
||||||
|
- Mathematics in general, especially algebra and analysis
|
||||||
|
|
||||||
|
## Language Proficiency
|
||||||
|
|
||||||
|
Fluent in **English** and native in **Korean**
|
||||||
|
|
||||||
|
- **IBT TOEFL**: 113 (Reading: 30, Listening: 30, Speaking: 26, Writing: 27)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
layout: archives
|
layout: archives
|
||||||
icon: fas fa-archive
|
icon: fas fa-archive
|
||||||
order: 3
|
order: 4
|
||||||
---
|
---
|
||||||
|
|||||||
13
_tabs/blog.md
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
---
|
||||||
|
title: Blog
|
||||||
|
layout: home
|
||||||
|
icon: fas fa-pencil
|
||||||
|
order: 1
|
||||||
|
# pagination:
|
||||||
|
# enabled: true
|
||||||
|
# per_page: 10
|
||||||
|
# collection: posts
|
||||||
|
# permalink: '/page/:num/'
|
||||||
|
---
|
||||||
|
|
||||||
|
This page serves as the site "Home" (posts listing). It is now a tab in the sidebar.
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
layout: categories
|
layout: categories
|
||||||
icon: fas fa-stream
|
icon: fas fa-stream
|
||||||
order: 1
|
order: 2
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
layout: tags
|
layout: tags
|
||||||
icon: fas fa-tags
|
icon: fas fa-tags
|
||||||
order: 2
|
order: 3
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
---
|
---
|
||||||
---
|
---
|
||||||
|
|
||||||
@import 'main
|
@use 'main
|
||||||
{%- if jekyll.environment == 'production' -%}
|
{%- if jekyll.environment == 'production' -%}
|
||||||
.bundle
|
.bundle
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
@@ -53,3 +53,12 @@ div.language-plaintext.highlighter-rouge {
|
|||||||
div.footnotes {
|
div.footnotes {
|
||||||
font-size: 90%;
|
font-size: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nav#breadcrumb {
|
||||||
|
font-family: "Palatino Linotype", Palatino, Pretendard;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* for post title */
|
||||||
|
h1 {
|
||||||
|
font-family: "Palatino Linotype", Palatino, Pretendard;
|
||||||
|
}
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 187 KiB After Width: | Height: | Size: 848 KiB |
|
Before Width: | Height: | Size: 288 KiB After Width: | Height: | Size: 288 KiB |
BIN
assets/img/posts/development/web/broken-math-equations.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |
13
index.html
@@ -1,4 +1,13 @@
|
|||||||
---
|
---
|
||||||
layout: home
|
layout: page
|
||||||
# Index page
|
title: About
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{%- assign about_tab = site.tabs | where: "url", "/about/" | first -%}
|
||||||
|
|
||||||
|
{%- if about_tab -%}
|
||||||
|
{{ about_tab.content }}
|
||||||
|
{%- else -%}
|
||||||
|
<!-- Fallback: no about tab found -->
|
||||||
|
<h1>About</h1>
|
||||||
|
{%- endif -%}
|
||||||
|
|||||||