読者です 読者をやめる 読者になる 読者になる

Diary over Finite Fields

515ひかるが書き溜めたメモとコラムと雑記

当たり前なこと

コラム

今から当たり前のことを書く1。線形代数は大事だ。

さて、線形代数は大事だという主張に対して異議を主張する人はおそらくほとんどいないだろう。線形代数は純粋数学に限らず、応用数学の代表格であるところの統計学、物理学、経済学、コンピューターの内部などありとあらゆる場面で使われている。線形代数の重要性は今更語ることもないだろう。

その当たり前が非自明なケースもある、という話だ。

正しいことはだいたい当たり前なこと

大雑把に言って、正しいことはだいたい当たり前なことである。たとえば「ダイエットに一番いいのは適度な運動と、適量の食事、そして規則正しい生活習慣が大切」というのは知っているはずだし、正しいと、そして当たり前だと思っているだろう。

しかし一方で、その当たり前から目をそらしテレビなりインターネットなりの「エッ」と驚く「当たり前でないこと」に飛びついて物が売れることもある。人は当たり前のことよりもインパクトのあることに飛びついてしまうこともあるのだ。

もちろん、最新の研究結果で過去何十年にもわたって信じられていたことが否定されることもある。その場合、当たり前ではないことでも正しいケースもある。だが、もしそれが本当に正しいのであれば数十年とかかっても当たり前になっていく。かつて線形代数が数学の世界でも当たり前でなかったように。

当たり前なことのほうが伝わらない

先日、ポスト・トゥルースについて書いたが、この「当たり前なこと」以上に「一見意外だが信じられそうなこと」(それが真実であるか否かはともかく)に流されてしまう現象というのはダイエットに留まらず様々なところで見かける現象ではある。

hikaru515.hatenablog.com

当たり前のことのほうが地味で、ウケが悪く、いくら強調しても伝わらない。正しいことは喧伝してもなかなか広まらないが、胡散臭いことはすぐに流布する。

なぜだか考えてみると、自分の行動から考えてみればその情報のインパクトが大きいからなのだろう。例えば、「Fermatの最終定理はもっと簡単に証明できる」と言うと「絶対に間違っているだろ」と思いつつも見に行ってしまう自分がいたりする。Fermatの最終定理の証明の本物にはその論文をダウンロードしようと思ったことさえないのに。

情報を正しさではなく、そのインパクトで見る、見ないを決めているのだ。つまり、当たり前のことは地味で人々の注目を集めず、そもそも書いたとして見られない。一方で、正しさはともかくインパクトのあるものは多くの人に閲覧され、その一部の人に信じられ流布される。

そう、今や情報は「資本主義自由市場経済で販売されている商品」なのだから。

当たり前だから言う

当たり前なことは言う必要がなかった。当たり前という共通の認識を持てていたから。

しかし今や、当たり前だからこそ、伝えていかなくてはいけない時代なのではないだろうか。安易な間違った情報に流されないために、正しいことを、当たり前だと思いながらも発信しなければならないのではないか。

線形代数はありとあらゆる数学の、ひいては物理、情報、経済学の基礎となるような理論であり、これを学ばずして数学に関わる理論を学ぶことは難しいのだと。

あなたが読んでいるこのブログは一個人が気まぐれで書いているものであり、信用するかどうかはあなたの意志に任せ、自己責任なのだと。

本当に大切なことは、当たり前なことの中にあるのだと。

Footnotes

1 といってもいつも当たり前のことしか書いていない。

「自分の言葉」を書かない人

コラム 雑談

こんな人って本当に居るんだな、って話。

僕はこのブログなり、他の場所なり、文章を書くときには自分の言葉で書くことを重視している。この記事も特に参考にするものはなく、テキストエディタだけ開いて書いている。知識系やコマンドを書くときは調べたりコピペしたりすることもあるが、最近は思っていることを書くことのほうが多いので、思うためには何かを参考にする必要もない。何も見ないで思ったことをそのまま文章にしている。

自分ではない誰かがやったことを自分がやったように見せない、という当たり前のルールを守るためである。

僕は卒業論文1を書いたときに、基本的なルールとして剽窃はしないこと、すなわち「自分がやっていないことを自分がやったように見せること」はしないように教わった。自分がやったことと、自分ではなく他者がやったことはその文章だけで判断できるようにすること、すなわち他者の業績は適切な引用をして自分の業績ではないことを明確にすること2。それが例え研究者にはならなくとも文章を書くときに絶対に守らなければならない基本的なルールである、と。

ついでに言うと、文章を書いているときに他者の言葉を混ぜるのはそれなりの技量が必要なことで、引用が多すぎる文章や不適切な引用が混じっている文章はかえって読みにくかったり一貫性を欠いていたりする。だから僕はあまり引用をしない。多くの場合、自分で書くよりも引用した方が頭を使うからだ。

上に書いたのはあくまでも大学、つまりアカデミアの話だと思われるかもしれないが、他者の実績や作品に敬意を払うというのは、目上の人に敬意を払うレベルの常識だと感じている。

だから、僕には不思議なのだが他者が書いたものを切り貼りして自分が書いた文章として納品あるいは公開できるのが僕には不思議でならない。仕事であっても、Qiitaの記事であっても、なんでも。

例えば、同じ会社の人が過去に作った文章をほぼそのままの形で(僕の著作物でなく会社が作ったものとして)流用するというなら理解できるし、そのほうが仕事は早く終わるだろう。これは別に問題はないと思う。

だが、誰かの書いた見出しに合わせ、別の誰かの書いた内容を切って箇条書きにして貼る、これのどこか「あなたの仕事」なのだろうか。あるいは「あなたが書いた記事」なのだろうか。まずとても読むに耐えないし、書いた本人でさえ理解していないとバレバレである。そんな文章をよく公開できるな、などと思う。

時間がない、締め切りが近い、そんな言い訳で自分を騙せるような人間にはなりたくない、そんなことを思う年度末。

Footnotes

1 とは言っても名ばかりで一度くらいしか教員に読まれていないが。

2 引用文は2字下げしたり、斜体フォントに変えたりするのは形式の違いで筆者の言葉か筆者以外の言葉かを明らかにするためのものだと思っている。

孤独と数学

雑談 読書

なんか大それたことを書くようなタイトルだが、そんなつもりは毛頭ない。

最近、Grothendieckの著作、『収穫と蒔いた種と 数学者の孤独な冒険』を買って読んでいる。といっても、まだプロムナードさえ読み終わっていない。

Grothendieck自身が、本書のことを急いで読むものではないといっているので、自分のなかで少しずつゆっくりと読んでいこうと思う。ストレスにならない程度になるべく考えるようにしながら。

数学者の孤独な冒険―数学と自己発見への旅

数学者の孤独な冒険―数学と自己発見への旅

続きを読む

Spacemacsでlatexmkを使う

エディタ LaTeX

はい、いつもの自分用メモです。結構自分用メモは使わなくなった環境についての記事がアクセス数上位を獲得していたりして、最近あまり書きたくないなと思っていたりもするのですが。

それでも忘れるたびに同じサイトを参照するのは嫌なので書きます。

前提

ここでは TeXLive をインストールするとかいう話はしません。例のごとく、最新の TeXLive を手に入れたければこことかを参考に。もちろんTeXWikiも見ましょう。

あと Spacemacs をインストールするという話もしません。まぁ Spacemacs を使っている人しかこんな記事読まないでしょうから。

あと latexmk コマンドを使う設定をしますが、latexmkの設定についてはやっぱり書きません。 ~/.latexmkrc に書く内容などはたとえば ここ とかを参照してください。

想定している設定

  • Spacemacs の LaTeX Layer をそのまま利用する。
  • コンパイルには latexmk コマンドを使う。
  • C-c C-clatexmk -pvc を動かす。

Layer の設定

Spacemacs では Layer 機能を使ってその言語を使う際に有益なパッケージなどをあらかじめまとめてインストールしてくれます。LaTeX でも Layer があって、 LaTeX Layer を使用する設定を書くのがまず最初にやることです。

~/.spacemacs を編集しますが、Vim keybind で設定している場合は SPC f e d と入力すると目的のファイルを開くことができます。

そのファイルの中に、次のようにいろいろと書かれている場所があるかと思います。

dotspacemacs-configuration-layers
'(
  ;; auto-completion
  ...
  )

この () 内に次のように追記します。

(latex :variables latex-build-command "LatexMk")

ここで、 latexmk でも LaTeXmk でも LaTeXMk でもないことに注意。 LatexMk が正しいです1

そして .spacemacs を再評価する。 再起動でもいいですが、 SPC f e R で設定ファイルを同期できるので、せっかくなので使いましょう。

これで例えば AUC-TeX などの LaTeX 環境パッケージがインストールされるはずです。

コンパイルの方法

LaTeX ファイルを開いた状態で、 SPC m b あるいは SPC m a とうつと latexmk コマンドが起動し、有効な .latexmkrc に書かれている内容のコンパイルを実行するはずです。

一方で、筆者のように latexmk -pvc を実施したいという人もいるでしょう。正直うまい方法はまだ発見していないのですが、一応行う方法は発見したので書いておくことにします2

ここのコードは、 TeXWiki の AUC-TeX の設定 のコードを参考にして書きました。 ~/.spacemacs の下の方に、

(defun dotspacemacs/user-config ()
  "Configuration function for user code.
This function is called at the very end of Spacemacs initialization after
layers configuration.
This is the place where most of your configurations should be done. Unless it is
explicitly specified that a variable should be set before a package is loaded,
you should place your code here."
)

となっている箇所があると思う。これを次のように編集します。

(defun dotspacemacs/user-config ()
  "Configuration function for user code.
This function is called at the very end of Spacemacs initialization after
layers configuration.
This is the place where most of your configurations should be done. Unless it is
explicitly specified that a variable should be set before a package is loaded,
you should place your code here."
  (add-hook 'LaTeX-mode-hook
    (function (lambda ()
      (add-to-list 'TeX-command-list
        '("Latexmk"
          "latexmk -pvc %t"
            TeX-run-TeX nil (latex-mode) :help "Run Latexmk"))))))

これで、LaTeX のソースファイルを開いたときに、 C-c C-c というコマンドを実行し、メニューから Latexmk を実行すればコンパイルされ、プレビューの起動とファイル変更の監視、自動コンパイルモードになります。

現状、 SPC m a では上の設定をしても監視モードにはならないです。理由はわからないのでわかる人は教えて欲しかったりします。

追記

現状、 SPC m a では上の設定をしても監視モードにはならないです。理由はわからないのでわかる人は教えて欲しかったりします。

と書いてますが、コマンド名が間違っていただけでした。上で散々 LatexMk であると強調しているのに、TeXWiki からうつしてきたコードが Latexmk になっています。間違いです。

<feff>(defun dotspacemacs/user-config ()
  "Configuration function for user code.
   This function is called at the very end of Spacemacs initialization after
   layers configuration.
   This is the place where most of your configurations should be done. Unless it is
   explicitly specified that a variable should be set before a package is loaded,
   you should place your code here."
   (add-hook 'LaTeX-mode-hook
     (function (lambda ()
       (add-to-list 'TeX-command-list
         '("LatexMk" ; ここの名前を変更
           "latexmk -pvc %t"
            TeX-run-TeX nil (latex-mode) :help "Run Latexmk"))))))

これで SPC m blatexmk -pvc ができるようになります。しかしなぜ気づけなかったんだ。。。

Footnotes

1 筆者はここで時間を30分ほど無駄にしました。

2 Spacemacs の設定で行う方法や、 SPC m a などのコマンドを latexmk -pvc に置き換えられる方法をご存知の方は教えて欲しい。。。切実に。 追記しました。

学歴コンプレックス

雑談 短い記事

卒業シーズン

卒業シーズンである。僕も一年前は卒業式に出席する側だった。晴れて大学院に入学し、いつのまにか休学して働いていた。悔いてはいないが、不思議なものだと感じている。

大学に入学する人、博士課程前期、あるいは後期課程に進学する人、就職する人、この時期は色々な人が動く時期だ。該当者の読者にはお祝いの言葉を贈ろう、おめでとう。めでたいことである。

一方で少しだけ思うところがある。僕はあくまでも中退した人間なんだな、と思うのである。

続きを読む