並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 106件

新着順 人気順

チューリングマシンの検索結果1 - 40 件 / 106件

  • コンピュータサイエンスが気になるプログラマに勧める書籍リスト - Rubyist Magazine 第61号 巻頭言

    コンピュータサイエンスが気になるプログラマに勧める書籍リスト Rubyist Magazine 第 61 号をお届けします。 (今回は内容に合わせて文体を変えております。ご了承ください。) さて、コンピュータサイエンス(以下「CS」)は知らないけど日々プログラミングしている、というプログラマの方はたくさんいらっしゃるかと思います。 そんな方でも、ふとCSを知ってる方がいいのかなとか、CSも知らないとまずいのかな……などと思い、改めて勉強してみたいけどとっつきが悪いとか、うっかり手にとったCSの教科書が何を言ってるかさっぱりで10秒で閉じた、という方もいらっしゃるかと思います。 それでもCSが気になるので、「本腰を入れて勉強をする前に、どういうことをやってるのか眺めてみたい」くらいの温度感の方向けに、CSに隣接するジャンルで、職業プログラマや趣味プログラマの人なら読めそうな書籍のリストを作っ

    • コードが読めるソフトウェア開発者 - As a Futurist...

      僕はコードを読むのは得意な方だけど、それが過ぎてコードを書かなくてもシニアソフトウェア開発者になってしまった。実はコードをちゃんと読めるソフトウェア開発者って希少価値が高いのではないか、と思ったので自分がどんな感じでシニアになったのかをまとめてみた。似た様な人の参考になれば幸いだ。 同意。僕は未だ書く方はほとんど機会なく成果もないけど、コードを読み尽くして、負荷試験や本番で挙動を把握し続け、メトリクスでとことん確かめていった結果、Sr. Engineer になれた。 https://t.co/KXtMdEaRr8 — Ryosuke Iwanaga (@riywo) April 16, 2021 コードを書かなくてもシニアソフトウェア開発者になれた 僕は今 Amazon の Sr. Systems Development Engineer という職種で働いている。いわゆるソフトウェア開発職

        コードが読めるソフトウェア開発者 - As a Futurist...
      • CTOが選ぶ、エンジニアのみなさんに個人的に読んでほしい本|藤村

        メリークリスマス!heyでCTOをやっている藤村です。ということで、これからエンジニアになる・いまエンジニアをしているみなさんに個人的に読んでほしい本をご紹介します。これを読んでおけばソフトウェア・エンジニアとして網羅的な基礎が身につく、とかいうセレクトではなく、あくまで個人的に読んでもらえると嬉しいな!というものを選びました。 ソフトウェア開発基礎編リー・コープランド『はじめて学ぶソフトウェアのテスト技法 』 テストの本です。昨今RSpec、XUnit系など自動テストのツールはすっかり普及し、ソフトウェアにテストコードをつけるのは当たり前の世の中になりました。しかし!テストケースをどう設計するか、何をテストすべきか、について体系的に学んだことがない、という方も実はいらっしゃるのでは。 この本はそういったソフトウェア・テスト一般についての教科書です。ここの知識はソフトウェア・エンジニアとし

          CTOが選ぶ、エンジニアのみなさんに個人的に読んでほしい本|藤村
        • 現代の僕「コンピュータが生まれた歴史知りたい」 - Qiita

          TL;DR コンピュータの歴史も何も知らなかった私が、「ありがとう、先人たちよ」と言えるぐらいまでコンピュータの歴史を調べたので共有したいと思います。 最初の動機 「コンピュータってどうやって動いてるんだろう」 あなたは、この疑問に自信を持って答えられますか? そして、仮にコンピュータを知らない人類がいたとして、「コンピュータとは何か」を説明できますか? 私はできませんでした。 もちろん、コンピュータを使うことはできます。 こうして、キーボードをカタカタを打つと、見慣れた文字となってディスプレイに映すことが出来ます。 しかし、「使えること」と、「それが動く原理を説明すること」 は途方もなく大きな壁で隔てられています。 この記事では、コンピュータが動く原理を、その歴史をたどることで探っていきます。 コンピュータの歴史をまとめつつ、 「コンピュータってどうやって動くの?」 に答えられるようなも

            現代の僕「コンピュータが生まれた歴史知りたい」 - Qiita
          • 暗号の歴史と現代暗号の基礎理論(RSA, 楕円曲線)-前半- - ABEJA Tech Blog

            はじめに このブログに書かれていること 自己紹介 注意 Part1 古典暗号 2つの暗号方式 スキュタレー暗号 アルゴリズムと鍵 シーザー暗号 原理 頻度分析 アルベルティ暗号 ヴィジュネル暗号 如何にしてヴィジュネル暗号は破られたか Part2 近代暗号 エニグマ エニグマの登場 エニグマの基本構造 如何にしてエニグマは突破されたか 前提条件 必ず異なる文字に変換される性質を利用 ループを利用 まとめ 参考文献 採用情報 はじめに このブログに書かれていること 前半 古代暗号から始まる暗号の歴史 エニグマの構造と解読法について 後半(後半ブログは こちら) RSA暗号の基本 楕円曲線暗号の基本 自己紹介 こんにちは!株式会社ABEJAの @Takayoshi_ma です。今回のテックブログですが、ネタに5時間程度悩んだ挙句、暗号を取り上げることにしました!暗号化手法の解説にとどまらず、そ

              暗号の歴史と現代暗号の基礎理論(RSA, 楕円曲線)-前半- - ABEJA Tech Blog
            • プログラミングスクール通うくらいならチートスキル身につけたほうが百億倍楽やぞ|erukiti

              皆さん異世界転生ラノベをご存知ですか?チートし放題な主人公たち好き勝手しやがってとか思っています?最近は「初級魔法で無双する」「生活魔法で無双する」みたいな話流行ってますよね。 でも、別に異世界なんていかなくても、転生しなくても、プログラミングのチートスキルなんて簡単に身につけられるんですよ。 ※ここでいうチートスキルは本来の意味のチートではないのでご注意ください。そっちのスキル身につけるのは楽しいかもしれませんが、本筋ではありません。 ※ここでいう「初級魔法」はラノベ読まない人の想像する初級魔法ではないことがほとんどなのでご注意を 特定のプログラミングスキルを身につけると、派生スキルが勝手にポコポコ生えてきたり、派生スキルの習得コストが圧倒的に安くなります。 たとえば、なにか一つのプログラミング言語をマスターした人なら、他のプログラミング言語を覚えるときのコストが低くなるというのは直感的

                プログラミングスクール通うくらいならチートスキル身につけたほうが百億倍楽やぞ|erukiti
              • ゆる言語学ラジオというロバストなコンテンツ - 本しゃぶり

                ネットでは長く活動できた者が強い。 ではどうしたら長く活動できるのか。 頑強さを生み出す『ゆる言語学ラジオ』の振る舞いが参考になる。 ジャパンポッドキャストアワードでW受賞 このブログでも何度かネタにしている『ゆる言語学ラジオ』が、JAPAN PODCAST AWARDSの「ベストナレッジ賞」と「リスナーズチョイス」を受賞した。 #ポッドキャストアワード 授賞式、無事終わりました!!! 結果は、リスナーズチョイスとベストナレッジ賞のダブル受賞でした!! この後21時からライブ配信で感想喋り倒すよ! pic.twitter.com/OzeKbjQfTr— ゆる言語学ラジオ (@yuru_gengo) March 17, 2022 チャンネル登録者数が10万人を突破するなど勢いがあったので、何かしら受賞するだろうとは思っていた。だがダブル受賞するとは普通に凄い。この受賞をきっかけに人気をさらに

                  ゆる言語学ラジオというロバストなコンテンツ - 本しゃぶり
                • プログラミング言語論入門 - riswu’s blog

                  第0章. なぜ Scala を使うのか? はじめに 本稿は、John C. Mitchell 氏らによる Concepts in Programming Languages を基に自身の見解を交え、私がなぜ Scala を好んで使うのかを論じた記事になります。 プログラミング言語の歴史 本題に入る前に、プログラミング言語の歴史について紹介します。 年代 言語・イノベーション 1950 Fortran and Cobol 1960 Lisp and Algol 1970 Abstract data types (Simula, C, SQL) 1980 Objects (Smalltalk, C++) 1990 Java, JavaScript, Python, Ruby これは、年代ごとに開発された言語およびイノベーションを表にまとめたものになります。ただし、この表には欠けている事柄があり

                    プログラミング言語論入門 - riswu’s blog
                  • 作って理解するOS x86系コンピュータを動かす理論と実装

                    2019年9月26日紙版発売 2019年9月26日電子版発売 林高勲 著,川合秀実 監修 B5変形判/736ページ 定価4,048円(本体3,680円+税10%) ISBN 978-4-297-10847-2 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 現在広く普及している,x86系CPU搭載のコンピュータ。 本書はOSの機能を実装しながら,その姿を明らかにしていきます。 第1部ではまず,ハードウェア,ソフトウェアの基本概念や,CPUとOSの関係など,コンピュータの核となる理論を丁寧に解説します。 第2部では,x86系コンピュータに対象を絞り,レジスタの構成や,

                      作って理解するOS x86系コンピュータを動かす理論と実装
                    • ゼロからわかる「PLC」入門、シーケンサとは?種類やメーカーは?(ビジネス+IT) - Yahoo!ニュース

                      世の中では、あらゆる場所で「機械」が使われていますが、さまざまな機械の制御に使われているのが、PLCと呼ばれる制御装置です。古くから使われている装置ですが今も進化を続けており、生産施設のIIoT(産業分野のIoT)化では基盤となる装置です。産業やビジネスではもちろん、私たちの生活を支える上でも重要な役割を果たしているPLCについて簡単に解説していきます。 【詳細な図や写真】PLCの仕組み(一例) ●PLCは、「あらゆる機械の制御装置」 PLCは「Programmable Logic Controller(プログラマブルロジックコントローラ)」の略称(注)で、日本語に直訳すると「プログラム可能な論理回路の制御装置」といったところです。三菱電機が提供するPLCである「シーケンサ」がPLCの代名詞として呼称されることも多く、PLCが通じなくてもシーケンサなら通じるようなこともあります。 注:同じ

                        ゼロからわかる「PLC」入門、シーケンサとは?種類やメーカーは?(ビジネス+IT) - Yahoo!ニュース
                      • 計算できるもの、計算できないもの

                        計算機による計算とは何か、計算できるものとできないものの境界はどこにあるのか―それを明らかにする計算理論は、計算機科学においてもっとも基本的、かつ重要なものです。本書では、概念の説明や、結果の証明にPythonプログラムを利用する実践的なアプローチにより、計算可能問題と計算不能問題、扱いやすい問題と扱いにくい問題があること、文章では簡単に表現できても計算機には解けない重要な問題が数多くあること、効率よく解ける問題と解けない問題があることなどを、計算理論の礎を築いたアラン・チューリングとリチャード・カープの論文の抜粋とともに解明します。チューリングマシン、有限オートマトン、万能計算、非決定性、チューリング還元、計算量クラス、NP完全性などのトピックをカバーしています。 謝辞 まえがき:教科書として使う方へ 全体像 1章 はじめに:計算できるもの, できないものとは 1.1 扱いやすい問題 1

                          計算できるもの、計算できないもの
                        • プログラミングの仕組みを理解する方法 - JavaScript勉強会

                          この記事は、プログラミングの専門教育(大学のコンピューターサイエンスなど)を受けておらず、独学でプログラミングを学習している方へ贈るアドバイスです。 =タイムマシンがあったら、過去の自分に会いに行って教えたい話です。 (自分で自分に話しかけるつもりで書いてみますw) プログラミング言語はひとつマスターすれば他もできる? - t-hom’s diary [プログラミング] [設計] [教育] プログラミングパラダイムは(1)命令型(チューリングマシン)、(2)宣言型(ラムダ計算)に大別される。両方理解したら全部カバーできる。言語は開発の背景(動機、歴史)を知るとなじみやすい。例:JSはScheme+Selfで誕生 2019/09/16 06:49 b.hatena.ne.jp ↑はてなブックマークでこの記事が目にとまりました。 なるほどと思いつつ、自分なりに考えてみたことをメモ。 勉強のコツ

                            プログラミングの仕組みを理解する方法 - JavaScript勉強会
                          • スタンフォードのコンピュータサイエンスの授業の感想(後編)|Rui Ueyama

                            2017年にも同じタイトルの記事を書いたのだけど、その後無事にスタンフォード大学院のコンピュータサイエンス学部を卒業することができたので、前回の記事以降に取った授業について、僕なりの感想をちょっとまとめたい。 CS255 暗号入門 (2018Q1)文字通り暗号についての授業。対称鍵暗号、公開鍵暗号、メッセージ認証、一方向ハッシュ関数などのトピックについて学ぶ。プログラミングではなく理論中心の授業。 宿題では、例えばこういう手順で暗号化される通信が安全であることを証明せよ、みたいな問題が出た。こういう問題は、もし安全ではないとしたらそれを利用して安全とされている暗号(AESとか)を破れてしまう、みたいな背理法で証明を行う。そういう巧妙な証明を考えるのは結構面白かった。あるいは逆に、このように暗号化された通信方式の穴を見つけよ、みたいな問題も出た。 AESやSHA256そのものがなぜ安全と思わ

                              スタンフォードのコンピュータサイエンスの授業の感想(後編)|Rui Ueyama
                            • イングランド銀行、現代コンピュータの生みの親「アラン・チューリング」氏を新50ポンド紙幣の顔にすると発表

                              イングランド銀行、現代コンピュータの生みの親「アラン・チューリング」氏を新50ポンド紙幣の顔にすると発表 イギリスの中央銀行であるイングランド銀行は、2021年末頃までに登場する新しい50ポンド紙幣のデザインに、アラン・チューリング氏の肖像を採用すると発表しました。 Introducing the face of the new £50 note - the father of computer science, Alan Turing.” Find out more https://t.co/pO7eu9nfHT #Turing50 #ThinkScience pic.twitter.com/RLmXD0QUQY — Bank of England (@bankofengland) 2019年7月15日 アラン・チューリング氏は、「チューリングマシン」と呼ばれる現代的なコンピュータの基本

                                イングランド銀行、現代コンピュータの生みの親「アラン・チューリング」氏を新50ポンド紙幣の顔にすると発表
                              • Clean Agileを読みました|食べログ フロントエンドエンジニアブログ

                                こんにちは。食べログのフロントエンドチーム の荒川です。 先日、「Clean Agile 基本に立ち戻れ」を読みました。 本日はこの本の要約を、私たちのチームの活動を交えてご紹介しようと思います。 著者の Robert C. Martin氏は、アジャイルマニュフェストの創案者の一人で、 国際的なソフトウェアコンサルティング、スキル開発を行っています。 https://agilemanifesto.org/iso/ja/manifesto.html 1章 アジャイル入門 アジャイルの歴史 アジャイルの歴史は5万年以上前、人間同士が協力して、共通の目標を達成しようとしたことが始まりと述べています。ソフトウェア開発においては、アラン・チューリングがチューリングマシンの論文を執筆した1936年の当時や、1946年にACE(Automatic Computing Engine)のために書いた最初のコ

                                  Clean Agileを読みました|食べログ フロントエンドエンジニアブログ
                                • 型付けは難しい

                                  ベン・フィードラーのブログより。 型検査と型推論 型検査とは、あるプログラミング言語で与えられたプログラムを実行し、すべての変数や式が正しい型を持っているかどうかを調べるプロセスです。例えば、文字列は文字列に代入され、算術式は数値のみを使用するなどです。一部の言語では型推論を提供しており、コンパイラに自分で正しい型を見つけるタスクも提供します。言語の特徴に応じて、型検査と型推論の問題は、些細なものから決定不能なものまで様々です。 一般的な用語 完全性 正しく入力されたプログラムを全てチェックできれば、タイプチェッカーは完了です。 健全性 正しく型付けされたプログラムのみを受け付けるものであれば、型検査は健全です。 決定可能性 任意の入力に対して、その入力が問題を満足するかどうかを有限時間で計算できる場合、決定問題は決定可能です。決定可能な問題の例としては、素数判定や充足可能性などがあります

                                  • 『アナロジア AIの次に来るもの』アナログ王国序説ーーデジタルを超えた次の時代を読む方法 - HONZ

                                    始まったばかりだと思っていた21世紀も、気がつけばすでに1/4が経過しようとしているが、われわれが未来の象徴のように思っていた「新世紀」は、9.11のテロで幕を開け、リーマンショック、3.11の未曾有の災害と続き、挙句の果ては新型コロナという感染症の流行と前世紀の冷戦の影を引きずるようなウクライナ戦争の勃発で先が見えない。 その一方でデジタル化やネット化が確実に進行し、スマホやSNSが広く社会に普及し続け、AIが将棋や囲碁で人間の世界チャンピオンを打ち負かし、ついには誰もが、絵を描いてくれたり、ChatGPTのようなどんな質問にも卒なく答えてくれたりするAIソフトを自由に使えるようになり、コンピューターの能力が人間の知力を上回るとされる「シンギュラリティー」がもうすぐ実現するという声も聞かれる。 多くの人にとって、こうした「デジタル」が象徴するイメージは、AIで仕事が奪われるという悲観論は

                                      『アナロジア AIの次に来るもの』アナログ王国序説ーーデジタルを超えた次の時代を読む方法 - HONZ
                                    • 学習用と実用のプログラミング言語

                                      学習用のプログラミング言語分類方法にもよるけど、プログラミングのパラダイム(考え方)は 命令型宣言型の2種類がある。 それぞれに根拠となる計算モデルがあり、細分化すると4種類に分類できる。パラダイム 分類 基礎となる計算モデル言語命令型 手続き型 チューリングマシン C、Java、Python、JavaScript 宣言型 問合せ型 関係モデルSQL宣言型 関数型 ラムダ計算Lisp、Haskell宣言型 論理型 一階述語論理Prolog (参考) anond:20230826113219 プログラミング言語って、似たり寄ったりだけど、それでも後から後から新しい言語が出てくるね。 それぞれのグループで代表的な言語を1個ずつ順番に学んでいけば、全ての種類を一通り制覇できる。 例えば、 PythonSQLHaskellPrologといった具合で。 各グループのどれか1個を知っておけば、同一グル

                                        学習用と実用のプログラミング言語
                                      • コンピュータの仕組み凄すぎワロタ : 哲学ニュースnwk

                                        2020年08月10日00:00 コンピュータの仕組み凄すぎワロタ Tweet 1: 以下、5ちゃんねるからVIPがお送りします 2020/08/09(日) 21:28:18.828 ID:mIBX8/C40 1と0の2進数でなんでも表現できるって凄い 2: 以下、5ちゃんねるからVIPがお送りします 2020/08/09(日) 21:28:45.260 ID:D7UjyGC9r なんでもはできないわできる事だけ 3: 以下、5ちゃんねるからVIPがお送りします 2020/08/09(日) 21:28:54.017 ID:QitZ+H4X0 俺の愛も表現できるの? 7: 以下、5ちゃんねるからVIPがお送りします 2020/08/09(日) 21:29:51.994 ID:8ASc3sxt0 >>3 無いものは表現出来ないぞ 10: 以下、5ちゃんねるからVIPがお送りします 2020/0

                                          コンピュータの仕組み凄すぎワロタ : 哲学ニュースnwk
                                        • 数学の雑学・小ネタで打線組んだ : 哲学ニュースnwk

                                          2021年02月05日08:00 数学の雑学・小ネタで打線組んだ Tweet 1: 名無しさん@おーぷん 20/10/23(金)19:15:24 ID:ToV ワイの独断と偏見で「面白い」「重要だ」「感動した」と思ったネタを選んだで 1(右) 四色定理 2(三) ハムサンドイッチの定理 3(二) 1+2+3+4+....=-1/12 4(一) モンティ・ホール問題 5(遊) 大数の法則 6(中) 巡回セールスマン問題 7(左) 二人零和有限確定完全情報ゲーム 8(指) ラムゼーの定理の系 9(捕) フェルマーの最終定理 先発 バナッハ・タルスキーのパラドックス 中継 ヒルベルトの無限ホテル 抑え ラッセルのパラドックス 監督 ゲーデルの不完全性定理 2: 名無しさん@おーぷん 20/10/23(金)19:16:10 ID:QcW エキゾチック球面 11: 名無しさん@おーぷん 20/10/

                                            数学の雑学・小ネタで打線組んだ : 哲学ニュースnwk
                                          • 自己増殖する機械とAI

                                            自己増殖する機械とAI 2022.05.14 Updated by Ryo Shimizu on May 14, 2022, 07:00 am JST コンピュータの初期の動作原理をまとめたとされる人物の一人、フォン・ノイマンは数々の伝説を持っていて、スタンリー・キューブリックの映画「博士の異常な愛情 または私は如何にして心配するのを止めて水爆を愛するようになったか」に登場する主人公「ドクター・ストレンジラブ」のモデルにもなっている。 フォン・ノイマンの晩年の研究テーマの一つが人工生命についてのものだった。 その当時、計算というかなり複雑な知的処理を行えるようになった機械はやがて自ら意志を持ち、生き物と同じように自らの複製を作ることができるだろうか。 機械が自己を複製することができるということを数学的に証明しようとしてノイマンが用いたのが、格子状に配置された細胞(セル)が、一つ一つは単純な

                                              自己増殖する機械とAI
                                            • 計算機に推論できる型、できない型 | Wantedly Engineer Blog

                                              本記事は Wantedly 21新卒 Advent Calendar の17日目の記事です。本記事では、いくつかの言語の型システムに実装されている様々な機能を紹介するとともに、それが型推論の実現性に与える影響について述べます。 最近静的型付き言語が盛り上がりを見せ、動的型付き言語の筆頭格だった Ruby もバージョン 3.0 で型解析ツールを導入するまでに至った一因には、きっと型推論の有用性が知られるようになったことが挙げられることでしょう。C言語で、関数ポインタを含んだ複雑なプロトタイプ宣言を書いている時ほどストレスを感じる時間はないし、かと言って Ruby on Rails で書かれたバックエンドを弄っている時に、型チェッカがあれば自明に発見できたであろうエラーでインシデントを起こすほど悲しいことはありません。プログラマが型を書かなくても静的な型チェックの恩恵を受けられる型推論の、何と

                                                計算機に推論できる型、できない型 | Wantedly Engineer Blog
                                              • オレオレアーキテクチャの電磁石式自作CPUをネットワークにした話 - Qiita

                                                自己紹介 こんにちは。ぱたろうです。Twitterはこちらです。 現在中学3年生のCPUアーキテクトです! 電磁石式自作CPUを複数機作って互いに接続させてネットワークにしました!! 未踏ジュニアでこういうもの↓を作ったり! それからYouTubeでもこういう映像を出したりしていました! 未踏ジュニアでの僕の発表はこちら 追記 : スーパークリエイターに認定されました!ありがとうございます! はじめに 日々の生活において、低いところからみればCPU、高い所からみればインターネット、というように、私たちは色々なテクノロジーに強く依存しています。 が、しかし、私たちの多くはCPUやインターネットの表面上の動きは理解していてもその深い中身までは理解していません。 私たちにとってCPUやインターネットといったものは ――アーサーCクラークの「高度に発達した技術は魔法と見分けがつかない」という言葉を

                                                  オレオレアーキテクチャの電磁石式自作CPUをネットワークにした話 - Qiita
                                                • プログラミング言語の歴史【訂正版作成予定】

                                                  ミスの洗い出しの完了と私の知見が更新出来次第、訂正版を作成します。時間がかかるため、しばらく以下の訂正一覧を使用ください。 この動画も継続して公開いたします。タイトルとサムネイルで区別予定です。 みなさんからのご指摘、大変参考になっております!!多数の誤情報大変申し訳ございません🙇 ***訂正一覧*** (誤00:53)コンピュータの由来は計算機→(正)機械ではなく計算する人間を指す言葉 (誤03:04)ペリーの航路→(正)太平洋側からではなく,慣れたインド洋経由で来航した (誤04:57)ニイタカヤマノボレヒト「マルフタ」ハチ→(正)ヒト「フタマル」ハチ (誤05:15)チューリングマシン→(正)ボンベというマシンで解読。チューリングマシンは無関係。 (誤06:55)機械語のかたまり→(正)1つの機械語。ビット列 (誤07:05)ドイツの位置ズレ→(正)右上が正しいドイツ (誤07:

                                                    プログラミング言語の歴史【訂正版作成予定】
                                                  • 量子力学を持ち出すだけでただちに自由意志の存在が救われるわけではない、という点について|山口尚|note

                                                    量子力学はいわゆる古典力学とは本質的に異なる世界像を提示するので、自由意志をめぐる問題を考察するさいにはそれなりに知っておくべきものだと言える。そして優先度は高い。じっさい自由意志の哲学に取り組もうとするさいには、例えば〈決定論的オートマトン〉と〈非決定論的オートマトン〉のパワーの違い、チューリングマシンの仕組み、無意識にかんするフロイトの理論などの、純粋哲学の外部の知見をいろいろと知っておいたほうがいいのだが、量子力学はそうしたリストの上位に入る。それゆえ私は、例えば《停止性問題を解決するプログラム[*]は存在しえない》という命題の証明を見た後などに、「では河岸を変えて量子力学のモデルを構築できるようになることを目指しまずはヒルベルト空間のことや自己共役演算子のことを勉強しよう!」などと提案したくなる――だいたい「波束の収縮」のモデルをつくることができるところまで進めば〈量子力学が自由意

                                                      量子力学を持ち出すだけでただちに自由意志の存在が救われるわけではない、という点について|山口尚|note
                                                    • TypeScript + Tynderから始める宣言的検証生活 - Qiita

                                                      皆さんは JSON Schema 使ってますか? 現在では、Web APIのペイロード定義・検証、モックサーバー作成、ユーザー入力フォーム検証、設定ファイルのスキーマ定義・検証・IDEでのエラー表示など、多くの場面で、また多くの言語でライブラリが整備され利用されています。 JSON Schemaの強み Internet draftのフォーマットで仕様が公開されている 多くの言語での多くの実装(言語によっては複数)が存在する 1回書けば、フロントエンド、複数のバックエンドすべてで利用できる可能性が高い 代替実装が存在すると競争原理が働く JSON Schemaの嫌いなところ 見辛い 書き辛い 数行の小さなスキーマならばともかく、JSON Schemaって本当に苦痛。汎用のデータフォーマットを人が直接記述するレイヤーのDSLにするのは正直辛い。ヒューマンリーダブルだからといって人が読めるとは限

                                                        TypeScript + Tynderから始める宣言的検証生活 - Qiita
                                                      • 「アルゴリズム」という言葉の由来は?

                                                        アルゴリズムという言葉はGoogle検索やSNSでの分析や、特定のタスクを実行して処理するプログラム、人工知能の開発などで私たちの生活に不可欠です。だれもが聞いたことある「アルゴリズム(Algorithm)」というワードがどこから来たのかという由来と歴史について、メルボルン大学でデジタルヘルスの研究員を務めるデビー・パッシー氏が解説しています。 Why are algorithms called algorithms? A brief history of the Persian polymath you’ve likely never heard of https://theconversation.com/why-are-algorithms-called-algorithms-a-brief-history-of-the-persian-polymath-youve-likely-n

                                                          「アルゴリズム」という言葉の由来は?
                                                        • UoPeopleでComparative Programming Languages(プログラミング言語比較論)を修了した - えんぴつぶろぐ

                                                          オンライン大学 University of the People でComparative Programming Languages (CS4402) を修了したのでその感想を書きます。 これまでのUoPeople関連の記事はこちら: UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ はじめに プログラミング言語のパラダイムの変化を追いながら、命令型言語と非命令言語(関数型や論理型など)の特徴を学び比較を行うコースです。 各言語の歴史や特徴だけでなく、コンピューターシステムのアーキテクチャやコンパイルの仕組みなども触れるので、今までのCS系コースの総復習的な内容だと感じました。 #UoPeople プログラミング言語比較論(#CS2204)の感想。 言語の比較だけじゃなく今までのCS系コースの総復習的な内容だった。 ノイマンアーキテクチャ、チューリングチャーチ理論から始まるプロ

                                                            UoPeopleでComparative Programming Languages(プログラミング言語比較論)を修了した - えんぴつぶろぐ
                                                          • カリー化と部分適用

                                                            カリー化と部分適用 先日同僚にカリー化を説明する機会がありました.その際に,簡潔に説明に適した自分用の資料があるといいなと思いましたので,こちらの記事を書くことにしました. この記事ではカリー化と部分適用について解説します.歴史等には触れずにただその内容について述べます. 混同しやすいという情報があるのですが,割と違うレイヤの話なのでなぜなのかは不明ですが,関連性に関する私見も末尾に書いておきます. カリー化 カリー化 (Currying)[1]とは 複数の引数を取る関数を,単一の引数を取る関数に翻訳する手法 のことです. 簡単な例を見ます.以下のような2つの引数を持つ関数を考えます. const add = (a: number, b: number) => a + b; console.log(add(1, 3)); // 4 関数を値のように返す関数のことを高階関数と呼びます. カリ

                                                              カリー化と部分適用
                                                            • ChatGPTで注目、AI時代を予見した天才数学者チューリング

                                                              数々の功績を残したアラン・チューリングだが、第二次世界大戦中は英国軍の暗号解読者として活躍した。ナチスドイツに対する連合軍の勝利に貢献した功績をたたえ、戦時中に暗号解読本部が置かれていたブレッチリーパークに、石板で作られた彼の像が建てられている。(PHOTOGRAPH BY MATTHEW OLDFIELD EDITORIAL PHOTOGRAPHY, ALAMY STOCK PHOTO) 機械は思考することができるのか。強力な人工知能(AI)や、人間と会話ができる深層学習マシンChatGPTの登場によって、最近では多くの人が疑問を抱くようになっている。ChatGPTは、時には人間を惑わすこともあるといい、この技術を使ったある検索エンジンのチャットボットは、ユーザーに対して愛を告白したと話題になった。 英国人の数学者で暗号解読者、コンピューター科学者でもあったアラン・チューリングは、機械は

                                                                ChatGPTで注目、AI時代を予見した天才数学者チューリング
                                                              • YAPC::Hirosima 2024でコードゴルフコンテストを開催しました 〜解説編〜 #yapcjapan - KAYAC engineers' blog

                                                                こんにちは、技術部の谷脇です。 去る2月10日に行われたYAPC::Hiroshima2024ですが、みなさまはいかがだったでしょうか。私は参加して大満足であり、運営の方々に大感謝させていただきます。 さて、カヤックではゴールドスポンサーと椅子スポンサーをしていたというのは開催直前に出した記事で述べさせていただきました。 techblog.kayac.com この記事では伏せられていた、椅子スポンサーのPerlbatrossですが、この記事ではPerlbatrossの内容紹介と問題解説をしようと思います。 Perlbatrossとは YAPC::Hiroshima2024の開催期間中にコードゴルフの問題を出していました。以下は椅子スポンサーで貼らせていただいた問題です。 Q1. Split of Graphemeの問題 さて、これだけではなく、QRコードにアクセスすると実際に問題を解けるサ

                                                                  YAPC::Hirosima 2024でコードゴルフコンテストを開催しました 〜解説編〜 #yapcjapan - KAYAC engineers' blog
                                                                • 知識ゼロでもわかる!歴史から紐解く人工知能(AI)のこれまでとこれから

                                                                  はじめに本記事は,題名の通り「人工知能 (AI)」のこれまでの軌跡と,展望についてまとめた記事です. 知識ゼロでもわかる,と言っていますが多少の数学的知識があるとより深く内容が理解できるかと思います. なお,上記目次を見ればわかるように,それなりに長いです. 後で読む場合はブックマークにでも入れておいてください. 長編ではありますが,噛み砕いて読みやすいようには頑張って書いていきます. 読み進めていただく前にいくつか注意すべき点があります. 本記事の対象者人工知能について興味はあるけどイマイチ実態がわからない人人工知能について少し知識はあるものの,正直よく分かっていない人人工知能技術を業務で使用したことがあるけれど,歴史とか今後どうなっていくか等「全体像は意外と知らないかも」と思った人理系のことはよくわからないけど,人工知能の雰囲気を掴んでちょっと雑学を増やしたい人筆者について最初に,そも

                                                                    知識ゼロでもわかる!歴史から紐解く人工知能(AI)のこれまでとこれから
                                                                  • コンピューター教育が一変する――「計算」をより広く捉える「計算パラダイム」の到来に備えよう | Mugendai(無限大)

                                                                    Sponsor Content Presented By ※日本IBM社外からの寄稿や発言内容は、必ずしも同社の見解を表明しているわけではありません。 コンピューターのほとんどは、1936年に英国の数学者アラン・チューリングが考案したモデル(チューリング・マシン)を原型とする0と1が並んだビット列などで演算を行う。 その一方、脳の構造を模した深層学習(ディープ・ラーニング)という、チューリング・マシンとは異なる計算方式が新たに登場。さらに量子力学、化学反応、波動、生物進化など「自然計算」と呼ばれる分野も注目され始めた。 そんな中、「計算」の定義を拡げた新しい「計算パラダイム」を主張するのが、株式会社 Preferred Networks(PFN、プリファードネットワークス)フェローで、元日本IBM株式会社東京基礎研究所長の丸山宏氏である。「社会や自然界は複雑な構造を持ち、多くのパラメーター

                                                                      コンピューター教育が一変する――「計算」をより広く捉える「計算パラダイム」の到来に備えよう | Mugendai(無限大)
                                                                    • web3 について書く理由 - blog.8-p.info

                                                                      私は web3 は基本的にダメだと思っていて、Letter in Support of Responsible Fintech Policy にも同意して、署名している。 一方で、Web 2.0 時代によく読んでいた、渡辺千賀さんは暗号通貨勉強会をやっているし、UIEvolution の中島さんは Nouns DAO を高く評価している。中島さんは AWSやAzureどころか、IPFSにすら頼らないフルブロックチェーンのスマートコントラクトは、ブロックチェーンそのものが無くならない限り未来永劫、動き続けるのです。その事実とそれが意味するところに気づいた時には、稲妻の様な衝撃が走りました。 と書いていて、その、インターネット上に巨大なデータベースとチューリングマシンが出現していて、それがかっこいいな、という気持ち自体はわかる。 あるいは、伊藤穣一さんも日本国内では web3 の人としての活動

                                                                      • 「コップに水を入れて」という指示がAIにとって超複雑な理由(2020年11月11日)|BIGLOBEニュース

                                                                        AIにはどこまで可能性があるのか。作家の川添愛氏は「実は人間が普段なにげなくやっている行為は非常に複雑。それをAIに対して適切に定義することは非常に難しい」という——。(第2回/全2回) ※本稿は、川添愛『ヒトの言葉 機械の言葉』(角川新書)の一部を再編集したものです。 写真=iStock.com/Ociacia ※写真はイメージです - 写真=iStock.com/Ociacia ■「定義された課題」以外はこなせない AIについてよく尋ねられる質問に、「AIには○○ができますか?」というものがあります。 「AIは言葉を理解できますか?」「AIは感情を持つことができますか?」「AIには人間のような思考ができますか?」「AIに哲学はできますか?」……などなど、挙げていけばきりがありません。しかし、こういったことについて考える前に、まずはっきりさせておかなくてはならないことがあります。 それは

                                                                          「コップに水を入れて」という指示がAIにとって超複雑な理由(2020年11月11日)|BIGLOBEニュース
                                                                        • 現代のコンピューターにおけるスタンダード「ノイマン型」を初めて実現したのは、かの天才「フォン・ノイマン」ではなく「もうひとりのノイマン」だった…!?

                                                                          フォン・ノイマンという天才の名前に聞き覚えは無いだろうか。数学、物理学、気象学、経済学など恐ろしいほど幅広い分野にわたって活躍した、間違いなく歴史に残る偉人のひとりである。 そのおびただしい功績の中でも特に記憶に残りやすいのが、彼の名前がそのまま名づけられている「ノイマン型コンピューター」という構造を生み出したことだろう。現在のコンピューターの大半が、彼が1945年に執筆した報告書の中で提示したアーキテクチャをベースとしている。 こういったことから「フォン・ノイマンは現代コンピューターの父だ!」と短絡的に受け止めてしまいがちだが、現実はそれほど単純ではないようだ。なにしろ、フォン・ノイマンが自ら開発した文字通りの「ノイマン型」コンピューターである「IASコンピューター」は、いかなる点でも世界初のコンピューターなどではないという。 では、フォン・ノイマンのコンピューター史における功績は過大評

                                                                            現代のコンピューターにおけるスタンダード「ノイマン型」を初めて実現したのは、かの天才「フォン・ノイマン」ではなく「もうひとりのノイマン」だった…!?
                                                                          • これが現代の科学力……! 「スーパーマリオメーカーはチューリング完全」はなぜたった1年半で証明されたのか

                                                                            前のページへ 1|2 そして、チューリング完全へ…… さっきの64ビット加算器の動画なのですが、入力はマリオがブロックを頭突して行っているんですね。一方、出力は2種類のオブジェクトで表現しているんですね(「ファイアフラワー」を0、「Pスイッチ」を1とする2進数)。 これだと加算の結果を使って次の計算をしようと思っても、マリオを操作して変換する必要があります。すごく面倒くさい。 ですから、入力も出力も「POWブロック」が0、「ブラックパックン」が1ということにして、フォーマットを統一しようと。 この2つのオブジェクトには、マリオの世界では物理的な性質に違いがあるんですね。POWブロックが跳ねるブロックに当たってもブラックパックンは跳ねないとか、両方跳ねるときも跳ね方が違うとか。この物理的な性質を生かすことで、コンパクトなギミックで2進数の計算ができる、と。 このやり方の一番良いのは、入力と出

                                                                              これが現代の科学力……! 「スーパーマリオメーカーはチューリング完全」はなぜたった1年半で証明されたのか
                                                                            • 驚異の量子コンピュータ - 岩波書店

                                                                              ひと昔前まで実現不可能とされてきた量子コンピュータを取り囲む環境は短期間のうちに激変した.従来の古典コンピュータを超越しうる不思議なからくりとは何か.いかなる歴史を経て現在に至り,どんな未来が待ち受けているのか.気鋭の若手研究者として体感している興奮をもって,わかりやすくかつ科学的な正確さを期して解説する. はじめに 第Ⅰ部 物理学とコンピュータの歴史 1章 量子力学の誕生 古典物理学の限界/電子の奇妙なふるまい/物質(粒子)と波の統一/量子の性質 2章 コンピュータと物理法則 コンピュータの父バベッジ/アナログとデジタル/チューリングマシンの登場/情報科学の発展/デジタルコンピュータの発展/ムーアの法則とその限界 3章 量子コンピュータの夜明け前 情報科学と物理学の再会/計算にエネルギーは必要か?/古典万能計算/量子力学の可逆性に着目/量子コンピュータの登場 第Ⅱ部 量子コンピュータの仕

                                                                                驚異の量子コンピュータ - 岩波書店
                                                                              • 未来を発明する方法 1 - FoundX Review - 起業家とスタートアップのためのノウハウ情報

                                                                                Sam この一週間Alan Kay をお招きしています。Alanさんは2つの講義を行っていただく予定です。Alan Kay は私たちよりも未来を発明することについて忘れてしまっていたり…? Alan K それは最悪の講義になってしまいますね。けど… Sam Alanは、創意に富む本物の世界的専門家であると思っています。私たちがすばらしいコンピューターサイエンティストのグループと共に最近復活したXerox Altoは彼が開発しました。Alanさんは私がこれまであった中でも最も思慮深い方です。特に、組織を作りイノベーションを起こすことに関して。来てくれて本当にありがとうございます。講義をとても楽しみにしていました。よろしくお願いします。 Alan K ありがとうございます。思慮深いのは、マスターを見なければならないからです。私は基本的に研究者ですが、私よりもはるかに優れる管理者が行うプロセスに

                                                                                  未来を発明する方法 1 - FoundX Review - 起業家とスタートアップのためのノウハウ情報
                                                                                • 週刊Railsウォッチ(20210209後編)Rubyでミニ言語処理系を作る、Kernel#getsの意外な機能、CSSのcontent-visibilityほか|TechRacho by BPS株式会社

                                                                                  週刊Railsウォッチについて 各記事冒頭には🔗でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 お気づきの点がありましたら@hachi8833までメンションをいただければ確認・対応いたします🙇 TechRachoではRubyやRailsの最新情報などの記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ) 🔗Ruby 🔗 Rubyでミニ言語処理系を作る 元記事: RubyでオレオレVMとアセンブラとコード生成器を2週間で作ってライフゲームを動かした話 -

                                                                                    週刊Railsウォッチ(20210209後編)Rubyでミニ言語処理系を作る、Kernel#getsの意外な機能、CSSのcontent-visibilityほか|TechRacho by BPS株式会社