---
title: 正の実数の与えられた正整数番目の小数点数を近似的に求める方法について━小数点数の一般化を通して━
tags:  #理学部創立30周年記念奨学金 #理学部創立30周年記念優秀論文賞 #数学 #小数点  
author: [さとしん](https://convert.docswell.com/user/astonish)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/9J29MKN1ER.jpg?width=480
description: 無限小数のうち無理数は、循環小数ではないため、ある正の整数 n が与えられたとき、その無理数の小数第 $n$ 位を言い当てるには、マグレを除けば覚えていない限り不可能であると思われる。もし、小数第 $n$ 位を言い当てる方法があれば、ある意味で、その数を知ったも同然と言って差し支えないだろう。そこで、本論文では、まず小数第 $n$ 位という概念を一般化し、実数の（一般化された）小数第 $n$ 位を求める公式を導出したうえで、その公式を用いて任意の実数の小数第 $n$ 位を求める多項式時間で動かすことが可能な SageMath 言語のプログラムを一つ提示し、そのプログラムが実際に小数第 $n$ 位、或いはそれに近い実数を導くかどうか、またそのプログラムの問題点及び今後の展望について論じる。
published: December 06, 22
canonical: https://convert.docswell.com/s/astonish/KN9ELP-rkmath-presentaion
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/9J29MKN1ER.jpg)

正の実数の与えられた正整数番
目の小数点数を近似的に求める
方法について
―小数点数の一般化を通して―
19ca006b 理学部数学科４年 佐藤新


# Page. 2

![Page Image](https://bcdn.docswell.com/page/DEY4XNP4JM.jpg)

本論文の主旨・目標
• 例えば円周率𝜋などは、すべての小数点の桁の数が分かって
いるわけではない。
• 無理数の小数第𝑛位を求める方法があれば、実質その実数を
知っ たも同然である。
•
そこで、小数第𝑛位という概念を一般化して、任意の正整数𝑛
について少ない誤差で求める方法を一つ提案し、時間や誤差が
少ないといえる程度の精度を有しているかについて論ず。


# Page. 3

![Page Image](https://bcdn.docswell.com/page/VJNY1X5678.jpg)

無理数の小数第𝒏位を求める方法があると何がお得？（例： 円周率𝝅）
現在までの方法（一例）：
円の円周と円に内接する多角形の周の長さ、
外接する多角形の周の長さを比較する
ピンポイントで𝑛位だけ知りたくても、
それまでの全ての桁数も求めないといけない
今回発見した方法：
小数第𝑛位の近似値を少ない誤差以下で求め
ることが可能
ピンポイントで𝒏位だけ知ることが可能にな
る


# Page. 4

![Page Image](https://bcdn.docswell.com/page/YE9P58YRJ3.jpg)

小数点数の一般化
関数𝑑𝑛 𝑥 を 𝑑𝑛 𝑥 =「𝒙の小数第𝒏位」 で定める。
このとき、関数𝑑𝑛 𝑥 は、𝑑𝑛 𝑥 +
1
10𝑛−1
= 𝑑𝑛 𝑥 を満たす。
周期
1
10𝑛−1
※例
𝑛 = 2のとき
𝑑2 0 = 0,
𝑑2 0.01 = 1,
𝑑2 0.02 = 2,
…,
𝑑2 0.1 = 0


# Page. 5

![Page Image](https://bcdn.docswell.com/page/GE8DY86GED.jpg)

小数点数の一般化
𝑥
𝑑෪𝑛 𝑥 ≔ 𝑑𝑛
2 ⋅ 10𝑛−1 𝜋
と新たに関数𝑑෪𝑛 𝑥 を定めると、これは周期2𝜋:
𝑑෪𝑛 𝑥 + 2𝜋 = 𝑑𝑛
𝑥 + 2𝜋
𝑥
1
𝑥
=
𝑑
+
=
𝑑
= 𝑑෪𝑛 𝑥
𝑛
𝑛
𝑛−1
𝑛−1
𝑛−1
𝑛−1
2 ⋅ 10 𝜋
2 ⋅ 10 𝜋 10
2 ⋅ 10 𝜋
図1:𝑦 = 𝑑෪𝑛 𝑥 のグラフ 0 ≤ 𝑥 ≤ 2𝜋


# Page. 6

![Page Image](https://bcdn.docswell.com/page/LELM4R9X7R.jpg)

小数点数の一般化
数学的性質：Fourier級数展開
関数𝑓 𝑥 が周期2𝜋で”良い”関数のとき
+∞
1
𝑓 𝑥 = 𝑎0 + ෍ 𝑎𝑘 cos 𝑘𝑥 + 𝑏𝑘 sin 𝑘𝑥
2
𝑘=1
と級数展開できる。ただし、𝑎𝑘 , 𝑏𝑘 は
1 2𝜋
1 2𝜋
𝑎𝑘 ≔ න 𝑓 𝑥 cos 𝑘𝑥 𝑑𝑥, 𝑏𝑘 = න 𝑓 𝑥 sin 𝑘𝑥 𝑑𝑥
𝜋 0
𝜋 0


# Page. 7

![Page Image](https://bcdn.docswell.com/page/4JMYKRZ3JW.jpg)

小数点数の一般化
先に紹介したFourier級数展開で次が示せる
命題（本論文の主結果）
+∞
9 2
1
𝑑෪𝑛 𝑥 = + ෍
2 𝜋
𝑘
𝑘=1
−1 𝑘 − 9
𝜋𝑘
𝜋𝑘
𝜋𝑘
+ 4 cos cos cos
sin 𝑘𝑥
2
2
5
10
※なぜこのような式が必要か
具体的に無限和（シグマ）を使って一般化することで、その和を途中で
打ち切ることで小数点数の近似値が計算機で求められる


# Page. 8

![Page Image](https://bcdn.docswell.com/page/PJR9XR6R79.jpg)

小数点数の一般化
大まかな証明の流れ
1.
2𝜋
𝑎0 = ‫׬‬0 𝑑෪𝑛 𝑥
𝜋
2𝜋
cos 0𝑥𝑑𝑥 = ‫׬‬0 𝑑෪𝑛 𝑥 𝑑𝑥 = 9を証明する
𝜋
2.
2𝜋
𝑎𝑘 = ‫׬‬0 𝑑෪𝑛 𝑥
𝜋
cos 𝑘𝑥 𝑑𝑥 = 0を証明する
3.
2𝜋
𝑏𝑘 = ‫׬‬0 𝑑෪𝑛 𝑥
𝜋
1
1
1
1
sin 𝑘𝑥 𝑑𝑥 =
2
−1 𝑘 −9
𝜋𝑘
2
+ 4 cos
𝜋𝑘
+∞
2
9 2
1
෪
⇒ 𝑑𝑛 𝑥 = + ෍
2 𝜋
𝑘
𝑘=1
cos
𝜋𝑘
5
cos
𝜋𝑘
10
sin 𝑘𝑥を証明する
−1 𝑘 − 9
𝜋𝑘
𝜋𝑘
𝜋𝑘
+ 4 cos
cos
cos
sin 𝑘𝑥
2
2
5
10


# Page. 9

![Page Image](https://bcdn.docswell.com/page/PEXQ6RMYJX.jpg)

小数点数の一般化
定義
実数𝑥の一般化された小数第𝑝位𝑑𝑝 𝑥
+∞
9 2
1
𝑑𝑝 𝑥 = + ෍
2 𝜋
𝑛
𝑛=1
−1 𝑛 − 9
𝜋𝑛
𝜋𝑛
𝜋𝑛
+ 4 cos cos cos
sin 2 ⋅ 10𝑝−1𝜋𝑥
2
2
5
10
精度𝑙の小数第𝑝位𝛿𝑝 𝑙; 𝑥
𝑙
9 2
1
𝛿𝑝 𝑙; 𝑥 = + ෍
2 𝜋
𝑛
𝑛=1
−1 𝑛 − 9
𝜋𝑛
𝜋𝑛
𝜋𝑛
+ 4 cos cos cos
sin 2 ⋅ 10𝑝−1𝜋𝑥
2
2
5
10


# Page. 10

![Page Image](https://bcdn.docswell.com/page/3EK91RG4ED.jpg)

𝜹𝒑 𝒍; 𝒙 を計算するプログラ
ム
Input: 精度𝑙と小数点を求めたい実数𝑥と小数第何位を求めるかの値𝑝
Output: 𝑥の精度𝑙の小数第𝑝位delta(𝑙, 𝑥, 𝑝)= 𝛿𝑝 𝑙; 𝑥
if 𝑙 = 1 then
9
2
2
𝜋
return + ⋅ −5 sin 2 ⋅ 10𝑝−1 𝜋𝛼
else
term ←
2
𝜋𝑙
⋅
−1 𝑙 −9
2
+ 4 cos
𝜋𝑙
2
cos
𝜋𝑙
5
cos
𝜋𝑙
10
sin 2 ⋅ 10𝑝−1 𝜋𝑙𝑥
return delta 𝑙 − 1, 𝑥, 𝑝 +term
end if
実は線形時間（結構早い）→時間は大丈夫そう


# Page. 11

![Page Image](https://bcdn.docswell.com/page/L73WQ8ND75.jpg)

𝜹𝒑 𝒍; 𝒙 を計算するプログラ
ム
円周率の小数第0～18位
精度は2000
言語はSageMath
𝜹𝒑 𝒍; 𝒙 に最も
近い整数
円周率の桁数の真
の値
3
1
4
1
5
9
2
6
5
3
5
8
9
7
9
2
3
8
9
3
1
4
1
5
9
2
6
5
3
5
8
9
7
9
3
2
3
8
多くがほとんど真の値になっているが、特に第15位以降は誤差が大きい
扱える小数点の桁数などに起因していると考えられ、特に問題はないだろう


# Page. 12

![Page Image](https://bcdn.docswell.com/page/87DK9MW2JG.jpg)

今後の展望と課題
• 大きい自然数𝑛について小数第𝑛位を求めようとすると大きな誤
差が出てしまうor計算できなくなってしまう→少なくとも累乗
が出ない関数を構築したい。
• 小数点の一般化をしたので、一般の実数𝑟について小数第𝑟位が
どのような意味をもつか性質をもつか。


# Page. 13

![Page Image](https://bcdn.docswell.com/page/VJPKZR9LE8.jpg)

ご清聴ありがとうございました
𝛿 𝑙; 𝑥, 𝑝 を計算するプログラム公開中
https://colab.research.google.com/drive/1jcaVli7dR_9t5KlWIqksrfw8iec953HU?usp=sharing
Mail: 19ca006b@rikkyo.ac.jp


