2024年1月7日日曜日

最近使っているツール

あけましておめでとうございます. 年明け早々に大変な災害や事故が発生して色々大変なことになってしまいましたが私の方は何事もなく平穏に過ごしております. この状況下において災難に遭われた方々の一日も早い快復をお祈りします.

さて, 昨今はchatGPTなど, 我々の取り巻く技術的進歩の状況は目まぐるしく変化しており, かなり数学に近い分野にいる私はそのようなツールに対し必要性を感じなかったために特に利用していませんでした. 使っているのはせいぜいoverleafとgoodnoteくらいでした.

一方で便利なツールがあるのに使わないのは非常にもったいない気がするので去年くらいから徐々に色々と導入しています. 中には特に合わないものもあったのですが, 色々紹介したいと思います.

1. Logseq

Logseq は勉強した内容をメモしておくツールで, 2023年の4月から使っています. iCloud上にファイルを置いておくことで複数のデバイス間で同期することができ, iPadからもアクセスできます.

例えばこちらの記事を執筆する際は次のようなメモを作成していました.


特徴としては, 文章というよりかは箇条書きを駆使した階層構造でメモしていきます. 特にブロック記法というものの中にQuoteというものがあり, 上図のDefinitionのような枠を気軽に作れるのが使っていてよかったです. 読んだ論文をまとめる際にも使っており, このようなメモを残しています. メモ間にリンクもはっています.


日誌という機能もあり, 気軽に日記を残すことができます.



2. Notion

Notionはメモ, タスク管理, ドキュメント等を行うオンラインサービスです. Legseqと比べるとカラフルで機能が豊富です. 例えば海外旅行などにいくときにこのようなページを作っていました.


オンライン上でノートが保存されているため, デバイス間の共有も非常に楽です. これまでは生活で使っていたのですが, 論文執筆をする際にTODOやメモを書いたり関連研究をまとめておくのに便利だなぁと気づいたので最近は積極的に利用しています.



それぞれの既存研究のリンクにはそれらをまとめるサブページを設けることもできます.

自分の中では
  • Logseqは勉強する際に書く気軽なメモ
  • Notionは論文を書くときのメモ
という立ち位置です. Obsidianというのもあるらしいのですが, どちらの方が良いとかはわかりません.

3. Visual Studio Code

Visual Studio Code (VS Code)は統合開発エディタです. 要するにプログラムのソースコードを書くためのエディタです. 講義の時を除いて自分は普段はプログラミングをしないので必要性を感じなかったのですが, VS Codeには様々な拡張機能を追加することができ, 実は論文執筆にも利用することができます.

特にoverleafに繋げるプラグインが存在しており, これを使ってoverleaf上のファイルの編集も行えます. ほかのプラグインと併用してスペルチェックなどができる上に, LaTeXのコンパイル時間が早くなったりして便利です.

設定が少し面倒なのですが, 導入の解説をしてくれるページが色々あるので, VS Codeをインストールした初日になんとかoverleafと繋げて文章を編集するところまでもっていけました.

個人的にはCookieでログインする, という手順で少し詰まった (公式ドキュメントではFireFoxの画面で説明されてた) のですが, google chromeでは右上の3点が縦に並んでいるボタンから「その他のツール」→「デベロッパーツール」と進んでいき, 

ApplicationというタブにあるCookieのところから値をコピーしていけば良いです.

拡張機能の中にはDeepLやGithub Copilotなどがあり, これらと連携することで英語執筆が非常に楽になるそうです (自分はまだ試していない). 

今後使おうと思っているもの

最後に, 自分が気になっているものについて列挙しておきます. 「こういうのがオススメ」というのがありましたら教えていただけると嬉しいです.
  • draw.io
    • 今まではkeynoteで図を作ってたけど, いちいち開くのは面倒だと思っていた.
    • draw.ioを使えば気軽に図を描ける. グラフとかフローチャートが描きやすそう.
    • VS Codeにプラグインがある.
    • 軽く触ってみた感触だとオブジェクトとオブジェクトの間にいい感じで曲線をひくのがむずそう (本当はもっと楽な方法がありそうではある)
  • Github Copilot
    • プログラミングの支援サービスのように書いてあるが, 論文執筆にも有用そうなことが書いてある記事を見かけたので自分も使ってみようかなと.
    • どれくらい有用なのかを見極めたい.
    • VS Codeの拡張機能で導入できる.
  • ChatGPT

Håstadのスイッチング補題

回路計算量の理論における重要な結果の一つである Håstadのスイッチング補題 を紹介します. 簡潔にいうとこの補題は, 99%の変数をランダムに固定することによってDNFの決定木が小さくなることを主張する結果です. 応用としてparity関数に対する$\mathrm{AC}^0...