[過去ログ] 「数学」をプログラミングするには (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
76(1): 2024/03/23(土)16:43 ID:g/HfMmmn(4/9) AAS
 >>74 
 自然数は要素数が無限大の配列だが、コンピュータではメモリが有限なので表現できないだけ。 
 イタレータによる遅延評価は問題を先送りしただけで、本当の写像である配列を作ろうとすると 
 メモリが途中で尽きて作れない。 
77(1): 2024/03/23(土)17:05 ID:O64Y227M(4/5) AAS
 >>76 
 配列なんていう間違った考えをするからそのように失敗する 
 正しくイテレータと捉えれば自然数もそこからの写像も扱える 
78(2): 2024/03/23(土)17:30 ID:g/HfMmmn(5/9) AAS
 >>77 
 イタレータは配列の各要素を走査しながら操作する道具、つまり写像を逐次的に作っていくための操作手順を表したものに過ぎない。 
79: 2024/03/23(土)18:46 ID:O64Y227M(5/5) AAS
 >>78 
 イテレータとは何かを学び直しなさい 
 それは配列に対するイテレータ 
 イテレータに配列なんていうものは必要ない 
80: 2024/03/23(土)19:02 ID:/RLS51iM(1) AAS
 イテレータなんぞプログラミング側の都合でしかないやろw 
 数学のどこにイテレーションって概念があるの? 
 もとは集合の話だっけ? 集合のどこにイテレータ出てくる? 
81(1): 2024/03/23(土)19:08 ID:HOjMmtFw(1) AAS
 配列こそプログラミングやコンピュータ都合の邪道なものだね 
 配列は有限しか扱えないから不要 
  
 イテレータは自然数イテレータだけでなく例えばフィボナッチイテレータなど無限を扱える 
 イテレータは数学とも相性がいい 
82(2): 2024/03/23(土)20:19 ID:g/HfMmmn(6/9) AAS
 >>78 >>81 
 イタレータの意味を分かっているのか。反復子だぞ。反復子が写像のわけないだろ。 
 写像を実行するための操作手順でしかない。 
  
 反復子の遅延評価により無限の操作手順をコードとして書くことはできても、実際には 
 実行が途中で終わるので無限を扱えるわけではなく、有限を無限に見せている構文上の 
 まやかしに過ぎない。 
83(2): 2024/03/23(土)21:27 ID:u0/iUo5p(1) AAS
 >>82 
 あんさんボケとるな 
 ここまで読んで反復子(iterator)が写像(map)と書いているのは君しかいない 
 他の人たちは以下を正しく理解して書込みしている 
  
 >>72 
 >> だからmapの入力も出力もイテレータが使われる 
84(1): 2024/03/23(土)22:23 ID:g/HfMmmn(7/9) AAS
 >>83 
 >>74はごっちゃにしているようだが。 
  
 反復子を使っても遅延評価をしなければ、mapを多段に使った場合の効率は良くならない。 
 例えば、C++ STLのtransformがそう。 
  
 >>70のような配列のmap関数でも、引数fとして複数の関数の合成関数のポインタを渡せば、 
 効率は良くなる。あるいは、引数fとして関数ポインタの配列を受け入れるようなmap関数を 
 書いても良い。 
85: 2024/03/23(土)22:27 ID:g/HfMmmn(8/9) AAS
 >>83 
 >>74はごっちゃにしているようだが。 
  
 反復子を使っても遅延評価をしなければ、mapを多段に使った場合の効率は良くならない。 
 例えば、C++ STLのtransformがそう。 
  
 >>70のような配列のmap関数でも、引数fとして複数の関数の合成関数のポインタを渡せば、 
 効率は良くなる。あるいは、引数fとして関数ポインタの配列を受け入れるようなmap関数を 
 書いても良い。
省1
86(1): 2024/03/23(土)22:32 ID:/PCiT6cf(1/2) AAS
 >>84 
 根本的な勘違いをしているようなのでアドバイス 
 イテレータは抽象的な概念に過ぎないのでそこに遅延評価などという話は一切出てこない 
 イテレータの実装の一つに遅延評価の有無を持ち出すケースがあるようだがそんな特殊などうでもいい話をしても意味がない 
87: 2024/03/23(土)22:36 ID:g/HfMmmn(9/9) AAS
 >>86 
 そんなことは分かっている。>>72に言ってくれ。 
88: 2024/03/23(土)22:43 ID:/PCiT6cf(2/2) AAS
 >>72は正しいよ 
89: 2024/03/23(土)22:56 ID:sCrZk0I5(1) AAS
 iteratorは可算無限を扱える 
 mapは入力も出力もiterator 
  
 例えば 
 2倍にするというmapに対して 
 入力を自然数のiteratorとすると 
 出力は偶数の自然数のiteratorとなる 
  
 これだけの話だろ
省1
90: 2024/03/24(日)10:28 ID:8D2Drt3S(1) AAS
 でもC言語は圏論じゃないよね 
91: 2024/03/24(日)10:35 ID:GMGvnUD/(1/3) AAS
 20年前の議論草 
92: 2024/03/24(日)11:18 ID:dsXIuIWc(1) AAS
 それは間違い 
 FORTRANが今もなお科学技術計算に使われてる 
93: 2024/03/24(日)11:32 ID:GMGvnUD/(2/3) AAS
 言葉のお遊びwww 
94: 2024/03/24(日)11:34 ID:yjeBPx06(1) AAS
 集合論はラッセルのパラドックスで矛盾した 
 だから集合と写像に基づくC言語やRubyは数学を扱うのに不適切 
 よってハスケルなどは圏論に基づくから関数型言語が正解 
95(1): 2024/03/24(日)11:46 ID:BUlt442E(1/6) AAS
 プログラム言語は機械語→アセンブラ→高級言語 と進化してきたが、高級言語にも高級度の段階があって 
 gotoジャンプ→構造化ループ→map→ベクトル演算 という序列になっている。 
  
 y = x.map(i => 2 * i) のように冗長な記述をしなければならない言語よりは、ベクトル演算で y = 2 * x と 
 すっきり書けるFortranの方が進化している。 
96: 2024/03/24(日)14:10 ID:S5dROhf0(1) AAS
 まったくトンチンカンな話してんな 
 プログラミング言語にmapがあったところでそれで数学ができるわけじゃないだろ 
 何を解きたいんだよ? 
 定理証明か?仕様記述か? 
 ド文系のふわっとした思考やめな 
97(2): 2024/03/24(日)14:30 ID:rmOZT0bw(1) AAS
 >>95 
 それはarrayを入出力とするmapだね 
 それは遅延評価もできず可算無限列を扱えない古い劣化タイプ 
 一方でiteratorを入出力とするmapはarrayだけでなく可算無限列など任意のものを対象にできる 
98: 2024/03/24(日)14:58 ID:iK6Wk5rB(1) AAS
 この完全なデタラメな話をここまで長々とする気力がどこから湧いてくるのかがわからない 
99: 2024/03/24(日)15:27 ID:pjttU2nz(1) AAS
 所有権を複製したいんやろw 
100: 2024/03/24(日)15:28 ID:4Iqs5Xee(1) AAS
 >>97 
 昔は配列に対するmapしか無かったから、遅延評価できず、有限列しか扱えず、中間生成配列のムダなど、悲惨だったな 
 今はイテレータに対してmapその他を適用するプログラミング言語が増えたので、扱える対象が広がるとともに、効率も良くなったな 
101: 2024/03/24(日)16:53 ID:GMGvnUD/(3/3) AAS
 そんな低レベルの話してるんとちゃうんやで 
102: 2024/03/24(日)18:55 ID:qF9URZLj(1) AAS
 そもそも高階関数のmapは、数学の集合論における写像のことではない 
103: 2024/03/24(日)19:36 ID:WsANI0D/(1) AAS
 ゴミみたいな話しかしてないな、定理証明系とかの話をしているのかと思ったら 
104(2): 2024/03/24(日)20:58 ID:BUlt442E(2/6) AAS
AA省
105(1): 2024/03/24(日)20:59 ID:BUlt442E(3/6) AAS
 Visual Stduioで y = 2 * x + 1 の行の逆アセンブリを見てみると、 
  
  mov  qword ptr [rbp + 68h], 1 
  mov  rax, qword ptr [rbp + 68h] 
  cmp  rax, 3  
  jg  TEST + 105h 
  mov  rax, qword ptr [rbp + 68h] 
  imul rax, rax, 4
省20
106: 2024/03/24(日)20:59 ID:BUlt442E(4/6) AAS
 インタプリタのRubyや、配列っぽく見える[1, 2, 3]がリンクリストのHaskellが効率を 
 云々するのは馬鹿げているな。 
107: 2024/03/24(日)21:02 ID:BUlt442E(5/6) AAS
 >>105の訂正 
 (誤) for (i = 1; i <= 3; i++) y[i] = 2 * x[i] + 3; 
 (正) for (i = 1; i <= 3; i++) y[i] = 2 * x[i] + 1; 
108(1): 2024/03/24(日)22:52 ID:IPqW9Eum(1) AAS
 >>104 
 固定長の配列を入力に使っている時点で失格 
 このスレは>>1の例のように対象は可算無限列 
109(2): 2024/03/24(日)23:00 ID:D7nIPk2H(1) AAS
 静的な固定長で最適化できるのは当たり前だから 
 少なくとも実行時までわからない可変長じゃないとな 
110: 2024/03/24(日)23:11 ID:BUlt442E(6/6) AAS
 >>108 
 無限なんて実行不可能なものを構文として書けても、コメントとして書けるのと同じようなもので無意味。 
  
 >>109 
 何を頓珍漢なことを言ってるんだよ。 
  
 for (i = 1; i <= 3; i++) y[i] = 2 * x[i] + 1; が 
 for (i = 1; i <= n; i++) y[i] = 2 * x[i] + 1; に変わるだけだぞ。 
111: 2024/03/24(日)23:42 ID:+hE4ud6c(1) AAS
 入力対象は>>1の数列でいいんじゃね 
  1 
  1 - 1/3 
  1 - 1/3 + 1/5 
  1 - 1/3 + 1/5 - 1/7 
  1 - 1/3 + 1/5 - 1/7 + ... 
 もちろん何番目まで必要かは不明
省1
112: 2024/03/25(月)06:31 ID:20JdvYau(1) AAS
 写像型言語は無いから無理やろ 
113: 2024/03/25(月)08:05 ID:S04445Yl(1) AAS
 しょうもない算法や文法を力説されても 
 数理論理を知らん高卒なんやろか 
114: 2024/03/25(月)09:05 ID:KQK4URb5(1) AAS
 集合論はラッセルのパラドックスがあるからまちがい 
 選択公理もバナッハタルスキーのパラドックスがあるからまちがい 
 圏論こそ数学の基礎 
115: 2024/03/25(月)09:20 ID:yJIwIJvC(1) AAS
 そういう何が一番とか中二思考やめようや 
116: 2024/03/25(月)09:20 ID:VkynB6Jg(1/4) AAS
 アホ参上 
117(1): 2024/03/25(月)10:25 ID:VsfGDznC(1) AAS
 圏論型プログラミングってないの? 
118: 2024/03/25(月)18:22 ID:OU4hWxvG(1/2) AAS
 集合は悪くないがそれを内包表記で定義するのが悪い 
 イテレータを内包表記っぽく書けるやつは 
 内包表記を使わない書き方もできる保証があるから良いけど 
119: 2024/03/25(月)19:35 ID:Yjyc3ZYI(1) AAS
 Pythonには内包表記はあっても外延表記はないから集合論はできないよ 
120: 2024/03/25(月)20:38 ID:0jQlcuCQ(1/2) AAS
 >>104はVisual Studioでは最適化オプションがなぜか無視されてしまうが、コマンドライン 
 コンパイラではまさに>>109が言う要素数が固定かつ全要素がコンパイル時に計算可能という 
 特殊な場合に応じた最適化が施され、コンパイル時の計算結果を配列yに書き込むだけで 
 y = 2 * x を全く計算しないコードが生成されることが、アセンブリ出力から分かる。 
  
 IFORT (旧式Intel Fortran) では 
  
  mov eax, 3 
  (中略)
省13
121: 2024/03/25(月)20:38 ID:0jQlcuCQ(2/2) AAS
 IFX (新式Intel Fortran) では 
  
  movabsq $21474836483, %rax 
  movq  %rax, TEST$Y(%rip) 
  leaq  TEST$Y(%rip), %rax 
  movl  $7, TEST$Y+8(%rip) 
  
 というコードが生成され (IntelのコンパイラなのAT&T記法で読みにくいが)、Cの 
  
  *(long long *)y = 0x500000003;
省3
122: 2024/03/25(月)20:46 ID:trqJ9Q6W(1) AAS
 rustのほうがスゲーからfortranは黙っとれ 
123: 2024/03/25(月)21:08 ID:VkynB6Jg(2/4) AAS
 誰にも相手してもらえないのでフォートランがイキル 
124: 2024/03/25(月)21:21 ID:VkynB6Jg(3/4) AAS
 フォートランは行列、有限要素法のライブラリィ呼ぶだけ、独自のコードなんか書かないw 
125: 2024/03/25(月)21:23 ID:DOdK3gDR(1) AAS
 数学をプログラミングするには、プログラマが数学の必要があるのでは? 
126(3): 2024/03/25(月)21:32 ID:VkynB6Jg(4/4) AAS
 プログラマは数学である必要がある 
127: 2024/03/25(月)22:22 ID:OU4hWxvG(2/2) AAS
 ギャンブルなら敗者が金を振り込めば秩序が戻るのだが 
 金を振り込んでしまう人がここにはいないので 
128: 2024/03/25(月)23:24 ID:77HfiJgP(1) AAS
 >>117 
 圏論型と言えるか分らんが、圏論が注目されたのは副作用の問題を圏論のモナドで表現できるということでHaskellに採用されたのがきっかけっぽい。 
  
 今は非可換確率論を圏論で表現すれば意識がどうやって生まれるのかの研究に使えるって話がある。 
 意識が生まれる謎が解ければAIに意識を持たせられる。 
129: 2024/03/26(火)02:09 ID:bsMEvYma(1/3) AAS
 意識は数学かwww 
130: 2024/03/26(火)11:17 ID:ZLsRjAqD(1) AAS
 計算機だからなぁ 
131: 2024/03/26(火)15:57 ID:bsMEvYma(2/3) AAS
 戻らないだろ、刑務所行き 
 >ギャンブルなら敗者が金を振り込めば秩序が戻るのだが 
132(1): 2024/03/26(火)17:42 ID:0A2fpKMf(1) AAS
 >>126 日本語おかしい 
133: 2024/03/26(火)17:56 ID:bsMEvYma(3/3) AAS
 >>132 
 125に言え 
134: 2024/03/27(水)18:25 ID:sRZ89+IF(1/2) AAS
 コンプライアンス的には絶対に違反しないブレないスタイルの方が楽だな 
 中庸とかいうのは数学的にも意味のない言葉 
 の筈だけど 
135(1): 2024/03/27(水)20:27 ID:NpBSIV2x(1) AAS
 >>126 
 ガイジか? 
 プログラマ→職業 
 数学→学問分野 
 日本語勉強し直すか死ねよ 
136: 2024/03/27(水)21:11 ID:xckWJWeo(1) AAS
 きっちりした仕様決め無しで「プログラミング」できるわけないだろうに 
 なんで過疎ってる5chのさらに過疎板でこんな板違いスレ何度も書き込むやつがいるんだよ 
 「プログラムを作る人」じゃないよな 
137(1): 2024/03/27(水)21:40 ID:ucDYKmHx(1) AAS
 >>135 
 125へ言えよ、キチガイ 
138: 2024/03/27(水)21:56 ID:sRZ89+IF(2/2) AAS
 ラッセルは作る人というより脆弱性を発見する人のように見える 
139: 2024/03/27(水)22:02 ID:Fy0R0co2(1) AAS
 頭の悪さがポエム書かせるんやろなこれ 
140(1): 2024/03/28(木)06:44 ID:RNwVIlzh(1) AAS
 >>137 
 ? 
 ガイジか? 
141(2): 2024/03/28(木)08:12 ID:WD+w6k7S(1) AAS
 意識は非可換だってどこかで聞いたな 
 現代数学は可換理論しか扱えないが、量子力学は非可換だから、意識=量子力学ってことになる 
 意識が非決定論なのは量子力学では状態が重ね合わせであることに起因する 
 したがって意識の問題を解決するには量子コンピュータが必須となる 
142: 2024/03/28(木)10:32 ID:vnZC0FK8(1/3) AAS
 >>140 
 キチガイ 
143: 2024/03/28(木)10:42 ID:7o0NRrCR(1) AAS
 借金取りは見かけ上は極めて非決定的にふるまうが 
 それでも純粋に合理的な行動しかしない存在とされているので意識の問題がない 
144: 2024/03/28(木)11:41 ID:/R48rPWi(1) AAS
 >>141 
 月刊ムーおすすめ 
145: 2024/03/28(木)11:51 ID:vnZC0FK8(2/3) AAS
 >>141 
 意識はサイコロを振らない 
146(1): 2024/03/28(木)19:38 ID:IFE49MQl(1) AAS
 >>126 
 小学校からやり直せ 
147: 2024/03/28(木)20:47 ID:vnZC0FK8(3/3) AAS
 >>146 
 アスペ 
148: 2024/03/28(木)20:52 ID:8WuDpFG2(1) AAS
 ポエマーさんはポエム板にでも行けよ 
 統失なら病院のほうがいいかな 
149(2): 2024/03/29(金)07:29 ID:Gq7mALgF(1) AAS
 ゲーデルの不完全性定理で完全に否定されているだろ 
 プログラムは不完全性では動かせない 
150: 2024/03/29(金)07:35 ID:wkwvmDXj(1) AAS
 >>149 
 月刊ムーおすすめ 
151: 2024/03/29(金)10:11 ID:vNZyJemM(1) AAS
 不完全ではなく無定義語で挫折する人がいる 
 無定義語の定義を特定できないと命題を肯定も否定もできない説 
 日常生活で出てくる 
152: 2024/03/29(金)14:56 ID:hQjfrr6D(1) AAS
 >>149 
 ガイジか? 
 ゲーデルの不完全性定理はそんなことについて言及してないぞ 
153: 2024/03/31(日)01:25 ID:GMj391lI(1/4) AAS
 数列の概念がない奴でも無限級数の意味は分かるんだよね 
 ハードルが低いせいで基礎知識の共有が難しい 
154(1): 2024/03/31(日)02:04 ID:XOErjovU(1) AAS
 無限級数はトンデモ 
 物理に現れるのは二次級数まで 
155: 2024/03/31(日)06:02 ID:954vZkOe(1/3) AAS
 ↑ 
 数学が何がわかってないやつの典型 
 虚数もあるとかないとか騒いでるタイプ 
156: 2024/03/31(日)11:13 ID:/9ZsX08L(1) AAS
 ほほう 
 君は、数学が何かわかっているのかネ? 
上下前次1-新書関写板覧索設栞歴
あと 846 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.026s