Submit Search
Upload
コンピュータで全く使われない数表現
•
5 likes
•
6,625 views
Yu(u)ki IWABUCHI
Follow
第4回 プログラマのための数学勉強会 の発表資料です。 (改定前タイトル: コンピュータにおける数表現)
Read less
Read more
Science
Report
Share
Report
Share
1 of 43
Download now
Download to read offline
Recommended
「五次方程式が代数的に解けないわけ」第3回プログラマのための数学勉強会 #maths4pg
「五次方程式が代数的に解けないわけ」第3回プログラマのための数学勉強会 #maths4pg
Junpei Tsuji
はじめてのパターン認識 第6章 後半
はじめてのパターン認識 第6章 後半
Prunus 1350
2部グラフとソーシャルネットワーク
2部グラフとソーシャルネットワーク
Hiroko Onari
計算量
計算量
Ken Ogura
有向グラフに対する 非線形ラプラシアンと ネットワーク解析
有向グラフに対する 非線形ラプラシアンと ネットワーク解析
Yuichi Yoshida
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
AtCoder Inc.
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
HCPC: 北海道大学競技プログラミングサークル
プログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズム
Takuya Akiba
Recommended
「五次方程式が代数的に解けないわけ」第3回プログラマのための数学勉強会 #maths4pg
「五次方程式が代数的に解けないわけ」第3回プログラマのための数学勉強会 #maths4pg
Junpei Tsuji
はじめてのパターン認識 第6章 後半
はじめてのパターン認識 第6章 後半
Prunus 1350
2部グラフとソーシャルネットワーク
2部グラフとソーシャルネットワーク
Hiroko Onari
計算量
計算量
Ken Ogura
有向グラフに対する 非線形ラプラシアンと ネットワーク解析
有向グラフに対する 非線形ラプラシアンと ネットワーク解析
Yuichi Yoshida
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
実践・最強最速のアルゴリズム勉強会 第四回講義資料(ワークスアプリケーションズ & AtCoder)
AtCoder Inc.
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
ACPC 2018 Day3 G: 回文部分列 (Palindromic Subsequences)
HCPC: 北海道大学競技プログラミングサークル
プログラミングコンテストでの乱択アルゴリズム
プログラミングコンテストでの乱択アルゴリズム
Takuya Akiba
はじパタ6章前半
はじパタ6章前半
T T
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
shindannin
ウィナーフィルタと適応フィルタ
ウィナーフィルタと適応フィルタ
Toshihisa Tanaka
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
はじパタ11章 後半
はじパタ11章 後半
Atsushi Hayakawa
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
AtCoder Inc.
Spaceships 解説
Spaceships 解説
Masaki Hara
はじめてのパターン認識 第9章 9.5-9.6
はじめてのパターン認識 第9章 9.5-9.6
Prunus 1350
Convex Hull Trick
Convex Hull Trick
HCPC: 北海道大学競技プログラミングサークル
Fractional cascading
Fractional cascading
Nariaki Tateiwa
無理数とお友達になろう - 第384回科学勉強会
無理数とお友達になろう - 第384回科学勉強会
Junpei Tsuji
Binary indexed tree
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端
Yoichi Iwata
FOBOS
FOBOS
Hidekazu Oiwa
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
AtCoder Regular Contest 038 解説
AtCoder Regular Contest 038 解説
AtCoder Inc.
Indeedなう B日程 解説
Indeedなう B日程 解説
AtCoder Inc.
AtCoder Regular Contest 037 解説
AtCoder Regular Contest 037 解説
AtCoder Inc.
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
情報オリンピック夏合宿発表
情報オリンピック夏合宿発表
Kazuma Mikami
kagami_comput2015_3
kagami_comput2015_3
swkagami
More Related Content
What's hot
はじパタ6章前半
はじパタ6章前半
T T
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
shindannin
ウィナーフィルタと適応フィルタ
ウィナーフィルタと適応フィルタ
Toshihisa Tanaka
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
はじパタ11章 後半
はじパタ11章 後半
Atsushi Hayakawa
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
AtCoder Inc.
Spaceships 解説
Spaceships 解説
Masaki Hara
はじめてのパターン認識 第9章 9.5-9.6
はじめてのパターン認識 第9章 9.5-9.6
Prunus 1350
Convex Hull Trick
Convex Hull Trick
HCPC: 北海道大学競技プログラミングサークル
Fractional cascading
Fractional cascading
Nariaki Tateiwa
無理数とお友達になろう - 第384回科学勉強会
無理数とお友達になろう - 第384回科学勉強会
Junpei Tsuji
Binary indexed tree
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端
Yoichi Iwata
FOBOS
FOBOS
Hidekazu Oiwa
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
AtCoder Regular Contest 038 解説
AtCoder Regular Contest 038 解説
AtCoder Inc.
Indeedなう B日程 解説
Indeedなう B日程 解説
AtCoder Inc.
AtCoder Regular Contest 037 解説
AtCoder Regular Contest 037 解説
AtCoder Inc.
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
What's hot
(20)
はじパタ6章前半
はじパタ6章前半
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
ウィナーフィルタと適応フィルタ
ウィナーフィルタと適応フィルタ
指数時間アルゴリズム入門
指数時間アルゴリズム入門
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
はじパタ11章 後半
はじパタ11章 後半
AtCoder Beginner Contest 006 解説
AtCoder Beginner Contest 006 解説
Spaceships 解説
Spaceships 解説
はじめてのパターン認識 第9章 9.5-9.6
はじめてのパターン認識 第9章 9.5-9.6
Convex Hull Trick
Convex Hull Trick
Fractional cascading
Fractional cascading
無理数とお友達になろう - 第384回科学勉強会
無理数とお友達になろう - 第384回科学勉強会
Binary indexed tree
Binary indexed tree
指数時間アルゴリズムの最先端
指数時間アルゴリズムの最先端
FOBOS
FOBOS
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Regular Contest 038 解説
AtCoder Regular Contest 038 解説
Indeedなう B日程 解説
Indeedなう B日程 解説
AtCoder Regular Contest 037 解説
AtCoder Regular Contest 037 解説
Rolling hash
Rolling hash
Similar to コンピュータで全く使われない数表現
情報オリンピック夏合宿発表
情報オリンピック夏合宿発表
Kazuma Mikami
kagami_comput2015_3
kagami_comput2015_3
swkagami
ウェーブレット木の世界
ウェーブレット木の世界
Preferred Networks
or-10. 線形計画法を Excel で解く
or-10. 線形計画法を Excel で解く
kunihikokaneko1
kagami_comput2016_03
kagami_comput2016_03
swkagami
PRML上巻勉強会 at 東京大学 資料 第1章後半
PRML上巻勉強会 at 東京大学 資料 第1章後半
Ohsawa Goodfellow
PRML 1.6 情報理論
PRML 1.6 情報理論
sleepy_yoshi
Java数値(浮動小数点)課題勉強会
Java数値(浮動小数点)課題勉強会
Tetsuya Yoshida
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
narumikanno0918
HAPPY NEW YEAR 2017 コンテスト 解説
HAPPY NEW YEAR 2017 コンテスト 解説
皓介 三田
秘密分散法の数理
秘密分散法の数理
Akito Tabira
kagamicomput201703
kagamicomput201703
swkagami
K2PC Div1 E 暗号化
K2PC Div1 E 暗号化
Kazuma Mikami
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
sleepy_yoshi
Similar to コンピュータで全く使われない数表現
(14)
情報オリンピック夏合宿発表
情報オリンピック夏合宿発表
kagami_comput2015_3
kagami_comput2015_3
ウェーブレット木の世界
ウェーブレット木の世界
or-10. 線形計画法を Excel で解く
or-10. 線形計画法を Excel で解く
kagami_comput2016_03
kagami_comput2016_03
PRML上巻勉強会 at 東京大学 資料 第1章後半
PRML上巻勉強会 at 東京大学 資料 第1章後半
PRML 1.6 情報理論
PRML 1.6 情報理論
Java数値(浮動小数点)課題勉強会
Java数値(浮動小数点)課題勉強会
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
スパースモデリング、スパースコーディングとその数理(第11回WBA若手の会)
HAPPY NEW YEAR 2017 コンテスト 解説
HAPPY NEW YEAR 2017 コンテスト 解説
秘密分散法の数理
秘密分散法の数理
kagamicomput201703
kagamicomput201703
K2PC Div1 E 暗号化
K2PC Div1 E 暗号化
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
More from Yu(u)ki IWABUCHI
音楽にまつわる数学 〜「倍音」で理解する和音と音色〜
音楽にまつわる数学 〜「倍音」で理解する和音と音色〜
Yu(u)ki IWABUCHI
明日機械学習に役立つかもしれない数学
明日機械学習に役立つかもしれない数学
Yu(u)ki IWABUCHI
IFSを使ったフラクタルの描画
IFSを使ったフラクタルの描画
Yu(u)ki IWABUCHI
フラクタル音楽 〜可視化と可聴化の世界〜
フラクタル音楽 〜可視化と可聴化の世界〜
Yu(u)ki IWABUCHI
ラスタとベクタ
ラスタとベクタ
Yu(u)ki IWABUCHI
ワイソフ配列について
ワイソフ配列について
Yu(u)ki IWABUCHI
名のあるフラクタルたち
名のあるフラクタルたち
Yu(u)ki IWABUCHI
自己紹介とパズル紹介
自己紹介とパズル紹介
Yu(u)ki IWABUCHI
かんたんベジェ曲線
かんたんベジェ曲線
Yu(u)ki IWABUCHI
Mathematicaで機械学習してみた
Mathematicaで機械学習してみた
Yu(u)ki IWABUCHI
加法よりも低レベルな演算を考える
加法よりも低レベルな演算を考える
Yu(u)ki IWABUCHI
グラフィックエンジニア必見!イージングの数学
グラフィックエンジニア必見!イージングの数学
Yu(u)ki IWABUCHI
サイエンスアゴラ研究100連発 〜目に見えて楽しい数学〜
サイエンスアゴラ研究100連発 〜目に見えて楽しい数学〜
Yu(u)ki IWABUCHI
Bad Apple Curve!! 〜フーリエ記述子でアニメーション作ってみた〜
Bad Apple Curve!! 〜フーリエ記述子でアニメーション作ってみた〜
Yu(u)ki IWABUCHI
いただきます。
いただきます。
Yu(u)ki IWABUCHI
フラクタル概説
フラクタル概説
Yu(u)ki IWABUCHI
More from Yu(u)ki IWABUCHI
(16)
音楽にまつわる数学 〜「倍音」で理解する和音と音色〜
音楽にまつわる数学 〜「倍音」で理解する和音と音色〜
明日機械学習に役立つかもしれない数学
明日機械学習に役立つかもしれない数学
IFSを使ったフラクタルの描画
IFSを使ったフラクタルの描画
フラクタル音楽 〜可視化と可聴化の世界〜
フラクタル音楽 〜可視化と可聴化の世界〜
ラスタとベクタ
ラスタとベクタ
ワイソフ配列について
ワイソフ配列について
名のあるフラクタルたち
名のあるフラクタルたち
自己紹介とパズル紹介
自己紹介とパズル紹介
かんたんベジェ曲線
かんたんベジェ曲線
Mathematicaで機械学習してみた
Mathematicaで機械学習してみた
加法よりも低レベルな演算を考える
加法よりも低レベルな演算を考える
グラフィックエンジニア必見!イージングの数学
グラフィックエンジニア必見!イージングの数学
サイエンスアゴラ研究100連発 〜目に見えて楽しい数学〜
サイエンスアゴラ研究100連発 〜目に見えて楽しい数学〜
Bad Apple Curve!! 〜フーリエ記述子でアニメーション作ってみた〜
Bad Apple Curve!! 〜フーリエ記述子でアニメーション作ってみた〜
いただきます。
いただきます。
フラクタル概説
フラクタル概説
コンピュータで全く使われない数表現
1.
コンピュータにお ける数表現 面白法人カヤック 岩淵勇樹
2.
コンピュータにお ける数表現 面白法人カヤック 岩淵勇樹
3.
自己紹介 • 岩淵勇樹 (
IWABUCHI Yu(u)ki ) • 金沢大学自然科学研究科修了 • 博士(工学) • 面白法人カヤック HTMLファイ部・人事部 • 卒研で記数法を研究
4.
アウトライン • 繰り上がり則と記数法 • 2進法
• φ進法 • フィボナッチ記数法 • 自然数より広い記数 • -‐2進法 • 1+i進法 • 物智数
5.
繰り上がり則と記数法 2進法、φ進法、フィボナッチ記数法
6.
よく使われる記数法 • 位取り記数法(N進法) • 人間は10進法、
コンピューターは2進法 • 2進数と親和性の高い 8進数や16進数もよく使われる
7.
2進法 • 基数が2の位取り記数法
• 桁の重みは2n 8 4 2 1 0 0 0 0 0 0 0 0 1 1 0 0 1 0 2 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 0 6 0 1 1 1 7 8 4 2 1 1 0 0 0 8 1 0 0 1 9 1 0 1 0 10 1 0 1 1 11 1 1 0 0 12 1 1 0 1 13 1 1 1 0 14 1 1 1 1 15
8.
2進数の足し算 1 1
+
9.
繰り上がり 1 1
0 1 +
10.
2を左に 0 1
2 ↓
11.
2進数の足し算(例) 0 1
1 2 + 1 1 1 1 1 0 2 → 1 0 0 → 1
12.
繰り上がり則だけで足し算 • 2以上の値がある部分に、 繰り上がりのルールだけ適用すれば
どんな足し算もできる • 初期値を10進数として適用すれば、 基数変換もできる
13.
Excelで実演(1) 繰り上がり則を適用する 一番左のセル
(2以上の数の左のセル) を選択して 「形式を選択してペースト」 繰り上がり則 1, -‐2 を入力 計算したい数値を入力 (ex) 1, 2, 1)
14.
Excelで実演(2) 「演算」を 「加算」に設定して
「OK」
15.
Excelで実演(3) 適用したいセルに次々に 「繰り返し」(Ctrl
+ Y) 対象が 0と1だけの行になったら計算完了!
16.
φ進法(黄金進法) • 基数がφ(黄金比)の位取り記数法
• 桁の重みはφn φ4 φ3 φ2 φ1 φ0 φ-‐1 φ-‐2 φ-‐3 φ-‐4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 1 0 0 2 0 0 1 0 0 0 1 0 0 3 0 0 1 0 1 0 1 0 0 4 0 1 0 0 0 1 0 0 1 5 0 1 0 1 0 0 0 0 1 6 1 0 0 0 0 0 0 0 1 7 1 0 0 0 1 0 0 0 1 8 1 0 0 1 0 0 1 0 1 9 1 0 1 0 0 0 1 0 1 10 φ = 5 +1 2
17.
1の連続は禁止 • φn=φn-‐1+φn-‐2 • ex)
n=2のとき 5 +1 2 ! " # $ % & 2 = 5 +1 2 +1 1 1 0 0 1 → φn φn-‐1 φn-‐2
18.
φ進法の繰り上がり則 • φ進法では左に1繰り上がり、
右に2繰り下がる 1 1 0 1 + 0 1 . (2φn=φn+1+φn-‐2)
19.
繰り上がりの秘密 • φn+φn=φn+(φn-‐1+φn-‐2)
=(φn+φn-‐1)+φn-‐2 =φn+1+φn-‐2 2 1 0 1 0 1 1 1 → →
20.
繰り上がり則だけで足し算 • 2の左1、右2の繰り上がりと、
1の連続での繰り上がりだけを適用すれば どんな足し算もできる • 初期値を10進数として適用すれば、基数変 換もできる
21.
Excelで実演(1) 繰り上がり則を適用する 一番左のセル
(2以上の数の左のセル) を選択して 「形式を選択してペースト」 繰り上がり則 1, -‐2, 0 1 を入力 計算したい数値を入力 (ex) 1, 2, 2, 1)
22.
Excelで実演(2) 「演算」を 「加算」に設定して
「OK」
23.
Excelで実演(3) 適用したいセルに次々に 「繰り返し」(Ctrl
+ Y) 対象が 1が連続しない 0と1だけの行になったら計算完了! 0,1,1のパターンを 1,0,0に書き換え
24.
フィボナッチ数 • F0 =
1 • F1 = 2 • Fn = Fn-‐1 + Fn-‐2 • フィボナッチ数を数列として書き下すと 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …
25.
フィボナッチ記数法 • 桁の重みはFn
8 5 3 2 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 2 0 0 1 0 0 3 0 0 1 0 1 4 0 1 0 0 0 5 0 1 0 0 1 6 8 5 3 2 1 0 1 0 1 0 7 1 0 0 0 0 8 1 0 0 0 1 9 1 0 0 1 0 10 1 0 1 0 0 11 1 0 1 0 1 12
26.
フィボナッチ記数法のルール • 桁の値(digit)は0か1 • 1が連続してはならない
(=11が禁止語)
27.
ゼッケンドルフの定理 • 自然数は、連続するフィボナッチ 数を含まないような形で、相異な る1つ以上のフィボナッチ数の和と して一意に表現できる (つまり、フィボナッチ記数法の
書き方ができる)
28.
1の連続は禁止 • Fn=Fn-‐1+Fn-‐2 (定義より明らか)
1 1 0 0 1 → Fn Fn-‐1 Fn-‐2
29.
フィボナッチ記数法の繰り上がり則 • フィボナッチ記数法では左に1繰り上がり、
右に2繰り下がる • ただし、下2桁(2F1と2F0)だけ特殊 1 1 0 1 + 0 1 0 0 0 0 1 1 0 1 + 1 0 0 1 1 0 1 + (2Fn=Fn+1+Fn-‐2) (2F1=F2+F0) (2F0=F1) = = = = = 2 3 1 1 2
30.
自然数より広い記数 -‐2進数、1+i進数
31.
-‐2進法 • 基数が-‐2の位取り記数法
• 桁の重みは(-‐2)n • 整数全体を表現できる 16 -‐8 4 -‐2 1 0 1 0 0 0 -‐8 0 1 0 0 1 -‐7 0 1 1 1 0 -‐6 0 1 1 1 1 -‐5 0 1 1 0 0 -‐4 0 1 1 0 1 -‐3 0 0 0 1 0 -‐2 0 0 0 1 1 -‐1 16 -‐8 4 -‐2 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 2 0 0 1 1 1 3 0 0 1 0 0 4 0 0 1 0 1 5 1 1 0 1 0 6 1 1 0 1 1 7
32.
-‐1+i進法 • D. Knuth
(TeXの生みの親)が考案 • 複素整数を記述可能 • 基数が複素数
33.
1+i進法 • 2進数の2を(1+i)に読み替える (1+i)2
1+i 1 0 0 0 0 0 0 1 1 0 1 0 1+i 0 1 1 2+i 1 0 0 2i 1 0 1 1+2i 1 1 0 1+3i 1 1 1 2+3i
34.
ツインドラゴン
35.
物智数 完全オリジナルの記数法
36.
記数法の拡張 • 位取り記数法(N進法)の、Nの部分を拡張
→負数や複素数も表現可能に • 記数法により、繰り上がり則も違う →もっと変わった繰り上がり則はないか? • 数は一直線に並ぶ(ex) 10101110) →並び方を拡張できないか??
37.
物智数の繰り上がり則 1
1 0 1 + 1 =
38.
物智数 1 0 0
1 1 0 0 1 1 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 0 1 1 1 0 1 1 1 0 0 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 左と上に繰り上がり 0 1 1 1 0 1 1 1 1 0 1 1 12= 3= 4= 5= 6= 7= 8= 0 1 1 0
39.
大きい数だと 気になる方はこちらで! hTp://butchi.jp/documents/planar_binary/
? 1000=
40.
物智数の謎 • 基数はp+q=2となる何らかのpとq →1,
1かもしれないし、 2, 0 かもしれないし、 1+x, 1-‐xかもしれない • 複素数よりもっと広い、何かを表 せるに違いない!!
41.
まとめ • 繰り上がりに着目して計算ができる
(2進法、φ進法、フィボナッチ記数法) • 桁の重みの拡張により整数や複素数などまで表現できる (-‐2進法、1+i進法) • 繰り上がり方向を2方向にして新しい記数法を作れる (物智数)
42.
問題集
43.
解答 問1
1) 1010 2) 111111 3) 1111000 問2 1) 1001 2) 1101 3) 11101 問3 1) 1000.1001 2) 10100.0101 3) 100101.001001 問4 1) 1000.1001 2) 10000.01 3) 1000000.01 問5 1) 10001 2) 100000 3) 1010001 問6 1) 1000 2) 100000 3) 1000000 問7 1) 2) 3) 問8 1) 2) 3) 0 1 1 1 1 0 1 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 1 1 0 0 1 1 0 0 0 0 0 1 1 0 1 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 0 0 0 1 1 1 0 1 1 1 1 0 1 1 1 0 0 1 0 0
Download now