1 名前:デフォルトの名無しさん mailto:sage [2022/01/27(木) 22:19:47.56 ID:avZQ9Wm7.net] 闘え ※前スレ C++ vs Rust https://mevius.5ch.net/test/read.cgi/tech/1619219089/ C vs C++ vs Rust Part.2 https://mevius.5ch.net/test/read.cgi/tech/1639539350/
672 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 02:58:15.92 ID:1+CNf8az.net] バカだなw コードにしなくてもそんなのは分かってんだよwwww それじゃ意味が不明である上にI/Fとしても稚拙極まりないと言ってるんだよw 返ってくる数字が何なのか意味不明だろうにw 今回は元作者がアホなために30個そこそこしか作成できないわけで、まあそれでもなんとかなるわけだが、いずれロジックを修正して無限に生成できるようにしたときにまだそんなビット列に拘るのかい? 敗北はお前wwww
673 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 03:15:01.33 ID:fen0VFs0.net] ところがガイガー君はsubsetsがビット表現から生成できることに気付かなかった そのためガイガー君が示した最初のコードは>>463 でありcombinationsイテレータを使ってsubsetsを生成するコードだった ちなみにググるとsubsetsはcombinationsを使って実装できるとのページが多数ヒットする ガイガー君がそこからカンニングしたのかどうかは知らないが少なくともビット表現から生成できることに気付かずcombinations頼みとなったのは事実だ>>463
674 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 03:23:47.90 ID:1+CNf8az.net] >>664 お猿さんの妄想が事実と食い違ってたところで俺にはどうでもいいんだけど、事実はC、P、階乗みたいな計算や集合みたいなのは俺小学校時代から知ってるw だから冪集合と聞くだけで、君のようにカンニングすることなく答えに辿りついてしまうんだよw ビット表現から生成する方法を必死に提唱してたのは俺一人しか知らないけど、この手の処理は原則変更可能な元データのセットを用意すればスワップするだけで生成出来るものだよw 可哀想にねw
675 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 03:33:20.84 ID:fen0VFs0.net] ガイガー君はsubsets関数をプログラミングする時になぜか非常に遠回りとなるitertools.combinationsを使った ソース>>463 この事実からガイガー君はアルゴリズムや数学などが不得意であると断言できる ここまでコピペ改変しか披露できていないことからプログラミングが不得意なのだろう
676 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 03:58:13.20 ID:1+CNf8az.net] >>666 こいつはアホなのか?普通に>>460 が求める簡単な方法なんだがwwww 妄想を自分で断言しちゃうとかもうねw 久しぶりにこれを使ってあげようwwww お前がそう思うんならそうなんだろう / ̄ ̄ ̄ ̄\ / / | ヽ ヽ\ / / /|||ハ||ヽ> `/ /ィ-トノレ| N十トハ||ヽ /V レ/テヾ |/ /テヾ|||| レ∧ |ヒOソ| ヒOソiNV | ヽ ̄ `  ̄ ハ( ヽ|ヽ \  ̄ 人ソお ヽレ\_≧ー-イレソ 前 / ̄ ̄ ̄\\ ん / / ̄ ̄\_ヽ) 中 |( )ヽヽ で ヒ∧ \/ |゚| は || ヽ | | な
677 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 05:21:36.47 ID:1V6eoYkY.net] >>460 を見てみたけど 最終的ににべき集合のべき集合が欲しいみたいよ MathematicaだとSubsets[Subsets[{a, b, c}]]で済むと言ってるね それに対して>>463 はitertools.combinationsを使ってsubsetsを実装 今回のケースでわざわざcombinationsを用いた実装が必要なのかどうかは不明 そして空集合が出力されないバグ実装 rangeを1開始でなくて0開始にしないと駄目ですよ それはさておき元と同じインタフェースならばRust版は>>656 の実装でOK subsets(subsets(&["a", "b", "c"])) でべき集合のべき集合がちゃんと得られますね
678 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 11:54:10.51 ID:1+CNf8az.net] まだ言ってんのかよw 空集合はお茶目なバグだ許せw combinationを使わない実装の方が珍しいわw 同じI/Fにする必要はないし、それが必要なら簡単に実装出来るw fn subsets_collect<T>(s: &Vec<T>) -> Vec<Vec<&T>> { subsets(s.len()).map(|iter| iter.map(|i| &s[i]).collect::<Vec<&T>>()).collect::<Vec<Vec<&T>>>() } fn main() { let input = vec!["a", "b", "c"]; println!("{:?}", subsets_collect(&subsets_collect(&input))); } 始めから同じ実装にしてないからなw そして>>656 の実装でsubsets(subsets(&["a", "b", "c"]))はエラーwwww
679 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 17:12:41.85 ID:URBujIbQ.net] ストレス発散オナニーRusterスレッド
680 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 17:36:53.71 ID:1+CNf8az.net] いや、Rusterは尽く俺にやられてるんだがw しかもC++できないただの駆け出しw
681 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 17:51:03.84 ID:HHTijYmK.net] >>669 は嘘つき やってみたら>>656 の実装で動いた fn main() { println!("{:?}", subsets(&subsets(&["a"]))); println!("{:?}", subsets(&subsets(&["a", "b"]))); println!("{:?}", subsets(&subsets(&["a", "b", "c"]))); } ちゃんとべき集合のべき集合が出力されている 1つ目 [[], [[]], [["a"]], [[], ["a"]]] 2つ目 [[], [[]], [["a"]], [[], ["a"]], [["b"]], [[], ["b"]], [["a"], ["b"]], [[], ["a"], ["b"]], [["a", "b"]], [[], ["a", "b"]], [["a"], ["a", "b"]], [[], ["a"], ["a", "b"]], [["b"], ["a", "b"]], [[], ["b"], ["a", "b"]], [["a"], ["b"], ["a", "b"]], [[], ["a"], ["b"], ["a", "b"]]] 3つ目は長いので略
682 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 18:08:01.19 ID:1+CNf8az.net] >>672 嘘つきはお前w &が余計についてるやんけw やはり駆け出しRust使いは嘘付きしかいないw
683 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 18:22:11.71 ID:6IwS75Da.net] >>673 ガイガー君の書き込み>>669 でも&が同じように付いている つまりガイガー君は自分の誤りを認めたことになる
684 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 18:28:57.25 ID:1+CNf8az.net] >>674 俺はちゃんとその>>669 で > そして>>656 の実装でsubsets(subsets(&["a", "b", "c"]))はエラーwwww と言ってるので誤っていないw 誤っているのは、>>669 で > それはさておき元と同じインタフェースならばRust版は>>656 の実装でOK > subsets(subsets(&["a", "b", "c"])) でべき集合のべき集合がちゃんと得られますね という部分w なんでこうまで説明されないと間違いを認められないんだろうなwwww 駆け出しRuster推しのお馬鹿さんたちがRustも使えないことが判明w
685 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 18:37:30.55 ID:GV4qdrT7.net] 実際に>>672 で動作してるのだからRustの勝利 C++はコードの片鱗すら出てこない
686 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 18:44:09.03 ID:1+CNf8az.net] >>572 でFAなんだもんw 想像もできないくらいC++書けない人が文句言ってても何も気にならんw 両方書けるようになってから、ほらこんなになるじゃんって持ってきたら添削してやるよw
687 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 19:01:47.10 ID:eXUaH9c5.net] C++20を使いこなせる人がいないことが敗北原因 Rustよりも利用者少ない だからこのスレにもC++で書ける人が誰もいない
688 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 19:03:19.57 ID:1+CNf8az.net] 俺は書けるけどねwwwww というかお前が書けないのに書き込んでるからこんな変な話になってるだけで、本来は書ける前提でああでもないこうでもないやるスレだろwwww
689 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 19:05:31.63 ID:DiBIkIVz.net] それ、昔のコンパイラを今でも使ってる人達にも言えるの?
690 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 19:11:26.79 ID:1+CNf8az.net] は?俺だって必要なら昔のコンパイラ使うぞw 特定CPU用のなんて安定したバージョンでないとバグ踏むからなw
691 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 19:59:25.97 ID:kJ/tleYc.net] C++使えなくてRustは使えますとか、 あと10年はなんの価値もないんじゃ...
692 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 22:31:20.58 ID:271cfGdl.net] そんな妄想をしても場所によりけり うちはC++以外の諸言語からRustへ移行したので Rust使えずC++使える人は価値ゼロ といったように
693 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 23:04:08.64 ID:1+CNf8az.net] それは最高にやばそうだなw
694 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 23:25:08.78 ID:Ftc+D3LS.net] 業界標準ツールのRust化も激しいよな 例えばJavaScriptでおなじみのトランスパイラBabel 遅いので当然ながらRust版のSWCというのが作成されて React/Next.jp環境でもBabelからそのRust版へと移行された
695 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 23:39:52.49 ID:1+CNf8az.net] 全部であるかのごとくに書いてるけどごくごく一部だし、しかも期待したほど速度が上がらずに困ってたよねw JavaScriptに比べてだぞ?w
696 名前:デフォルトの名無しさん mailto:sage [2022/03/20(日) 23:57:33.12 ID:jG5ySy9q.net] >>686 swcはbabelより20〜50倍速い
697 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 00:09:57.25 ID:BAdp3agq.net] 公称だろ?w 実際試した人がそうでもなかった(忘れたけど1.x倍くらい)って言ってたよw
698 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 00:10:28.20 ID:BAdp3agq.net] しかも場合によっては遅くなるって言ってたw
699 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 00:53:26.08 ID:1rsJ1Bxd.net] >>688 >>689 虚言癖
700 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 01:13:09.95 ID:BAdp3agq.net] まあ自分で試したわけじゃないから、そう言われても何とも言えんけどなw
701 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 03:44:24.39 ID:qXBNR9Nr.net] >>669 > fn subsets_collect<T>(s: &Vec<T>) ガイガー君は相変わらず素人のままだな そこは&Vec<T>ではなく&[T]と書くのだよ Vec自体の固有機能に関する動作の場合を除き 狭くVecのみを対象にするのはバカげている スライスを対象にするのが鉄則 &Vec<T> ←Vecしか受け付けられない &[T] ←Vecも配列もスライスも受け付ける
702 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 04:14:12.72 ID:BAdp3agq.net] >>692 そんなこと言われなくても知っとるわwwww それは俺のポリシーとして、可能ならVecを返すならVecを受けたいだけw 今回のケースではメリットとかないよw 同様にsliceで受けたらArrayで返したいし、iteratorを受けたらiteratorを返したいw
703 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 04:24:26.11 ID:Czlt7YRo.net] >>693 arrayとsliceは別物ですよ arrayで受けたらarrayで返したいなら意味がわかりますし実際にmapはその仕様ですけど
704 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 04:53:35.01 ID:BAdp3agq.net] >>694 [i32] ... Array &[i32] ... スライス T ... T &T ... Tの参照 という理解で、 ・特定の型の参照はスライスとして扱える ・Arrayの参照はスライスと区別できない と思ってて →スライスで渡されたらArrayで返す という発想なんだが、違うの?
705 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 05:13:22.29 ID:Czlt7YRo.net] >>695 違います [T] … これがスライス (動的サイズ) [T; N] … これが配列 (固定サイズ) 明確に異なるprimitive typeです
706 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 05:32:43.26 ID:BAdp3agq.net] >>696 なん。。だと!?!?そんな基本的なところを気付いていなかったのかw では ・Arrayの参照(&[T;N])はスライス([T])と区別できる let a = &[1,2,3]; のaは俺はずっとスライスと思ってたけど、そうではなく、 let a = &[1,2,3] as &[i32]; とかでないとスライス(の参照)にはならんってことかwwww これはすまんかったw ちょっともう一度最初から整理し直さないといかんかもw ありがとw
707 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:00:44.84 ID:Czlt7YRo.net] >>697 そこはコアースされます 配列とスライスの違いをわかりやすく使用例で示しましょう まず「配列を受け取り」その各値を2倍にした「配列を返す」関数twice()です fn twice<const N: usize>(input: &[isize; N]) -> [isize; N] { let mut output: [isize; N] = [0; N]; for i in 0..N { output[i] = input[i] * 2; } output } わかりやすいようforで回して代入しています fn main() { let input = [1, 2, 3]; println!("{:?}", twice(&input)); } もちろんちゃんと動いて[2, 4, 6]となりますね この関数の引数をスライスを受け取るように型を&[isize]へ変えても大丈夫なのですが ただし関数を使う時にちょっと状況が変わってきます そこには様々な違いと問題が生じますので実体験しましょう これがスライスと配列の違いを理解するためのあなたへの宿題です
708 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:10:12.41 ID:BAdp3agq.net] >>698 それは蛇足w Rust信者はそういうことするからダメなんだよw 別に必ず同じ固定サイズになるとは限らないから、そんな方法は考えてもいないw
709 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:18:10.57 ID:Czlt7YRo.net] >>699 ほら、理解できていませんね その発言からあなたはまだ机上の妄想の世界にいます わかった気になって宿題をしていないダメな子パターン
710 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:22:52.71 ID:BAdp3agq.net] >>700 一応配列で渡されたら配列で返したい心理の説明をしておくと、例えばベクタなど配列と同じような構造で動的に拡張可能なコレクションをずっと持ち回っていると、そいつが過去に持っていたデータなどが後ろにくっついてる可能性があったり、余計なメモリを確保していたり、gcなどが効きにくくなったりするので、内部処理で使ったオブジェクトではない、綺麗な生成データを固定で作って返す風習があるんだよw
711 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:32:23.88 ID:Czlt7YRo.net] >>701 あなたは>>693 で sliceで受けてarrayで返したいと言いました そこで先ほどの例twice関数をその仕様で作る宿題をあなたに課しました 宿題をしてそこでの課題を得ることができましたか?
712 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:33:56.07 ID:BAdp3agq.net] >>702 できるし頼んでないのでwwwww
713 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:40:05.89 ID:Czlt7YRo.net] >>703 いいえ あなたは>>695 で配列とスライスを正しく理解できていませんでした そして宿題もこなせず そこで何が問題なのかもいまだ理解できていません
714 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:42:57.16 ID:BAdp3agq.net] >>704 1+1が出来ることは証明する必要もないんだよw 君のように誰かに認めてもらいたいだけの人は別にしてw 俺は面白いから構ってあげるけどねw
715 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:50:01.91 ID:Czlt7YRo.net] >>705 やはり分かっていないようですね あなたが>>693 でsliceで受けてarrayで返したいと言った仕様で >>698 の内容を2倍にして返すだけの関数を作れましたか? YesかNoかで答えてください
716 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:53:37.67 ID:BAdp3agq.net] >>706 答える義務がないんだってwwwwww できるよw アホじゃねーのwwwwww
717 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:57:16.08 ID:Czlt7YRo.net] >>707 > できるよw はい これであなたは嘘つきダメ人間であることが完全に確定しました
718 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 06:59:16.07 ID:BAdp3agq.net] >>708 はいはい、良かったねwwwww 満足か?大方コンパイル時に必要だとかそんな話なんだろ?w 別にどうだっていいんだよそんなことwwwwww
719 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:00:45.10 ID:BAdp3agq.net] こういう輩は確かに煽ってみるに限るなw 面白いしw
720 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:04:34.69 ID:Czlt7YRo.net] >>709 ほら、その発言で あなたは配列とスライスをまだ理解できていないことがバレましたね
721 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:05:47.35 ID:BAdp3agq.net] 他の可能性があるんだ〜へぇ〜それは思いつかなかったなw どうでもいいけどwwwwwwww
722 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:14:14.39 ID:Czlt7YRo.net] >>712 あなたの知能では配列とスライスを理解することができなかったと決着しました 以上です
723 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:16:48.53 ID:BAdp3agq.net] はいはい、嘘乙wwwww
724 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:18:49.08 ID:BAdp3agq.net] ってもう終わりなのかよwwwww 夜までまだ長いぞw
725 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:36:36.37 ID:cgJvFkX3.net] フレームワークのドキュメントは読むのに言語につきてのドキュメントは読まないで雰囲気でやっていたのか
726 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 07:58:11.85 ID:BAdp3agq.net] 早速転生してきたのかw いい心がけだw いや読んだけど一度切りだよw 俺は必要がなければ読み返さないし、明確にsliceの定義をしているものがなかったので、誤った解釈のままだっただけw Rustのドキュメントって例ばっかりで、あんまり定義が明確じゃないんだよなw arrayは定義はあるんだけど、今まで初期化にしか使わなかったから、使わなすぎて間違って覚えてたw immutableがデフォだとわざわざarrayを使う意味があんまりないんだよねw
727 名前:デフォルトの名無しさん mailto:sage [2022/03/21(月) 23:29:47.68 ID:5Szv6JZQ.net] >>707 そこは「できない」と答えないと失格だろ 動的サイズのスライスをもらって固定サイズの配列を返すことは不可能
728 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 02:53:53.03 ID:ZDHdo9X7.net] >>718 残念だったねw 俺が「できる」とあえて答えてるのは>>702 の話で、>>706 には「答える義務がない」が答えなんだよw 流石に>>711 以降でついた嘘をついたのが気になって訂正しにきちゃったんだねw 嘘つくとか人として失格w
729 名前:デフォルトの名無しさん [2022/03/22(火) 09:25:40.89 ID:VA79WEBN.net] なんだかRustってマウント取り合いのキモイ連中ばかりなんだな。
730 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 09:53:23.73 ID:BbUMgG6B.net] >>720 これ
731 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 11:11:44.38 ID:cPdOMca8.net] そう。学習時間が増えるのは仕方ないしそれはそれでいいんだが、 その副作用としてマウンターがイナゴレベルで発生するのがな。
732 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 11:33:10.12 ID:8EjbgNwb.net] そろそろRust版毛の壁が誕生するのかな
733 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 12:18:47.19 ID:ZDHdo9X7.net] Rustごときにそんなものは生まれないし、マウントとか気にしてるからそういう空気になるだけw 気をつけるべきは、 ・言葉の定義に関する揚げ足取りだけとか ・関係ないことを誰も聞いてもないのに話し始めるとか ・スレ違いの話題とか そういうのくらいw
734 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 13:35:20.32 ID:pdrrbcyh.net] 以下のサイトによるとrust製ソフトで一番有名なfirefoxでさえC言語のコードの方がまだ多いらしい 正直、まだまだC/C++に代わるって議論する段階じゃなさそう https://4e6.github.io/firefox-lang-stats/
735 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 14:09:58.25 ID:l3SAD7eY.net] >>725 そりゃんな簡単に移植できないだろ そもそもC++ならまだしもC言語で書いてるところはRustに移植しづらいだろうし
736 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 14:36:30.97 ID:CigmH2/4.net] Firefoxは超巨大プロダクトの1つだからね 数千万行ものコードで書かれてるみたい さすがに全部書き換えられなくても仕方ないでしょ 毎日順調に1万行を書き換えても10年とかかかるよ
737 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 14:39:46.62 ID:oqIjUDQq.net] 新規追加分はどういう割合かしらん。
738 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 15:27:56.84 ID:q+lZbjeY.net] Netscape6の頃から数えると20年以上の歴史があるプロダクトだから数年で10%置き換えられたのはなかなか良いペースなのでは
739 名前:デフォルトの名無しさん mailto:sage [2022/03/22(火) 20:15:02.78 ID:ZDHdo9X7.net] https://wiki.mozilla.org/Oxidation "... Rust Weaknesses One major issue with Rust relates to personnel. There is a wide variety of experience levels within Mozilla, for both coding and reviewing. Rust's learning curve is steep at the start, which can be intimidating. (The new borrow checker released in Rust 1.31 helped greatly with this.) There are also technical challenges. Compilation is slow. Crossing the C++/Rust boundary can be difficult. See "Blockers and obstacles" below for more details about work being done to remedy these weaknesses. ..."
740 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 13:49:05.58 ID:A9GFlV37.net] >>502 馬鹿が使うPython まんま
741 名前:460 mailto:sage [2022/03/24(木) 14:52:36.70 ID:A9GFlV37.net] なんかちょっと見ないうちにえらく盛り上がってるのな んで、SubSets[Subsets*]]の話になってるが、本質はそこじゃなく SubSets[Subsets[{a,b,c}]]におけ要素が合併(U)、結合演算に閉じている集合族選び出して位相空間を作り出すってのが到達目標なんだわ。 羃集合の羃集合なんて、なんの工夫もなく実装できるもんだと思ってたらPythonはそれすら出来なかったということで、 集合演算においてはMathematicaレベルにすらない。 位相空間を選び出すには、さらにそこから演算規則にそぐわない集合族は排除しなきゃいけない。 3要素から
742 名前:り出した位相空間は29個に及ぶんだけど、 Python は既に羃集合の羃集合すら簡単に書けないことが確定した時点で数学研究には使えないってことが明らかなんよね。 それなりのプログラム組んだらいけるってことならC++でもC#でもいけるんですわ。www ちなみに数学科の初年度でドロップアウトするのがまさにここらしいので、 信学会正員の俺が試しに流行のPython調べてみたって話ですわ、 間違いないのは ・数学の研究に寄与するのはPythonじゃなく素直にMathematica ・Excelファイル外部からいじくりたければOpenpyxelじゃなくC#+EPPLUS ってこってすわ ちなみに、数値演算ってことならハナからPythonなんて検討するような対象じゃなく単なるゴミ糞レベルwww 素直にA100でも用意してCUDAでも使えばいい。 なんでゴミ糞Pythonとか流行ってんの?さっぱり理解できんわ。 こんなんWebScrapingとかWeb侵入以外とういうメリットあるの? あほが使う言語 == Python でFA? [] [ここ壊れてます]
743 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:06:02.22 ID:A9GFlV37.net] >>705 1=1==3と定義することに近いのがδ関数って知ってる? そう、数学科以外、測度論ってやらないんですよ 連続系の上に離散系を構築したりする。ラプラス変換の上にZ変換作ったりね そこで使われるのが ∫δ(x)dx =1 本来1点だけが非0の関数なんて積分しても0にしかならない δ関数ってのは 半直線の面積 == 1 にしますってわけわからん"約束"なんですよ 本来0においてのみ∞、それ以外0って関数は積分しても0にしかならない それをδ関数に限って1と"約束"するのがポ
744 名前:イントなんですね。物理においても工学においても こういうフェイクでも破綻しないってこじつけが超関数論 [] [ここ壊れてます]
745 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:33:33.46 ID:A9GFlV37.net] なんかPythonごとき使えるだけのPythonerがでしゃばってるけど C/C++/C#使えるプログラマが能力的にPython使えないなんてことないからwww ちょい使ってみてやっぱこりゃあかんってがっかりすることが多い Cxx使ってて補助言語としてPerl使う、 プログラムランチャーやらお気軽シェルスクリプトとしてはbashもPowerShellを使う、 数値計算電卓にはMatlabもOctaveもScilabも使う、 数式計算ならMathematica もMapleも Mupadも使える、 こういうユーザにとっては 世間でPython流行ってるけどこれ使う意味あんの?って話ね 言語処理系として流行ってる以外にどこがアドバンテージなの? ってこどですわ
746 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:46:03.00 ID:iUQBARfO.net] >>734 深層学習には何使うの?
747 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:54:22.45 ID:A9GFlV37.net] 空集合の扱いだけど ?と{?}は違うんでね オチャメなバクとごまかしてたんじゃ 正解に辿り着かないよwww - 集合族がせいぜいべき集合だと勘違いしてつまづく数学科連中が多いんだそ-な(数学セミナーで読んだ) 3要素からなる集合は最大8個 そこから考えられる集合の属は最大2^8=256個 そのなかで有限演算の結び、非加算合併演算に関して閉じている集合属は29個
748 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:56:43.89 ID:A9GFlV37.net] >>735 さぁ? こちとら所詮データベースに過ぎないAIなんて興味の対象外なんでね カルマンフィルタ、粒子フィルタ、ベイズ推定、Viterbiアルゴリズムってならコメントできるけどねwwww
749 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:57:59.36 ID:A9GFlV37.net] >>736 空集合が"?'になってるんで ?部分は空集合に置き換えて読んでね
750 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 15:58:08.77 ID:y95b8UUh.net] こりゃ貧乏人かな?
751 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 19:43:58.62 ID:1Vr2GJ3G.net] 空集合をうっかり忘れるのはお茶目なバグという以外に表現はないw ちなみに普通はファイと読むんだよw 集合論自体はそんな難しいものじゃないw Mathematicaは簡単な数式が解ける、グラフが簡単に描けるなどの理由で使う人は昔からいたけど、今はもっと複雑なことしたい人が多いから、数値計算にはRやPythonを使う人が多いと思うw 数理最適化分野も一部の商用ソフトを除けばPythonが多いと思うw pythonが使われるのは、単に中をC/C++で書いて外側をPythonにすると速くて扱いやすいからw 機械学習(NN)とDBは全く違うけど、もし自然言語処理に詳しいならword2vecの解説記事でも書いてたら世のためにでもなるんじゃない?w 俺も多少は分かるけどw
752 名前:デフォルトの名無しさん [2022/03/24(木) 20:35:43.32 ID:pklAHbiT.net] > pythonが使われるのは、単に中をC/C++で書いて外側をPythonにすると速くて扱いやすいからw 速いのは大半がC++で動いているからで、扱いやすいと言っても、ファイルからデータ 読んで渡すとかの部分だってC++でテンプレート使って書いた方が、Pythonより何倍も 速いと思うが?
753 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 21:17:04.78 ID:1Vr2GJ3G.net] あれでしょw やっぱりjupyterの使い勝手がいいんでしょw ちょっと動かして試してグラフ見て記録取ってみたいな試行錯誤したいときはw だからガッツリ時間がかかる部分はpythonのままじゃたまったものじゃないけど、取れたデータを試したり外側のロジック組むときはpythonのが楽という理屈だと思うよw
754 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 21:58:37.46 ID:XlqSDiYA.net] >>732 その位相空間というのを調べたら冪集合の冪集合のうち 全体と空集合を含み 各要素の和も積も所属していることらしいのでRustで作ってみました fn 和集合(集合_x: usize, 集合_y: usize) -> usize { 集合_x | 集合_y } fn 積集合(集合_x: usize, 集合_y: usize) -> usize { 集合_x & 集合_y } fn 空集合(_size: usize) -> usize { 0 } fn 全体集合(size: usize) -> usize { 冪(size) - 1 } fn 冪(size: usize) -> usize { 1 << size } fn 所属(集合: usize, 要素: usize) -> bool { 集合 & (1 << 要素) != 0 } fn 一覧(size: usize) -> impl Iterator<Item=usize> { 0..size } fn 要素一覧(集合: usize, size: usize) -> impl Iterator<Item=usize> { 一覧(size).filter(move |&要素| 所属(集合, 要素)) } fn main() { let input = ['a', 'b', 'c']; let n = input.len(); 一覧(冪(冪(n))) .filter(|&s| 所属(s, 全体集合(n)) && 所属(s, 空集合(n)) && 要素一覧(s, 冪(n)).all(|x| 要素一覧(s, 冪(n)).all(|y| 所属(s, 積集合(x, y)) && 所属(s, 和集合(x, y))))) .for_each(|s| println!("{}", 要素一覧(s, 冪(n)) .format_with(",", |s, f| f(&format_args!("{{{}}}", 要素一覧(s, n) .format_with(",", |index, f| f(&format_args!("{}", input[index])))))))); } これで{},{a,b,c} から {},{a},{b},{a,b},{c},{a,c},{b,c},{a,b,c} まで29個の位相が算出されました 入力を4つ ['a', 'b', 'c', 'd'] にすると355個の位相が算出されました これで合っていますでしょうか?
755 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 22:54:59.49 ID:9cbRkQeA.net] Rustのイテレータチェーンで宣言的っぽくシンプルに書けていいな
756 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 23:16:44.72 ID:1Vr2GJ3G.net] ついにこんなしょうもない日本語のコードをあげて自画自賛し始めたRust信者w そんな自明でしょうもないゴミコード書いてる暇があったらクソ速い正規表現エンジンでも作ってみたらいいのにw
757 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 23:20:36.69 ID:rSdCMchJ.net] >>745 Pythonで書いているとこの前レスしていたようだが本当に書けるのか? それとも>>732 が言うように書けないのか?
758 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 23:31:17.75 ID:Uh4MbO9+.net] ガイガー君はそういうコードを読めないし書けない C++で冪集合(subsets)作るのも結局できなかった
759 名前:デフォルトの名無しさん mailto:sage [2022/03/24(木) 23:46:12.18 ID:1Vr2GJ3G.net] 単発IDで自演大変だねw 出来ないのはお前だけw
760 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 12:11:43.15 ID:2aIwxdP0.net] 組み合わせ集合をそのまま保持しようとしてる時点で馬鹿だろ。 何の応用も考えてないの丸出しだな、競技プログラミングとかそっちのアホか。
761 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 12:14:33.84 ID:vqaIaLyp.net] >>749 ではお手並み拝見
762 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 12:40:40.57 ID:enyWdq4S.net] >>749 やめたれw
763 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 12:42:10.27 ID:w9HuCaKe.net] >>749 実コードを出そうぜ 出せなきゃ負けの世界
764 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 13:48:01.88 ID:enyWdq4S.net] >>749 お前の負けやで
765 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 14:03:38.99 ID:svg4cCIa.net] 枯れスレや 暇人どもの 糞の跡
766 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 14:31:21.44 ID:2aIwxdP0.net] なるほど、本気でこういうコードをありがたがる馬鹿って結構多いんだな。 そりゃrust厨がいい気になっちゃうわけだ。
767 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 16:28:42.69 ID:xgDHHux/.net] >>753 ID変え忘れたの?
768 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 17:17:18.88 ID:enyWdq4S.net] >>756 律儀にID変えてて草 お前のことやで
769 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 17:43:08.49 ID:Sr8uMs9s.net] >>755 何を問題にしている? >>743 なら単なる普通のイテレータのコードに見える 問題点を具体的に言えなきゃ何を言いいたいのかわからないよ
770 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 18:17:49.67 ID:+pS3/Cvs.net] >>755 複製オジさんのコードをありがたがってるやつなんておらんよ いつもの汚コードだから即NG
771 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 18:52:17.27 ID:eoZx8ezX.net] あれ複おじなん? それはともかく>>749 のコード見てみたいわ
772 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 18:59:38.47 ID:JpusqDH/.net] >>749 みんなこんだけ見せろって言ってんだよ 見せろよ 逃さねえぞ?